feature/csv-correccion-clientes
This commit is contained in:
@@ -845,13 +845,21 @@ export const api = {
|
||||
|
||||
// CSV import for Clientes y Proveedores (flujo propio en clients_and_providers/imports)
|
||||
clientProviderImports: {
|
||||
upload: (file: File, companyId: number, uploadOptions?: CsvFormDataUploadOptions) => {
|
||||
upload: (
|
||||
file: File,
|
||||
companyId: number,
|
||||
options?: { actualizar?: boolean; onUploadProgress?: CsvFormDataUploadOptions['onUploadProgress'] }
|
||||
) => {
|
||||
const formData = new FormData();
|
||||
formData.append('file', file);
|
||||
const params = new URLSearchParams({ company_id: String(companyId) });
|
||||
if (options?.actualizar !== undefined) params.set('actualizar', String(options.actualizar));
|
||||
const uploadOpts =
|
||||
options?.onUploadProgress != null ? { onUploadProgress: options.onUploadProgress } : undefined;
|
||||
return fetchApiFormDataPost(
|
||||
`/v1/a76/clients-providers/imports/upload?company_id=${companyId}`,
|
||||
`/v1/a76/clients-providers/imports/upload?${params.toString()}`,
|
||||
formData,
|
||||
uploadOptions
|
||||
uploadOpts
|
||||
);
|
||||
},
|
||||
status: (jobId: string) => api.get(`/v1/a76/clients-providers/imports/${jobId}/status`),
|
||||
|
||||
@@ -67,7 +67,19 @@ export interface CreateClientProviderData extends Omit<ClientProvider, 'id' | 'a
|
||||
export interface UpdateClientProviderData extends Partial<CreateClientProviderData> {}
|
||||
|
||||
export const clientsProvidersApi = {
|
||||
list: (companyId: number, page = 1, pageSize = 50, filters?: Record<string, any>) => {
|
||||
list: (
|
||||
companyId: number,
|
||||
page = 1,
|
||||
pageSize = 50,
|
||||
filters?: Partial<{
|
||||
name: string;
|
||||
rfc: string;
|
||||
/** Clave corta; el backend filtra por coincidencia exacta sin distinguir mayúsculas/minúsculas */
|
||||
short_name: string;
|
||||
type: string;
|
||||
active: string | boolean;
|
||||
}>
|
||||
) => {
|
||||
const params = new URLSearchParams({
|
||||
company_id: companyId.toString(),
|
||||
page: page.toString(),
|
||||
|
||||
@@ -649,7 +649,10 @@
|
||||
|
||||
if (useClientProviderImport) {
|
||||
try {
|
||||
const catalogosSettings = allSettings['catalogos'] || {};
|
||||
const actualizar = catalogosSettings['mode'] === 'update';
|
||||
const res = await api.clientProviderImports.upload(file, companyId, {
|
||||
actualizar,
|
||||
onUploadProgress: onCsvFileUploadProgress
|
||||
});
|
||||
if (res.data?.job_id) {
|
||||
|
||||
Reference in New Issue
Block a user