refactor: restructure item interfaces and update related components

- Renamed LineItem interface to Item and adjusted properties accordingly.
- Updated CreateItemData and UpdateItemData interfaces to reflect new structure.
- Modified components to use the new Item interface, removing nested lines.
- Adjusted data binding in item configuration, main data, and other related components.
- Simplified item creation and editing logic by removing unnecessary nesting.
- Ensured all references to line items are updated to reflect the new structure.
This commit is contained in:
2026-02-18 09:56:50 -06:00
parent fe90702563
commit b94d0ac7fb
40 changed files with 1112 additions and 1352 deletions

View File

@@ -122,9 +122,9 @@ export interface FaLineItem {
updated_at?: string;
}
export interface LineItem {
id?: number;
item_id?: number;
export interface Item {
id?: number;
invoice_id: number;
line_number: number;
// Identification
@@ -162,20 +162,7 @@ export interface LineItem {
class_description?: string;
// Computed field from unit_of_measure_info relation
unit_of_measure_code?: string;
// Nested relations (Singular names to match backend Pydantic models)
customs?: LineCustoms;
financial?: LineFinancials;
quantity?: LineQuantities;
description?: LineDescriptions;
reference?: LineReferences;
fa_data?: FaLineItem; // Fixed Asset specific data
}
export interface Item {
id?: number;
invoice_id: number;
unit_of_measure_code?: string;
reference_number?: string;
order?: string;
guide_number?: string;
@@ -185,8 +172,14 @@ export interface Item {
location?: string;
created_at?: string;
updated_at?: string;
lines?: LineItem[];
// Nested relations (Singular names to match backend Pydantic models)
customs?: LineCustoms;
financial?: LineFinancials;
quantity?: LineQuantities;
description?: LineDescriptions;
reference?: LineReferences;
fa_data?: FaLineItem; // Fixed Asset specific data
}
export interface ItemListResponse {
@@ -196,28 +189,11 @@ export interface ItemListResponse {
limit: number;
}
export interface CreateItemData {
export interface CreateItemData extends Omit<Item, 'id' | 'created_at' | 'updated_at'> {
invoice_id: number;
reference_number?: string;
order?: string;
guide_number?: string;
depreciation_date?: number;
rectification?: number;
warehouse?: string;
location?: string;
lines?: LineItem[];
}
export interface UpdateItemData {
reference_number?: string;
order?: string;
guide_number?: string;
depreciation_date?: number;
rectification?: boolean;
warehouse?: string;
location?: string;
lines?: LineItem[];
}
export interface UpdateItemData extends Partial<Omit<Item, 'id' | 'invoice_id' | 'created_at' | 'updated_at'>> {}
/**
* API para Items