Merge branch 'development' into current branch and resolve modify/delete conflict in items-tab-form.svelte
This commit is contained in:
@@ -59,6 +59,8 @@ export interface A76ClassListParams {
|
||||
class_code?: string;
|
||||
description?: string;
|
||||
q?: string; // Agregado por si usas búsqueda general
|
||||
sort_by?: string;
|
||||
sort_order?: 'asc' | 'desc';
|
||||
}
|
||||
|
||||
// --- API OBJECT ---
|
||||
@@ -112,12 +114,17 @@ export const classesApi = {
|
||||
company_id: number;
|
||||
page?: number;
|
||||
page_size?: number;
|
||||
sort_by?: string;
|
||||
sort_order?: 'asc' | 'desc';
|
||||
}): Promise<ApiResponse<A76Class[]>> => {
|
||||
const query = new URLSearchParams({
|
||||
company_id: params.company_id.toString(),
|
||||
page: (params.page || 1).toString(),
|
||||
page_size: (params.page_size || 1000).toString()
|
||||
});
|
||||
|
||||
if (params.sort_by) query.append('sort_by', params.sort_by);
|
||||
if (params.sort_order) query.append('sort_order', params.sort_order);
|
||||
return api.get(`/v1/a76/classes/with-fa-data?${query.toString()}`);
|
||||
}
|
||||
};
|
||||
@@ -154,7 +154,9 @@ export const partsApi = {
|
||||
company_id: number;
|
||||
page?: number;
|
||||
page_size?: number;
|
||||
q?: string
|
||||
q?: string;
|
||||
sort_by?: string;
|
||||
sort_order?: 'asc' | 'desc';
|
||||
}) => {
|
||||
const { company_id, page = 1, page_size = 50, q = '' } = params;
|
||||
|
||||
@@ -168,6 +170,9 @@ export const partsApi = {
|
||||
queryParams.description = q;
|
||||
}
|
||||
|
||||
if (params.sort_by) queryParams.sort_by = params.sort_by;
|
||||
if (params.sort_order) queryParams.sort_order = params.sort_order;
|
||||
|
||||
const query = new URLSearchParams(queryParams);
|
||||
|
||||
return api.get<PartListResponse>(`/v1/a76/parts/?${query.toString()}`);
|
||||
|
||||
@@ -274,6 +274,8 @@ export interface PedimentoFilters {
|
||||
status?: string;
|
||||
client_id?: number;
|
||||
year?: string;
|
||||
sort_by?: string;
|
||||
sort_order?: 'asc' | 'desc' | string;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -288,19 +290,21 @@ export const pedimentosApi = {
|
||||
* @param companyId - ID de la compañía (por defecto 1)
|
||||
*/
|
||||
list: (page = 1, pageSize = 50, filters?: PedimentoFilters, companyId?: number) => {
|
||||
let url = `/v1/a76/pedimentos/?company_id=${companyId}&page=${page}&page_size=${pageSize}`;
|
||||
const params = new URLSearchParams({
|
||||
company_id: companyId?.toString() || '',
|
||||
page: page.toString(),
|
||||
page_size: pageSize.toString()
|
||||
});
|
||||
|
||||
if (filters?.status) {
|
||||
url += `&status=${encodeURIComponent(filters.status)}`;
|
||||
}
|
||||
if (filters?.client_id) {
|
||||
url += `&client_id=${filters.client_id}`;
|
||||
}
|
||||
if (filters?.year) {
|
||||
url += `&year=${encodeURIComponent(filters.year)}`;
|
||||
if (filters) {
|
||||
Object.entries(filters).forEach(([key, value]) => {
|
||||
if (value !== undefined && value !== null && value !== '') {
|
||||
params.append(key, value.toString());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return api.get<PedimentoListResponse>(url);
|
||||
return api.get<PedimentoListResponse>(`/v1/a76/pedimentos/?${params.toString()}`);
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user