Merge branch 'development' of https://git.aduanasoft.com/ADUANASOFT/anexo76 into development

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
This commit is contained in:
2026-02-11 17:38:10 -06:00
20 changed files with 1424 additions and 456 deletions

View File

@@ -11,7 +11,7 @@ export interface A76Class {
description_es: string | null;
description_en: string | null;
material_key: string | null;
unit_of_measure: string;
unit_of_measure: string;
fraction: string;
us_fraction: string;
sub_key: string;
@@ -39,15 +39,15 @@ export interface A76ClassCreate {
}
// DTO para actualizar (Partial del create)
export interface A76ClassUpdate extends Partial<A76ClassCreate> {}
export interface A76ClassUpdate extends Partial<A76ClassCreate> { }
export interface A76ClassListResponse {
items: A76Class[];
classes?: A76Class[];
items: A76Class[];
classes?: A76Class[];
total: number;
page: number;
page_size: number;
size?: number;
size?: number;
}
export interface A76ClassListParams {
@@ -79,27 +79,27 @@ export const classesApi = {
},
update: (id: number, data: A76ClassUpdate, company_id: number): Promise<ApiResponse<A76Class>> => {
return api.put(`/v1/a76/classes/${id}?company_id=${company_id}`, data);
return api.put(`/v1/a76/classes/${id}/?company_id=${company_id}`, data);
},
/**
* Eliminar un class
*/
delete: (id: number, company_id: number): Promise<ApiResponse<void>> => {
return api.delete(`/v1/a76/classes/${id}?company_id=${company_id}`);
},
/**
* Eliminar un class
*/
delete: (id: number, company_id: number): Promise<ApiResponse<void>> => {
return api.delete(`/v1/a76/classes/${id}?company_id=${company_id}`);
},
/**
* Inicializar datos semilla de clases de activo fijo
*/
seed: (company_id: number): Promise<ApiResponse<{ message: string; count: number }>> => {
return api.post(`/v1/a76/classes/seed?company_id=${company_id}`, {});
},
/**
* Inicializar datos semilla de clases de activo fijo
*/
seed: (company_id: number): Promise<ApiResponse<{ message: string; count: number }>> => {
return api.post(`/v1/a76/classes/seed?company_id=${company_id}`, {});
},
/**
* Crear una clase de activo fijo (crea tanto A76Class como FAClass en una transacción)
*/
createFA: (data: any, company_id: number): Promise<ApiResponse<any>> => {
return api.post(`/v1/a76/classes/fa?company_id=${company_id}`, data);
}
/**
* Crear una clase de activo fijo (crea tanto A76Class como FAClass en una transacción)
*/
createFA: (data: any, company_id: number): Promise<ApiResponse<any>> => {
return api.post(`/v1/a76/classes/fa?company_id=${company_id}`, data);
}
};

View File

@@ -20,7 +20,7 @@ export interface DodaContainer {
container_line: number;
container_value?: string;
seals?: string;
seals_detail?: DodaContainerSeal[];
seals_detail?: DodaContainerSeal[];
}
export interface DodaContainerCreate {
@@ -79,13 +79,13 @@ export interface Doda {
dispatch_customs?: string;
customs_sections?: string;
patent?: string;
pedimentos?: string;
pedimentos?: string;
caat?: string;
transport_identification?: string;
fast_id?: string;
operation_type?: string;
status?: string;
// Relaciones
containers?: DodaContainer[];
american_pedimentos?: DodaAmericanPedimento[];
@@ -95,7 +95,7 @@ export interface Doda {
tenant_id?: string;
created_at?: string;
updated_at?: string;
// Campos extra del formulario que vimos en el frontend
selected?: boolean;
user_selected?: string;
@@ -152,7 +152,7 @@ export interface DodaCreate {
unique_badge_number?: string;
}
export interface DodaUpdate extends Partial<DodaCreate> {}
export interface DodaUpdate extends Partial<DodaCreate> { }
export interface DodaListResponse {
items: Doda[];
@@ -187,7 +187,7 @@ export async function getDoda(id: number, companyId?: number): Promise<Doda> {
if (companyId) {
params.append('company_id', companyId.toString());
}
const response = await api.get(`/v1/a76/doda/${id}/?${params.toString()}`);
const response = await api.get(`/v1/a76/doda/${id}/detail?${params.toString()}`);
return response.data;
}
@@ -202,5 +202,5 @@ export async function updateDoda(id: number, data: DodaUpdate, companyId: number
}
export async function deleteDoda(id: number, companyId: number): Promise<void> {
await api.delete(`/v1/a76/doda/${id}/?company_id=${companyId}`);
await api.delete(`/v1/a76/doda/${id}?company_id=${companyId}`);
}

View File

@@ -145,6 +145,6 @@ export const partsApi = {
delete: (id: number, company_id: number) => {
return api.delete<void>(`/v1/a76/parts/${id}/?company_id=${company_id}`);
return api.delete<void>(`/v1/a76/parts/${id}?company_id=${company_id}`);
}
};