forked from verdnatura/salix-front
remove(claimRma): refs #6349 remove all references
This commit is contained in:
parent
af4927167f
commit
546df84db1
|
@ -1036,7 +1036,6 @@ en:
|
||||||
claimStateFk: Claim State
|
claimStateFk: Claim State
|
||||||
workerFk: Worker
|
workerFk: Worker
|
||||||
clientFk: Customer
|
clientFk: Customer
|
||||||
rma: RMA
|
|
||||||
responsibility: Responsibility
|
responsibility: Responsibility
|
||||||
packages: Packages
|
packages: Packages
|
||||||
es:
|
es:
|
||||||
|
@ -1076,7 +1075,6 @@ es:
|
||||||
claimStateFk: Estado de la reclamación
|
claimStateFk: Estado de la reclamación
|
||||||
workerFk: Trabajador
|
workerFk: Trabajador
|
||||||
clientFk: Cliente
|
clientFk: Cliente
|
||||||
rma: RMA
|
|
||||||
responsibility: Responsabilidad
|
responsibility: Responsabilidad
|
||||||
packages: Bultos
|
packages: Bultos
|
||||||
</i18n>
|
</i18n>
|
||||||
|
|
|
@ -483,11 +483,9 @@ export default {
|
||||||
claims: 'Claims',
|
claims: 'Claims',
|
||||||
list: 'List',
|
list: 'List',
|
||||||
createClaim: 'Create claim',
|
createClaim: 'Create claim',
|
||||||
rmaList: 'RMA',
|
|
||||||
summary: 'Summary',
|
summary: 'Summary',
|
||||||
basicData: 'Basic Data',
|
basicData: 'Basic Data',
|
||||||
lines: 'Lines',
|
lines: 'Lines',
|
||||||
rma: 'RMA',
|
|
||||||
photos: 'Photos',
|
photos: 'Photos',
|
||||||
development: 'Development',
|
development: 'Development',
|
||||||
log: 'Audit logs',
|
log: 'Audit logs',
|
||||||
|
@ -504,10 +502,6 @@ export default {
|
||||||
code: 'Code',
|
code: 'Code',
|
||||||
records: 'records',
|
records: 'records',
|
||||||
},
|
},
|
||||||
rma: {
|
|
||||||
user: 'User',
|
|
||||||
created: 'Created',
|
|
||||||
},
|
|
||||||
card: {
|
card: {
|
||||||
claimId: 'Claim ID',
|
claimId: 'Claim ID',
|
||||||
assignedTo: 'Assigned',
|
assignedTo: 'Assigned',
|
||||||
|
@ -547,7 +541,6 @@ export default {
|
||||||
responsible: 'Responsible',
|
responsible: 'Responsible',
|
||||||
worker: 'Worker',
|
worker: 'Worker',
|
||||||
redelivery: 'Redelivery',
|
redelivery: 'Redelivery',
|
||||||
returnOfMaterial: 'RMA',
|
|
||||||
},
|
},
|
||||||
basicData: {
|
basicData: {
|
||||||
customer: 'Customer',
|
customer: 'Customer',
|
||||||
|
@ -555,7 +548,6 @@ export default {
|
||||||
created: 'Created',
|
created: 'Created',
|
||||||
state: 'State',
|
state: 'State',
|
||||||
picked: 'Picked',
|
picked: 'Picked',
|
||||||
returnOfMaterial: 'Return of material authorization (RMA)',
|
|
||||||
},
|
},
|
||||||
photo: {
|
photo: {
|
||||||
fileDescription: 'Claim id {claimId} from client {clientName} id {clientId}',
|
fileDescription: 'Claim id {claimId} from client {clientName} id {clientId}',
|
||||||
|
|
|
@ -482,11 +482,9 @@ export default {
|
||||||
claims: 'Reclamaciones',
|
claims: 'Reclamaciones',
|
||||||
list: 'Listado',
|
list: 'Listado',
|
||||||
createClaim: 'Crear reclamación',
|
createClaim: 'Crear reclamación',
|
||||||
rmaList: 'RMA',
|
|
||||||
summary: 'Resumen',
|
summary: 'Resumen',
|
||||||
basicData: 'Datos básicos',
|
basicData: 'Datos básicos',
|
||||||
lines: 'Líneas',
|
lines: 'Líneas',
|
||||||
rma: 'RMA',
|
|
||||||
development: 'Trazabilidad',
|
development: 'Trazabilidad',
|
||||||
photos: 'Fotos',
|
photos: 'Fotos',
|
||||||
log: 'Registros de auditoría',
|
log: 'Registros de auditoría',
|
||||||
|
@ -503,10 +501,6 @@ export default {
|
||||||
code: 'Código',
|
code: 'Código',
|
||||||
records: 'registros',
|
records: 'registros',
|
||||||
},
|
},
|
||||||
rma: {
|
|
||||||
user: 'Usuario',
|
|
||||||
created: 'Creado',
|
|
||||||
},
|
|
||||||
card: {
|
card: {
|
||||||
claimId: 'ID reclamación',
|
claimId: 'ID reclamación',
|
||||||
assignedTo: 'Asignada a',
|
assignedTo: 'Asignada a',
|
||||||
|
@ -546,7 +540,6 @@ export default {
|
||||||
responsible: 'Responsable',
|
responsible: 'Responsable',
|
||||||
worker: 'Trabajador',
|
worker: 'Trabajador',
|
||||||
redelivery: 'Devolución',
|
redelivery: 'Devolución',
|
||||||
returnOfMaterial: 'RMA',
|
|
||||||
},
|
},
|
||||||
basicData: {
|
basicData: {
|
||||||
customer: 'Cliente',
|
customer: 'Cliente',
|
||||||
|
@ -554,7 +547,6 @@ export default {
|
||||||
created: 'Creada',
|
created: 'Creada',
|
||||||
state: 'Estado',
|
state: 'Estado',
|
||||||
picked: 'Recogida',
|
picked: 'Recogida',
|
||||||
returnOfMaterial: 'Autorización de retorno de materiales (RMA)',
|
|
||||||
},
|
},
|
||||||
photo: {
|
photo: {
|
||||||
fileDescription:
|
fileDescription:
|
||||||
|
|
|
@ -24,7 +24,6 @@ const claimFilter = {
|
||||||
'workerFk',
|
'workerFk',
|
||||||
'claimStateFk',
|
'claimStateFk',
|
||||||
'packages',
|
'packages',
|
||||||
'rma',
|
|
||||||
'hasToPickUp',
|
'hasToPickUp',
|
||||||
],
|
],
|
||||||
include: [
|
include: [
|
||||||
|
@ -169,13 +168,6 @@ const statesFilter = {
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
|
||||||
v-model="data.rma"
|
|
||||||
:label="t('claim.basicData.returnOfMaterial')"
|
|
||||||
:rules="validate('claim.rma')"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
|
|
|
@ -1,145 +0,0 @@
|
||||||
<script setup>
|
|
||||||
import axios from 'axios';
|
|
||||||
import { watch, ref, computed, onUnmounted, onMounted } from 'vue';
|
|
||||||
import { useI18n } from 'vue-i18n';
|
|
||||||
import { useQuasar } from 'quasar';
|
|
||||||
import CrudModel from 'components/CrudModel.vue';
|
|
||||||
import { useState } from 'src/composables/useState';
|
|
||||||
|
|
||||||
import { toDate } from 'src/filters';
|
|
||||||
|
|
||||||
const quasar = useQuasar();
|
|
||||||
const state = useState();
|
|
||||||
const { t } = useI18n();
|
|
||||||
const selected = ref([]);
|
|
||||||
const claimRmaRef = ref();
|
|
||||||
const claim = computed(() => state.get('ClaimDescriptor'));
|
|
||||||
|
|
||||||
const claimRmaFilter = {
|
|
||||||
include: {
|
|
||||||
relation: 'worker',
|
|
||||||
scope: {
|
|
||||||
include: {
|
|
||||||
relation: 'user',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
order: 'created DESC',
|
|
||||||
where: {
|
|
||||||
code: claim.value?.rma,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
async function addRow() {
|
|
||||||
if (!claim.value.rma) {
|
|
||||||
return quasar.notify({
|
|
||||||
message: `This claim is not associated to any RMA`,
|
|
||||||
type: 'negative',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
const formData = {
|
|
||||||
code: claim.value.rma,
|
|
||||||
};
|
|
||||||
|
|
||||||
await axios.post(`ClaimRmas`, formData);
|
|
||||||
await claimRmaRef.value.reload();
|
|
||||||
|
|
||||||
quasar.notify({
|
|
||||||
type: 'positive',
|
|
||||||
message: t('globals.rowAdded'),
|
|
||||||
icon: 'check',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
onMounted(() => {
|
|
||||||
if (claim.value) claimRmaRef.value.reload();
|
|
||||||
});
|
|
||||||
watch(
|
|
||||||
claim,
|
|
||||||
() => {
|
|
||||||
claimRmaRef.value.reload();
|
|
||||||
},
|
|
||||||
{ deep: true }
|
|
||||||
);
|
|
||||||
</script>
|
|
||||||
<template>
|
|
||||||
<div class="column items-center">
|
|
||||||
<div class="list">
|
|
||||||
<CrudModel
|
|
||||||
data-key="ClaimRma"
|
|
||||||
url="ClaimRmas"
|
|
||||||
model="ClaimRma"
|
|
||||||
:filter="claimRmaFilter"
|
|
||||||
v-model:selected="selected"
|
|
||||||
ref="claimRmaRef"
|
|
||||||
:default-save="false"
|
|
||||||
:default-reset="false"
|
|
||||||
:default-remove="false"
|
|
||||||
>
|
|
||||||
<template #body="{ rows }">
|
|
||||||
<QCard>
|
|
||||||
<template v-for="(row, index) of rows" :key="row.id">
|
|
||||||
<QItem class="q-pa-none items-start">
|
|
||||||
<QItemSection class="q-pa-md">
|
|
||||||
<QList>
|
|
||||||
<QItem class="q-pa-none">
|
|
||||||
<QItemSection>
|
|
||||||
<QItemLabel caption>
|
|
||||||
{{ t('claim.rma.user') }}
|
|
||||||
</QItemLabel>
|
|
||||||
<QItemLabel>
|
|
||||||
{{ row?.worker?.user?.name }}
|
|
||||||
</QItemLabel>
|
|
||||||
</QItemSection>
|
|
||||||
</QItem>
|
|
||||||
<QItem class="q-pa-none">
|
|
||||||
<QItemSection>
|
|
||||||
<QItemLabel caption>
|
|
||||||
{{ t('claim.rma.created') }}
|
|
||||||
</QItemLabel>
|
|
||||||
<QItemLabel>
|
|
||||||
{{
|
|
||||||
toDate(row.created, {
|
|
||||||
timeStyle: 'medium',
|
|
||||||
})
|
|
||||||
}}
|
|
||||||
</QItemLabel>
|
|
||||||
</QItemSection>
|
|
||||||
</QItem>
|
|
||||||
</QList>
|
|
||||||
</QItemSection>
|
|
||||||
<QCardActions vertical class="justify-between">
|
|
||||||
<QBtn
|
|
||||||
flat
|
|
||||||
round
|
|
||||||
color="orange"
|
|
||||||
icon="vn:bin"
|
|
||||||
@click="claimRmaRef.remove([row])"
|
|
||||||
>
|
|
||||||
<QTooltip>{{ t('globals.remove') }}</QTooltip>
|
|
||||||
</QBtn>
|
|
||||||
</QCardActions>
|
|
||||||
</QItem>
|
|
||||||
<QSeparator v-if="index !== rows.length - 1" />
|
|
||||||
</template>
|
|
||||||
</QCard>
|
|
||||||
</template>
|
|
||||||
</CrudModel>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<QPageSticky position="bottom-right" :offset="[25, 25]">
|
|
||||||
<QBtn fab color="primary" icon="add" @click="addRow()" />
|
|
||||||
</QPageSticky>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.list {
|
|
||||||
width: 100%;
|
|
||||||
max-width: 60em;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<i18n>
|
|
||||||
es:
|
|
||||||
This claim is not associated to any RMA: Esta reclamación no está asociada a ninguna ARM
|
|
||||||
</i18n>
|
|
|
@ -211,7 +211,6 @@ function openDialog(dmsId) {
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</VnLv>
|
</VnLv>
|
||||||
<VnLv :label="t('claim.summary.returnOfMaterial')" :value="claim.rma" />
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:align-items="right"
|
:align-items="right"
|
||||||
:label="t('claim.basicData.picked')"
|
:label="t('claim.basicData.picked')"
|
||||||
|
|
|
@ -1,171 +0,0 @@
|
||||||
<script setup>
|
|
||||||
import { ref } from 'vue';
|
|
||||||
import { useI18n } from 'vue-i18n';
|
|
||||||
import { useQuasar } from 'quasar';
|
|
||||||
|
|
||||||
import VnPaginate from 'src/components/ui/VnPaginate.vue';
|
|
||||||
import VnConfirm from 'src/components/ui/VnConfirm.vue';
|
|
||||||
import VnInput from 'src/components/common/VnInput.vue';
|
|
||||||
|
|
||||||
import { useArrayData } from 'src/composables/useArrayData';
|
|
||||||
import axios from 'axios';
|
|
||||||
|
|
||||||
const quasar = useQuasar();
|
|
||||||
const { t } = useI18n();
|
|
||||||
|
|
||||||
const arrayData = useArrayData('ClaimRmaList');
|
|
||||||
const isLoading = ref(false);
|
|
||||||
const input = ref();
|
|
||||||
|
|
||||||
const newRma = ref({
|
|
||||||
code: '',
|
|
||||||
crated: Date.vnNew(),
|
|
||||||
});
|
|
||||||
|
|
||||||
function onInputUpdate(value) {
|
|
||||||
newRma.value.code = value.toUpperCase();
|
|
||||||
}
|
|
||||||
|
|
||||||
async function submit() {
|
|
||||||
const formData = newRma.value;
|
|
||||||
if (formData.code === '') return;
|
|
||||||
|
|
||||||
isLoading.value = true;
|
|
||||||
await axios.post('ClaimRmas', formData);
|
|
||||||
await arrayData.refresh();
|
|
||||||
isLoading.value = false;
|
|
||||||
input.value.$el.focus();
|
|
||||||
|
|
||||||
newRma.value = {
|
|
||||||
code: '',
|
|
||||||
created: Date.vnNew(),
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
function confirm(id) {
|
|
||||||
quasar
|
|
||||||
.dialog({
|
|
||||||
component: VnConfirm,
|
|
||||||
componentProps: {
|
|
||||||
data: { id },
|
|
||||||
promise: remove,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
.onOk(async () => await arrayData.refresh());
|
|
||||||
}
|
|
||||||
|
|
||||||
async function remove({ id }) {
|
|
||||||
await axios.delete(`ClaimRmas/${id}`);
|
|
||||||
quasar.notify({
|
|
||||||
type: 'positive',
|
|
||||||
message: t('globals.rowRemoved'),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<QPage class="column items-center q-pa-md sticky">
|
|
||||||
<QPageSticky expand position="top" :offset="[16, 16]">
|
|
||||||
<QCard class="card q-pa-md">
|
|
||||||
<QForm @submit="submit">
|
|
||||||
<VnInput
|
|
||||||
ref="input"
|
|
||||||
v-model="newRma.code"
|
|
||||||
:label="t('claim.rmaList.code')"
|
|
||||||
@update:model-value="onInputUpdate"
|
|
||||||
class="q-mb-md"
|
|
||||||
:readonly="isLoading"
|
|
||||||
:loading="isLoading"
|
|
||||||
autofocus
|
|
||||||
/>
|
|
||||||
<div class="text-caption">
|
|
||||||
{{ arrayData.totalRows }} {{ t('claim.rmaList.records') }}
|
|
||||||
</div>
|
|
||||||
</QForm>
|
|
||||||
</QCard>
|
|
||||||
</QPageSticky>
|
|
||||||
<div class="vn-card-list">
|
|
||||||
<VnPaginate
|
|
||||||
data-key="ClaimRmaList"
|
|
||||||
url="ClaimRmas"
|
|
||||||
order="id DESC"
|
|
||||||
:offset="50"
|
|
||||||
auto-load
|
|
||||||
>
|
|
||||||
<template #body="{ rows }">
|
|
||||||
<QCard class="card">
|
|
||||||
<template v-if="isLoading">
|
|
||||||
<QItem class="q-pa-none items-start">
|
|
||||||
<QItemSection class="q-pa-md">
|
|
||||||
<QList>
|
|
||||||
<QItem class="q-pa-none">
|
|
||||||
<QItemSection>
|
|
||||||
<QItemLabel caption>
|
|
||||||
<QSkeleton />
|
|
||||||
</QItemLabel>
|
|
||||||
<QItemLabel>
|
|
||||||
<QSkeleton type="text" />
|
|
||||||
</QItemLabel>
|
|
||||||
</QItemSection>
|
|
||||||
</QItem>
|
|
||||||
</QList>
|
|
||||||
</QItemSection>
|
|
||||||
<QCardActions vertical class="justify-between">
|
|
||||||
<QSkeleton
|
|
||||||
type="circle"
|
|
||||||
class="q-mb-md"
|
|
||||||
size="40px"
|
|
||||||
/>
|
|
||||||
</QCardActions>
|
|
||||||
</QItem>
|
|
||||||
<QSeparator />
|
|
||||||
</template>
|
|
||||||
<template v-for="row of rows" :key="row.id">
|
|
||||||
<QItem class="q-pa-none items-start">
|
|
||||||
<QItemSection class="q-pa-md">
|
|
||||||
<QList>
|
|
||||||
<QItem class="q-pa-none">
|
|
||||||
<QItemSection>
|
|
||||||
<QItemLabel caption>{{
|
|
||||||
t('claim.rmaList.code')
|
|
||||||
}}</QItemLabel>
|
|
||||||
<QItemLabel>{{ row.code }}</QItemLabel>
|
|
||||||
</QItemSection>
|
|
||||||
</QItem>
|
|
||||||
</QList>
|
|
||||||
</QItemSection>
|
|
||||||
<QCardActions vertical class="justify-between">
|
|
||||||
<QBtn
|
|
||||||
flat
|
|
||||||
round
|
|
||||||
color="primary"
|
|
||||||
icon="vn:bin"
|
|
||||||
@click="confirm(row.id)"
|
|
||||||
>
|
|
||||||
<QTooltip>{{ t('globals.remove') }}</QTooltip>
|
|
||||||
</QBtn>
|
|
||||||
</QCardActions>
|
|
||||||
</QItem>
|
|
||||||
<QSeparator />
|
|
||||||
</template>
|
|
||||||
</QCard>
|
|
||||||
</template>
|
|
||||||
</VnPaginate>
|
|
||||||
</div>
|
|
||||||
</QPage>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.sticky {
|
|
||||||
padding-top: 156px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card {
|
|
||||||
width: 100%;
|
|
||||||
max-width: 60em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.q-page-sticky {
|
|
||||||
z-index: 2998;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -10,11 +10,10 @@ export default {
|
||||||
component: RouterView,
|
component: RouterView,
|
||||||
redirect: { name: 'ClaimMain' },
|
redirect: { name: 'ClaimMain' },
|
||||||
menus: {
|
menus: {
|
||||||
main: ['ClaimList', 'ClaimRmaList'],
|
main: ['ClaimList'],
|
||||||
card: [
|
card: [
|
||||||
'ClaimBasicData',
|
'ClaimBasicData',
|
||||||
'ClaimLines',
|
'ClaimLines',
|
||||||
'ClaimRma',
|
|
||||||
'ClaimPhotos',
|
'ClaimPhotos',
|
||||||
'ClaimLog',
|
'ClaimLog',
|
||||||
'ClaimNotes',
|
'ClaimNotes',
|
||||||
|
@ -38,16 +37,6 @@ export default {
|
||||||
},
|
},
|
||||||
component: () => import('src/pages/Claim/ClaimList.vue'),
|
component: () => import('src/pages/Claim/ClaimList.vue'),
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: 'ClaimRmaList',
|
|
||||||
path: 'rma',
|
|
||||||
meta: {
|
|
||||||
title: 'rmaList',
|
|
||||||
icon: 'vn:barcode',
|
|
||||||
roles: ['claimManager'],
|
|
||||||
},
|
|
||||||
component: () => import('src/pages/Claim/ClaimRmaList.vue'),
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -84,16 +73,6 @@ export default {
|
||||||
},
|
},
|
||||||
component: () => import('src/pages/Claim/Card/ClaimLines.vue'),
|
component: () => import('src/pages/Claim/Card/ClaimLines.vue'),
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: 'ClaimRma',
|
|
||||||
path: 'rma',
|
|
||||||
meta: {
|
|
||||||
title: 'rma',
|
|
||||||
icon: 'vn:barcode',
|
|
||||||
roles: ['claimManager'],
|
|
||||||
},
|
|
||||||
component: () => import('src/pages/Claim/Card/ClaimRma.vue'),
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'ClaimPhotos',
|
name: 'ClaimPhotos',
|
||||||
path: 'photos',
|
path: 'photos',
|
||||||
|
|
Loading…
Reference in New Issue