feat: refs #8277 add isBooked parameter to EntryControl for enhanced filtering
gitea/salix-front/pipeline/pr-dev This commit looks good
Details
gitea/salix-front/pipeline/pr-dev This commit looks good
Details
This commit is contained in:
parent
d69211acaa
commit
ec328935c0
|
@ -27,6 +27,7 @@ const dataKey = 'entryControl';
|
|||
const url = 'Entries/control';
|
||||
const arrayData = useArrayData(dataKey);
|
||||
const daysAgo = ref();
|
||||
const isBooked = ref();
|
||||
const dmsData = ref();
|
||||
const table = useTemplateRef('table');
|
||||
const companies = ref([]);
|
||||
|
@ -203,7 +204,10 @@ const columns = computed(() => [
|
|||
// },
|
||||
]);
|
||||
|
||||
onBeforeMount(() => (daysAgo.value = arrayData.store.userParams.daysAgo || DEFAULTDAYS));
|
||||
onBeforeMount(() => {
|
||||
daysAgo.value = arrayData.store.userParams.daysAgo || DEFAULTDAYS;
|
||||
isBooked.value = arrayData.store.userParams.isBooked || false;
|
||||
});
|
||||
|
||||
function filterByDaysAgo(val) {
|
||||
if (!val) val = DEFAULTDAYS;
|
||||
|
@ -214,15 +218,11 @@ function filterByDaysAgo(val) {
|
|||
}
|
||||
|
||||
async function preAccount() {
|
||||
let selectedAgri;
|
||||
const entries = selectedRows.value;
|
||||
|
||||
for (const i in entries) {
|
||||
const { supplierFk, companyFk, isAgricultural } = entries[i];
|
||||
const { supplierFk, companyFk } = entries[i];
|
||||
const nextEntry = entries[+i + 1];
|
||||
|
||||
// Is It agricultural?
|
||||
if (!selectedAgri && isAgricultural) selectedAgri = entries[i];
|
||||
// Has It gestDoc?
|
||||
if (!selectedGestDoc && entries[i].gestDocFk) selectedGestDoc = entries[i];
|
||||
// Is It same supplier and company?
|
||||
|
@ -230,9 +230,10 @@ async function preAccount() {
|
|||
else if (nextEntry.supplierFk !== supplierFk || nextEntry.companyFk !== companyFk)
|
||||
return notify('Entries must have the same supplier and company', 'negative');
|
||||
}
|
||||
|
||||
// Is It agricultural?
|
||||
const selectedAgri = entries.at(0);
|
||||
// If It's agricultural, get the supplierRef
|
||||
if (selectedAgri) {
|
||||
if (selectedAgri.isAgricultural) {
|
||||
const year = new Date(selectedAgri.landed).getFullYear();
|
||||
supplierRef = (
|
||||
await axios.get('InvoiceIns/getMaxRef', {
|
||||
|
@ -266,38 +267,18 @@ async function uploadFile() {
|
|||
reference: invoiceNumber,
|
||||
};
|
||||
dmsDialog.value.show();
|
||||
|
||||
// Actualizo el gestDocFk de la entrada?
|
||||
}
|
||||
|
||||
async function createInvoice(isAgricultural) {
|
||||
const {
|
||||
supplierFk,
|
||||
landed,
|
||||
shipped,
|
||||
companyFk,
|
||||
currencyFk,
|
||||
gestDocFk: docFk,
|
||||
} = selectedRows.value.at(0);
|
||||
const dateLanded = new Date(landed);
|
||||
const lastDay = new Date(dateLanded.getFullYear(), dateLanded.getMonth() + 1, 0);
|
||||
const issued = isAgricultural ? lastDay : shipped;
|
||||
const siiTrascendencyInvoiceInFk = isAgricultural ? 2 : 1;
|
||||
let err;
|
||||
|
||||
try {
|
||||
// Create invoice
|
||||
await axios.post('InvoiceIns', {
|
||||
supplierFk,
|
||||
await axios.post(`Entries/preAccount`, {
|
||||
ids: selectedRows.value.map((entry) => entry.id),
|
||||
supplierRef,
|
||||
issued,
|
||||
companyFk,
|
||||
docFk,
|
||||
currencyFk,
|
||||
siiTrascendencyInvoiceInFk,
|
||||
isAgricultural,
|
||||
});
|
||||
|
||||
// create tax, due-day and intrastat
|
||||
|
||||
// update entries
|
||||
} catch (e) {
|
||||
throw e;
|
||||
} finally {
|
||||
|
@ -354,7 +335,7 @@ async function createInvoice(isAgricultural) {
|
|||
redirect="Entry"
|
||||
:order="['landed DESC']"
|
||||
:right-search="false"
|
||||
:user-params="{ daysAgo }"
|
||||
:user-params="{ daysAgo, isBooked }"
|
||||
:row-click="false"
|
||||
:table="{ selection: 'multiple' }"
|
||||
>
|
||||
|
|
Loading…
Reference in New Issue