{{ t(`params.${tag.label}`) }}:
diff --git a/src/pages/Customer/CustomerList.vue b/src/pages/Customer/CustomerList.vue
index 815ec57faf..c91fe136ff 100644
--- a/src/pages/Customer/CustomerList.vue
+++ b/src/pages/Customer/CustomerList.vue
@@ -394,16 +394,16 @@ function handleLocation(data, location) {
-
+
diff --git a/src/pages/InvoiceOut/InvoiceOutList.vue b/src/pages/InvoiceOut/InvoiceOutList.vue
index 91477e1a43..f1b4902f28 100644
--- a/src/pages/InvoiceOut/InvoiceOutList.vue
+++ b/src/pages/InvoiceOut/InvoiceOutList.vue
@@ -182,11 +182,11 @@ watchEffect(selectedRows);
-
+
@@ -203,7 +203,7 @@ watchEffect(selectedRows);
[
{
- label: t('salesOrdersTable.dateSend'),
+ label: t('globals.landed'),
name: 'dateSend',
field: 'dateSend',
align: 'left',
diff --git a/src/pages/Monitor/locale/en.yml b/src/pages/Monitor/locale/en.yml
index b8082f02af..e905d2521b 100644
--- a/src/pages/Monitor/locale/en.yml
+++ b/src/pages/Monitor/locale/en.yml
@@ -11,7 +11,6 @@ salesClientsTable:
client: Client
salesOrdersTable:
delete: Delete
- dateSend: Send date
dateMake: Make date
client: Client
salesPerson: Salesperson
diff --git a/src/pages/Monitor/locale/es.yml b/src/pages/Monitor/locale/es.yml
index 4ee5b90a9b..a191453009 100644
--- a/src/pages/Monitor/locale/es.yml
+++ b/src/pages/Monitor/locale/es.yml
@@ -11,7 +11,6 @@ salesClientsTable:
client: Cliente
salesOrdersTable:
delete: Eliminar
- dateSend: Fecha de envío
dateMake: Fecha de realización
client: Cliente
salesPerson: Comercial
diff --git a/src/pages/Order/Card/OrderCatalogFilter.vue b/src/pages/Order/Card/OrderCatalogFilter.vue
index 6de43e86ae..4c018bbb14 100644
--- a/src/pages/Order/Card/OrderCatalogFilter.vue
+++ b/src/pages/Order/Card/OrderCatalogFilter.vue
@@ -184,6 +184,7 @@ function addOrder(value, field, params) {
:custom-tags="['tagGroups']"
@remove="clearFilter"
:redirect="false"
+ search-url="params"
>
diff --git a/src/pages/Order/Card/OrderLines.vue b/src/pages/Order/Card/OrderLines.vue
index 5aec976fa9..c852ab6a11 100644
--- a/src/pages/Order/Card/OrderLines.vue
+++ b/src/pages/Order/Card/OrderLines.vue
@@ -111,6 +111,7 @@ const columns = computed(() => [
component: 'select',
attrs: {
url: 'Items',
+ sortBy: 'name ASC ',
fields: ['id', 'name', 'subName'],
},
columnField: {
diff --git a/src/pages/Supplier/Card/SupplierBasicData.vue b/src/pages/Supplier/Card/SupplierBasicData.vue
index 52964557db..c1a107d3a4 100644
--- a/src/pages/Supplier/Card/SupplierBasicData.vue
+++ b/src/pages/Supplier/Card/SupplierBasicData.vue
@@ -61,8 +61,8 @@ const workersOptions = ref([]);
{
{{ t('Inactive supplier') }}
`#/supplier/${entityId.value}/${section}`;
({}),
- },
+const formData = defineModel({
+ type: Object,
+ required: true,
});
const emit = defineEmits(['updateForm']);
@@ -40,7 +37,6 @@ const agenciesOptions = ref([]);
const zonesOptions = ref([]);
const addresses = ref([]);
const zoneSelectRef = ref();
-const formData = ref($props.formData);
watch(
() => formData.value,
@@ -69,75 +65,44 @@ const zoneWhere = computed(() => {
: {};
});
-const getLanded = async (params) => {
- try {
- const validParams =
- shipped.value && addressId.value && agencyModeId.value && warehouseId.value;
- if (!validParams) return;
+async function getLanded(params) {
+ getDate(`Agencies/getLanded`, params);
+}
- formData.value.zoneFk = null;
- zonesOptions.value = [];
- const { data } = await axios.get(`Agencies/getLanded`, { params });
- if (data) {
- formData.value.zoneFk = data.zoneFk;
- formData.value.landed = data.landed;
- formData.value.shipped = params.shipped;
- }
- } catch (error) {
- console.error(error);
- notify(t('basicData.noDeliveryZoneAvailable'), 'negative');
+async function getShipped(params) {
+ getDate(`Agencies/getShipped`, params);
+}
+
+async function getDate(query, params) {
+ for (const param in params) {
+ if (!params[param]) return;
}
-};
-const getShipped = async (params) => {
- try {
- const validParams =
- landed.value && addressId.value && agencyModeId.value && warehouseId.value;
- if (!validParams) return;
+ formData.value.zoneFk = null;
+ zonesOptions.value = [];
+ const { data } = await axios.get(query, { params });
+ if (!data) return notify(t('basicData.noDeliveryZoneAvailable'), 'negative');
- formData.value.zoneFk = null;
- zonesOptions.value = [];
- const { data } = await axios.get(`Agencies/getShipped`, { params });
- if (data) {
- formData.value.zoneFk = data.zoneFk;
- formData.value.landed = params.landed;
- formData.value.shipped = data.shipped;
- } else {
- notify(t('basicData.noDeliveryZoneAvailable'), 'negative');
- }
- } catch (error) {
- console.error(error);
- notify(t('basicData.noDeliveryZoneAvailable'), 'negative');
- }
-};
+ formData.value.zoneFk = data.zoneFk;
+ if (data.landed) formData.value.landed = data.landed;
+ if (data.shipped) formData.value.shipped = data.shipped;
+}
const onChangeZone = async (zoneId) => {
- try {
- formData.value.agencyModeFk = null;
- const { data } = await axios.get(`Zones/${zoneId}`);
- formData.value.agencyModeFk = data.agencyModeFk;
- } catch (error) {
- console.error(error);
- }
+ formData.value.agencyModeFk = null;
+ const { data } = await axios.get(`Zones/${zoneId}`);
+ formData.value.agencyModeFk = data.agencyModeFk;
};
const onChangeAddress = async (addressId) => {
- try {
- formData.value.nickname = null;
- const { data } = await axios.get(`Addresses/${addressId}`);
- formData.value.nickname = data.nickname;
- } catch (error) {
- console.error(error);
- }
+ formData.value.nickname = null;
+ const { data } = await axios.get(`Addresses/${addressId}`);
+ formData.value.nickname = data.nickname;
};
const getClientDefaultAddress = async (clientId) => {
- try {
- const { data } = await axios.get(`Clients/${clientId}`);
- if (data) addressId.value = data.defaultAddressFk;
- } catch (error) {
- console.error(error);
- }
+ const { data } = await axios.get(`Clients/${clientId}`);
+ if (data) addressId.value = data.defaultAddressFk;
};
const clientAddressesList = async (value) => {
@@ -189,18 +154,26 @@ const clientId = computed({
},
});
-const landed = computed({
- get: () => formData.value?.landed,
- set: (val) => {
- formData.value.landed = val;
- getShipped({
- landed: val,
+function addDateParams(obj) {
+ return {
+ ...obj,
+ ...{
addressFk: formData.value?.addressFk,
agencyModeFk: formData.value?.agencyModeFk,
warehouseFk: formData.value?.warehouseFk,
- });
- },
-});
+ },
+ };
+}
+
+async function setLanded(landed) {
+ if (!landed) return;
+ getShipped(addDateParams({ landed }));
+}
+
+async function setShipped(shipped) {
+ if (!shipped) return;
+ getLanded(addDateParams({ shipped }));
+}
const agencyModeId = computed({
get: () => formData.value.agencyModeFk,
@@ -248,21 +221,6 @@ const warehouseId = computed({
},
});
-const shipped = computed({
- get: () => formData.value?.shipped,
- set: (val) => {
- if (new Date(formData.value?.shipped).toDateString() != val.toDateString())
- val.setHours(0, 0, 0, 0);
- formData.value.shipped = val;
- getLanded({
- shipped: val,
- addressFk: formData.value?.addressFk,
- agencyModeFk: formData.value?.agencyModeFk,
- warehouseFk: formData.value?.warehouseFk,
- });
- },
-});
-
const onFormModelInit = () => {
if (formData.value?.clientFk) clientAddressesList(formData.value?.clientFk);
};
@@ -463,18 +421,21 @@ async function getZone(options) {
v-model="formData.shipped"
:required="true"
:rules="validate('basicData.shipped')"
+ @update:model-value="setShipped"
/>
diff --git a/src/pages/Ticket/Card/BasicData/TicketBasicDataView.vue b/src/pages/Ticket/Card/BasicData/TicketBasicDataView.vue
index 92640f8989..851593bff2 100644
--- a/src/pages/Ticket/Card/BasicData/TicketBasicDataView.vue
+++ b/src/pages/Ticket/Card/BasicData/TicketBasicDataView.vue
@@ -70,60 +70,51 @@ const isFormInvalid = () => {
};
const getPriceDifference = async () => {
- try {
- const params = {
- landed: formData.value.landed,
- addressId: formData.value.addressFk,
- agencyModeId: formData.value.agencyModeFk,
- zoneId: formData.value.zoneFk,
- warehouseId: formData.value.warehouseFk,
- shipped: formData.value.shipped,
- };
- const { data } = await axios.post(
- `tickets/${formData.value.id}/priceDifference`,
- params
- );
- formData.value.sale = data;
- } catch (error) {
- console.error(error);
- }
+ const params = {
+ landed: formData.value.landed,
+ addressId: formData.value.addressFk,
+ agencyModeId: formData.value.agencyModeFk,
+ zoneId: formData.value.zoneFk,
+ warehouseId: formData.value.warehouseFk,
+ shipped: formData.value.shipped,
+ };
+ const { data } = await axios.post(
+ `tickets/${formData.value.id}/priceDifference`,
+ params
+ );
+ formData.value.sale = data;
};
const submit = async () => {
- try {
- if (!formData.value.option)
- return notify(t('basicData.chooseAnOption'), 'negative');
+ if (!formData.value.option) return notify(t('basicData.chooseAnOption'), 'negative');
- const params = {
- clientFk: formData.value.clientFk,
- nickname: formData.value.nickname,
- agencyModeFk: formData.value.agencyModeFk,
- addressFk: formData.value.addressFk,
- zoneFk: formData.value.zoneFk,
- warehouseFk: formData.value.warehouseFk,
- companyFk: formData.value.companyFk,
- shipped: formData.value.shipped,
- landed: formData.value.landed,
- isDeleted: formData.value.isDeleted,
- option: formData.value.option,
- isWithoutNegatives: formData.value.withoutNegatives,
- withWarningAccept: formData.value.withWarningAccept,
- keepPrice: false,
- };
+ const params = {
+ clientFk: formData.value.clientFk,
+ nickname: formData.value.nickname,
+ agencyModeFk: formData.value.agencyModeFk,
+ addressFk: formData.value.addressFk,
+ zoneFk: formData.value.zoneFk,
+ warehouseFk: formData.value.warehouseFk,
+ companyFk: formData.value.companyFk,
+ shipped: formData.value.shipped,
+ landed: formData.value.landed,
+ isDeleted: formData.value.isDeleted,
+ option: formData.value.option,
+ isWithoutNegatives: formData.value.withoutNegatives,
+ withWarningAccept: formData.value.withWarningAccept,
+ keepPrice: false,
+ };
- const { data } = await axios.post(
- `tickets/${formData.value.id}/componentUpdate`,
- params
- );
+ const { data } = await axios.post(
+ `tickets/${formData.value.id}/componentUpdate`,
+ params
+ );
- if (!data) return;
+ if (!data) return;
- const ticketToMove = data.id;
- notify(t('basicData.unroutedTicket'), 'positive');
- router.push({ name: 'TicketSummary', params: { id: ticketToMove } });
- } catch (error) {
- console.error(error);
- }
+ const ticketToMove = data.id;
+ notify(t('basicData.unroutedTicket'), 'positive');
+ router.push({ name: 'TicketSummary', params: { id: ticketToMove } });
};
const submitWithNegatives = async () => {
@@ -167,7 +158,7 @@ onBeforeMount(async () => await getTicketData());
(formData = $event)"
- :form-data="formData"
+ v-model="formData"
/>
diff --git a/src/pages/Ticket/Card/TicketDescriptorMenu.vue b/src/pages/Ticket/Card/TicketDescriptorMenu.vue
index 834fced878..f1d30b1bdf 100644
--- a/src/pages/Ticket/Card/TicketDescriptorMenu.vue
+++ b/src/pages/Ticket/Card/TicketDescriptorMenu.vue
@@ -1,9 +1,9 @@
@@ -397,8 +397,6 @@ async function uploadDocuware(force) {
[
format: (row) => row?.item?.name,
columnClass: 'expand',
},
+ {
+ align: 'left',
+ label: t('ticketSale.size'),
+ name: 'size',
+ format: (row) => row?.item?.size,
+ columnClass: 'expand',
+ },
{
align: 'left',
label: t('ticketSale.price'),
@@ -614,7 +621,7 @@ watch(
}"
:create-as-dialog="false"
:crud-model="{
- paginate: false,
+ disableInfiniteScroll: true,
}"
:default-remove="false"
:default-reset="false"
diff --git a/src/pages/Ticket/Card/TicketSummary.vue b/src/pages/Ticket/Card/TicketSummary.vue
index 61751357c2..d20fd9c5fd 100644
--- a/src/pages/Ticket/Card/TicketSummary.vue
+++ b/src/pages/Ticket/Card/TicketSummary.vue
@@ -20,6 +20,7 @@ import ItemDescriptorProxy from 'src/pages/Item/Card/ItemDescriptorProxy.vue';
import ZoneDescriptorProxy from 'src/pages/Zone/Card/ZoneDescriptorProxy.vue';
import VnSelect from 'src/components/common/VnSelect.vue';
import VnToSummary from 'src/components/ui/VnToSummary.vue';
+import TicketDescriptorMenu from './TicketDescriptorMenu.vue';
const route = useRoute();
const { notify } = useNotify();
@@ -116,24 +117,36 @@ function toTicketUrl(section) {
{{ entity.nickname }}
-