- Added `common.py` to handle shared validation logic for line items, including checks for invoice existence, class validity, and customs data.
- Introduced `create.py` for validating new line items, ensuring required fields are present and calculating costs based on currency type.
- Created `update.py` to manage partial updates of line items, maintaining existing values when new data is not provided.
- Enhanced error handling with specific messages and solutions for various validation failures.
- Moved validation functions for creating and updating line items to dedicated modules.
- Introduced new calculations module for handling financial calculations related to line items.
- Updated import paths for validation functions to reflect new structure.
- 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.
Integración de funcionalidad de Descargo PEPS con reportes de Packing List y Aviso Consolidado:
- Frontend: Agregados imports de dischargeReportsApi y ClipboardList
- Frontend: Agregada función handleDownloadDescargo con cálculo PEPS
- Frontend: Agregado botón condicional de Descargo PEPS (solo exportaciones)
- Frontend: Integradas funciones de Aviso Consolidado y Packing List
- Backend: Agregados routers y tasks de descargo y otros reportes
- Backend: Configurado Celery con todas las tareas de reportes
- Backend: Corregido ForeignKey en line_quantities.package_id
- Resueltos conflictos manteniendo funcionalidades de ambas ramas
- Consolidated item creation and update validation into a common function to reduce code duplication.
- Updated the `validate_create` and `validate_update` functions to utilize the new common validation logic.
- Introduced a new `common_validators.py` file for shared validation functions.
- Added a new `fractions.py` file to handle fraction-related logic and searches.
- Enhanced the `LineCustom` model to use an enumeration for `fraction_type`.
- Improved the `ItemService` class with methods for locking invoices and renumbering line items.
- Updated the `Sector` model to use a boolean type for the `authorized` field.
- Fixed import issues in the router by replacing the old `a24_router` with `sitar_router`.
- Added new schemas for FA line items in the backend, including creation, update, and response DTOs.
- Updated existing line item schemas to include FA data.
- Modified database models to reflect new table names for line quantities and references.
- Enhanced ItemService to handle FA data during item creation and updates.
- Introduced new routes and service layer for FA line items, including CRUD operations.
- Updated frontend components to support FA line item data, including new fields and UI adjustments.
- Implemented data flattening for improved item display in the dashboard.
- Introduced nested interfaces for line items including customs, financials, quantities, descriptions, and references.
- Updated Item interface to include lines as an array of LineItem.
- Modified invoice top fields to handle pedimento ID and auto-assign values from the invoice.
- Enhanced item configuration component to manage line item properties and descriptions.
- Updated main data, packages section, summary section, and other components to bind new line item properties.
- Implemented normalization of numeric values when editing items to ensure consistent data types.
- Adjusted save invoice logic to accommodate new line item structure and compliance data.
- Implemented packages section for item details in `packages-section.svelte`
- Created summary section to display general data and weights in `summary-section.svelte`
- Developed tab continuation for additional item details in `tab-continuation.svelte`
- Added identifiers tab for managing item identifiers in `tab-identifiers.svelte`
- Introduced labeling tab for item labeling information in `tab-labeling.svelte`
- Created serial numbers tab for entering multiple serial numbers in `tab-series.svelte`
- Built item sheet for inventory items in `item-sheet-inv.svelte`
- Developed items tab form for managing invoice items in `items-tab-form.svelte`