29 Commits

Author SHA1 Message Date
28c94159b4 Added unit tests.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2025-12-29 00:39:13 +00:00
d3cbea45c5 Add invoicing fields to shipment schema and update recalculation logic
- Introduced new fields: 'invoicedAmount', 'invoicedAmountWithTax', 'invoicedAmountRemaining', and 'invoicedAmountWithTaxRemaining' to the shipment schema for better tracking of invoicing status.
- Updated the recalculation logic to compute remaining invoiced amounts based on the newly added fields.
2025-12-28 02:11:50 +00:00
dd86075734 Add 'name' field and invoicing details to order item schema
- Introduced a new 'name' field as a required attribute in the order item schema.
- Added invoicing-related fields: 'invoicedAmountWithTax', 'invoicedAmount', 'invoicedQuantity', 'invoicedAmountRemaining', 'invoicedAmountWithTaxRemaining', and 'invoicedQuantityRemaining' to track invoicing status.
- Updated route handlers to accommodate the new 'name' field in order item creation and editing processes.
- Enhanced the recalculation logic to include remaining invoiced amounts and quantities.
2025-12-28 02:11:37 +00:00
0f14f0f52c Add payment management functionality
- Introduced a new payment schema to handle payment records, including fields for amount, vendor, client, invoice, and state.
- Implemented route handlers for CRUD operations on payments, including listing, creating, editing, and deleting payments.
- Updated application routes to include payment routes for better organization and access.
- Added statistics and history retrieval methods for payments to enhance reporting capabilities.
2025-12-28 02:11:16 +00:00
858041b8e9 Refactor invoice schema to improve clarity and add acknowledgment date
- Renamed 'vendor' and 'client' fields to 'from' and 'to' for better semantic understanding.
- Added 'acknowledgedAt' field to track acknowledgment date of invoices.
2025-12-28 02:10:55 +00:00
8126574186 Enhance invoice schema with order items and shipments
- Added new schemas for invoice order items and shipments to support detailed invoice management.
- Updated the main invoice schema to include references to order items and shipments.
- Implemented a recalculation method for invoice totals, including amounts with and without tax.
- Enhanced rollup configurations to provide more detailed statistics on invoice states.
2025-12-28 01:10:52 +00:00
2630976f9e Add client and sales order management functionality
- Introduced new schemas for clients and sales orders.
- Implemented route handlers for CRUD operations on clients and sales orders.
- Updated the main application routes to include client and sales order routes.
- Enhanced the models to support new data structures and relationships.
2025-12-27 20:47:10 +00:00
dea6a90b68 Removed development logging. 2025-12-27 15:19:13 +00:00
ecb888f692 Renamed tax rates. 2025-12-27 14:02:39 +00:00
2ac550b0c4 Refactor purchase order schema to include additional fields for shipping and state management. Implement rollup statistics and history methods for enhanced data aggregation and reporting capabilities. 2025-12-27 13:59:48 +00:00
9c4b73da67 Enhance order item schema with new fields for state management, shipment tracking, and tax calculations. Introduce rollup statistics and history methods for improved data aggregation and reporting. 2025-12-27 13:59:37 +00:00
75e5079479 Update models.js to correct tax rate import and add shipment and invoice models 2025-12-27 13:59:22 +00:00
4421c0b946 Add invoice management functionality with schema, routes, and service handlers 2025-12-27 13:59:08 +00:00
9ab08f39a1 Enhanced database functions with pagination support in listObjects, added checkStates function for state validation, and introduced editObjects function for batch updates. Updated editObject to include recalculate parameter. 2025-12-27 13:57:43 +00:00
c750b1a573 Refactored shipment schema to include new fields and methods for handling order types and tax calculations. 2025-12-27 13:56:05 +00:00
d9247d2504 Refactored config system to have both production and development configs. 2025-12-13 23:01:03 +00:00
8e0c991a58 Removed DB seeding. 2025-12-13 22:34:46 +00:00
6e24f61819 Improved redis to get keys by prefix. 2025-12-13 21:12:07 +00:00
113a16818a Implemented stats 2025-12-13 21:11:43 +00:00
7740e94d32 Remove etcd. 2025-12-13 21:10:42 +00:00
5eb8480d9b Move schema location. 2025-12-13 21:10:19 +00:00
08023e124c Change API for object property listing to work better with the ui. 2025-12-03 00:07:27 +00:00
b44e3a5141 Added loads of features, updated packages and created schema sync. 2025-12-02 18:29:30 +00:00
dca386e6ae Large amount of refactoring. 2025-11-16 17:06:54 +00:00
a768ca04de Add NATS messaging for updates and deletes: Replaced Etcd operations with NATS publish calls in utils.js for distributing updates, new entries, and deletions. Updated logging in etcd.js to use trace level for improved verbosity during connection and operation handling. 2025-09-05 23:25:34 +01:00
5695949bc6 Add NATS integration: Implemented NATS server connection and messaging capabilities. Updated package.json and package-lock.json to include NATS dependencies. Enhanced index.js to connect to NATS and added documentJobs route for job management. 2025-09-05 23:23:50 +01:00
3776b4bea3 Refactor database operations: Enhanced filtering logic to translate keys ending with ._id for Mongoose, added optional distribution for new and delete operations, and implemented a recursive deletion function for child objects. Updated audit logging to handle distributed changes more effectively. 2025-09-05 23:23:26 +01:00
e1b0b707ba Update dependencies, refactor routes, and enhance caching: Upgraded various package versions in package.json and package-lock.json for improved performance and security. Refactored routes to include new document-related endpoints and integrated caching mechanisms for user and token lookups to optimize authentication processes. Updated schemas to support new data structures and relationships, ensuring better data integrity and retrieval. 2025-08-18 00:51:46 +01:00
eb8bc0f4b3 Remove unused files and refactor imports: deleted obsolete files including passport.js, and others, while updating import paths in various services and routes for consistency. Added ESLint and Prettier configurations to enhance code quality. 2025-06-29 21:53:18 +01:00