#8448 - devToTest #1254

Merged
alexm merged 365 commits from 8448-devToTest into test 2025-01-21 10:44:46 +00:00
1 changed files with 18 additions and 14 deletions
Showing only changes of commit 8dc2955109 - Show all commits

View File

@ -7,7 +7,14 @@ import useNotify from 'src/composables/useNotify.js';
import axios from 'axios'; import axios from 'axios';
const { notify } = useNotify(); const { notify } = useNotify();
const initInvoicing = {
invoicing: false,
nRequests: 0,
nPdfs: 0,
totalPdfs: 0,
addressIndex: 0,
errors: [],
};
export const useInvoiceOutGlobalStore = defineStore({ export const useInvoiceOutGlobalStore = defineStore({
id: 'invoiceOutGlobal', id: 'invoiceOutGlobal',
state: () => ({ state: () => ({
@ -23,16 +30,11 @@ export const useInvoiceOutGlobalStore = defineStore({
addresses: [], addresses: [],
minInvoicingDate: null, minInvoicingDate: null,
parallelism: null, parallelism: null,
invoicing: false,
isInvoicing: false,
status: null, status: null,
addressIndex: 0,
errors: [],
printer: null, printer: null,
nRequests: 0,
nPdfs: 0,
totalPdfs: 0,
formData: null, formData: null,
...initInvoicing,
}), }),
actions: { actions: {
async init() { async init() {
@ -117,12 +119,13 @@ export const useInvoiceOutGlobalStore = defineStore({
); );
throw new Error("There aren't addresses to invoice"); throw new Error("There aren't addresses to invoice");
} }
this.invoicing = false;
this.status = 'invoicing';
this.formData = formData; this.formData = formData;
this.addressIndex = 0; this.status = 'invoicing';
this.errors = []; //reset data
await this.invoiceClient(); for (const key in initInvoicing) {
this[key] = initInvoicing[key];
}
this.invoiceClient();
} catch (err) { } catch (err) {
this.handleError(err); this.handleError(err);
} }
@ -184,7 +187,6 @@ export const useInvoiceOutGlobalStore = defineStore({
async invoiceClient() { async invoiceClient() {
if (this.invoicing || this.nRequests >= this.parallelism) return; if (this.invoicing || this.nRequests >= this.parallelism) return;
const address = this.addresses[this.addressIndex]; const address = this.addresses[this.addressIndex];
if (!address || !this.status || this.status == 'stopping') { if (!address || !this.status || this.status == 'stopping') {
this.status = 'stopping'; this.status = 'stopping';
this.invoicing = false; this.invoicing = false;
@ -192,6 +194,7 @@ export const useInvoiceOutGlobalStore = defineStore({
} }
try { try {
this.invoicing = true; this.invoicing = true;
this.nRequests++;
const params = { const params = {
clientId: address.clientId, clientId: address.clientId,
addressId: address.id, addressId: address.id,
@ -215,6 +218,7 @@ export const useInvoiceOutGlobalStore = defineStore({
} }
} finally { } finally {
this.invoicing = false; this.invoicing = false;
this.nRequests--;
this.addressIndex++; this.addressIndex++;
this.invoiceClient(); this.invoiceClient();
} }