fix: update part_number and component_part_number fields in various schemas and components

This commit is contained in:
2026-01-21 16:16:55 -06:00
parent 7658c19661
commit f7ac2d50c3
8 changed files with 203 additions and 182 deletions

View File

@@ -125,8 +125,8 @@ export interface LineItem {
line_number: number;
// Identification
part_number_id?: string;
component_part_number_id?: string;
part_number?: string;
component_part_number?: string;
class_id?: number;
identifier?: string;
@@ -244,7 +244,7 @@ export const itemsApi = {
const params = new URLSearchParams({
company_id: companyId.toString()
});
return api.get<ItemListResponse>(`/v1/a76/items/invoice/${invoiceId}/items/?${params.toString()}`);
return api.get<ItemListResponse>(`/v1/a76/items/invoice/${invoiceId}/items?${params.toString()}`);
},
/**
@@ -264,7 +264,7 @@ export const itemsApi = {
const params = new URLSearchParams({
company_id: companyId.toString()
});
return api.post<Item>(`/v1/a76/items/?${params.toString()}`, data);
return api.post<Item>(`/v1/a76/items?${params.toString()}`, data);
},
/**
@@ -274,7 +274,7 @@ export const itemsApi = {
const params = new URLSearchParams({
company_id: companyId.toString()
});
return api.put<Item>(`/v1/a76/items/${itemId}/?${params.toString()}`, data);
return api.put<Item>(`/v1/a76/items/${itemId}?${params.toString()}`, data);
},
/**
@@ -284,6 +284,6 @@ export const itemsApi = {
const params = new URLSearchParams({
company_id: companyId.toString()
});
return api.delete(`/v1/a76/items/${itemId}/?${params.toString()}`);
return api.delete(`/v1/a76/items/${itemId}?${params.toString()}`);
}
};

View File

@@ -232,7 +232,6 @@
const activeCompanyId = companyStore.activeCompany?.id;
if (!activeCompanyId) { error = 'No hay una compañía activa seleccionada'; return; }
if (!formData.client_id) { error = 'Debe seleccionar un Cliente'; return; }
if (!formData.part_number.trim()) { error = 'Número de Parte requerido'; return; }
loading = true;
try {
@@ -272,7 +271,7 @@
} catch (e: any) {
console.error("Submit Error:", e);
error = e.message || 'Error al guardar';
toast.error(error);
toast.error(error!);
} finally { loading = false; }
}
</script>
@@ -299,7 +298,7 @@
{#if error}
<div class="p-4 rounded-md bg-destructive/10 text-destructive border border-destructive/20 text-sm font-medium animate-in slide-in-from-top-2">
⚠️ {error}
⚠️ {error!}
</div>
{/if}
@@ -540,7 +539,7 @@
<div class="grid grid-cols-1 md:grid-cols-12 gap-6">
<div class="md:col-span-4 space-y-2">
<Label for="part_number" class="text-base font-semibold required">Número de Parte</Label>
<Label for="part_number" class="text-base font-semibold">Número de Parte</Label>
<div class="relative">
<Package class="absolute left-3 top-2.5 h-5 w-5 text-muted-foreground" />
<Input id="part_number" bind:value={formData.part_number} disabled={isEdit} maxlength={50} class="pl-10 text-lg font-mono bg-muted/20" placeholder="Ej: 123-ABC-456"/>

View File

@@ -74,7 +74,7 @@
<div class="space-y-1">
<Label for="num_parte" class="text-xs">Part Number ID: <span class="text-red-500">*</span></Label>
<div class="flex gap-1">
<Input id="num_parte" type="number" bind:value={lineItem.part_number_id} class="h-7 text-xs" placeholder="ID de número de parte" />
<Input id="num_parte" type="number" bind:value={lineItem.part_number} class="h-7 text-xs" placeholder="ID de número de parte" />
</div>
<p class="text-xs text-muted-foreground">ID de número de parte existente en catálogo</p>
</div>

View File

@@ -139,8 +139,8 @@
lines: [{
line_number: 1,
// LineItem fields
part_number_id: undefined,
component_part_number_id: undefined,
part_number: undefined,
component_part_number: undefined,
class_id: undefined,
identifier: undefined,
unit_of_measure: undefined,
@@ -294,8 +294,8 @@
};
// Convert integer fields
cleaned.part_number_id = toNumberOrUndefined(cleaned.part_number_id);
cleaned.component_part_number_id = toNumberOrUndefined(cleaned.component_part_number_id);
cleaned.part_number = toNumberOrUndefined(cleaned.part_number);
cleaned.component_part_number = toNumberOrUndefined(cleaned.component_part_number);
cleaned.class_id = toNumberOrUndefined(cleaned.class_id);
cleaned.unit_of_measure = toNumberOrUndefined(cleaned.unit_of_measure);
cleaned.alternate_unit = toNumberOrUndefined(cleaned.alternate_unit);