62 lines
1.7 KiB
JavaScript
62 lines
1.7 KiB
JavaScript
import axios from 'axios';
|
|
|
|
const request = async (method, url, params = {}) => {
|
|
try {
|
|
let response;
|
|
|
|
if (method === 'GET') {
|
|
response = await axios.get(url, { params });
|
|
} else if (method === 'POST') {
|
|
response = await axios.post(url, params);
|
|
}
|
|
return response.data;
|
|
} catch (err) {
|
|
console.error(`Error with ${method} request to ${url}`, err);
|
|
return err.response;
|
|
}
|
|
};
|
|
|
|
const invoiceOutService = {
|
|
getNegativeBases: async (params) => {
|
|
return await request('GET', 'InvoiceOuts/negativeBases', params);
|
|
},
|
|
|
|
getNegativeBasesCsv: async (params) => {
|
|
return await request('GET', 'InvoiceOuts/negativeBasesCsv', params);
|
|
},
|
|
|
|
getInvoiceDate: async (params) => {
|
|
return await request('GET', 'InvoiceOuts/getInvoiceDate', params);
|
|
},
|
|
|
|
getFindOne: async (params) => {
|
|
return await request('GET', 'InvoiceOutConfigs/findOne', params);
|
|
},
|
|
|
|
getCompanies: async (filter) => {
|
|
return await request('GET', 'Companies', { filter });
|
|
},
|
|
|
|
getPrinters: async (filter) => {
|
|
return await request('GET', 'Printers', { filter });
|
|
},
|
|
|
|
getClients: async (filter) => {
|
|
return await request('GET', 'Clients', { filter });
|
|
},
|
|
|
|
getClientsToInvoice: async (params) => {
|
|
return await request('POST', 'InvoiceOuts/clientsToInvoice', params);
|
|
},
|
|
|
|
invoiceClient: async (params) => {
|
|
return await request('POST', 'InvoiceOuts/invoiceClient', params);
|
|
},
|
|
|
|
makePdfAndNotify: async (invoiceId, params) => {
|
|
return await request('POST', `InvoiceOuts/${invoiceId}/makePdfAndNotify`, params);
|
|
},
|
|
};
|
|
|
|
export default invoiceOutService;
|