- Updated SQLAlchemy imports for better clarity and organization in invoice service.
- Refactored dropdown menu components to improve state management and accessibility.
- Adjusted invoice year filter logic for consistency in dashboard components.
- Improved internationalization handling in invoice titles and headers.
- Updated `InvoiceService` to accurately reflect the number of line items in `party_count` for invoices.
- Modified weight calculations in the create and update validators to ensure consistent handling of weight types, now using lowercase comparison for "KGS".
- Adjusted invoice data structure in the frontend to include `total_items` and refined logistics handling.
- Improved table rendering in the invoice edit component for better sticky header behavior and item visibility.
These changes aim to improve data integrity and user experience in invoice management.
- Renamed instances of 'who_updated' to 'who_processed' in the InvoiceService and related tasks to enhance clarity and consistency in invoice processing.
- Adjusted comments and documentation to reflect the updated terminology across various modules, ensuring alignment with recent changes in invoice status handling.
- Renamed 'is_processed' fields to 'status' in the InvoiceHeader model and updated corresponding attributes in schemas, services, and frontend components for consistency.
- Adjusted query filters and validation logic to reflect the new 'status' terminology.
- Updated comments and documentation to clarify changes in invoice status handling.
- Renamed fields in the `InvoiceHeader` model from `is_updated` to `is_processed` and updated corresponding attributes in schemas, services, and frontend components.
- Adjusted query filters and validation logic to reflect the new processing status.
- Updated comments and documentation to ensure clarity regarding the changes in invoice status handling.
- 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.
- Added new validations for pedimento regimes and compliance checks in common_validators.py.
- Implemented missing date checks for consolidated pedimentos.
- Introduced validation for shipped_by_id and manifest_number in invoice compliance.
- Refactored create_validators.py by removing the file as it was no longer needed.
- Updated update validators for exports and imports to use invoice_data instead of invoice.
- Modified schemas.py to set default values for financial fields to avoid None values.
- Created calculations.py to handle invoice calculations, including total increments and regime changes.
- Improved layout responsiveness in various Svelte components for better user experience.
- Moved common validation functions to a shared module for reusability.
- Updated create and update validators for import invoices to use the new common validation functions.
- Introduced new validators for export invoices, ensuring they adhere to the required fields and validation rules.
- Enhanced the update logic to handle both import and export invoice types appropriately.
- Cleaned up the code for better readability and maintainability.
- Fix bidirectional R1 resolution in all report query builders (Temporary,
Definitive, Repair, Export, ExportRepair): use JOIN on
pedimento_rectification_origin in both directions so the rectified
pedimento number is resolved correctly and not duplicated.
- Restore original CSV export format (ValorComercialMN, ValorMPTemp,
ValorAgre as separate columns); compute them from item_line_financials
SUM instead of invoice-level header totals which were always 0.
- Rename CSV column "PEDIMENTO RECTIFICACION" to "PEDIMENTO R1" in both
backend csv_utils.py and frontend manual download.
- Harden temporary invoice update validator to safely handle null
compliance_mx / logistics objects without crashing.
- Add R1 rectification fields (es_rectificacion, pedimento_original, etc.)
to the pedimento other-data form and initialize their default state.
- Remove default companyId parameter from pedimentosApi methods to avoid
hardcoded company ID 1.
- Minor: whitespace cleanup, error handler adjustments, keyboard manager
fix.
- Updated schemas in `schemas.py` to enhance readability by aligning field definitions and descriptions.
- Consolidated optional fields and improved default values for better data handling.
- Modified the `InvoiceService` class in `services.py` to streamline error handling and data extraction for nested invoice components.
- Ensured that nested data is processed correctly before creating invoice entries, improving overall service reliability.
- Added InvoiceHeader, InvoiceComplianceMx, InvoiceFinancials, InvoiceLogistics, InvoiceSalesDetails, and InvoiceCollections models.
- Created schemas for invoice operations including create, update, and response schemas.
- Developed services for handling business logic related to invoices, including retrieval, creation, updating, and deletion of invoices and their related data.
- Introduced routes for invoice management, enabling CRUD operations through a RESTful API.
- Integrated invoice routes into the main application router.
- Removed unused routers from the core module to streamline the API structure.