85 Commits

Author SHA1 Message Date
e8c9a307ab Enhance route permission checks across management and inventory modules
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This commit updates various route handlers in the management and inventory modules to include permission checks using the `checkPermissions` middleware. The changes ensure that access to properties, values, and search functionalities for different entities (e.g., users, products, tax rates) is properly restricted based on user permissions. This enhancement improves the security and integrity of the application by enforcing role-based access control across multiple routes.
2026-08-20 20:15:07 +01:00
bce5afad7e Implement caching and permission checks for user permissions
This commit introduces a caching mechanism for user permissions using Redis, enhancing performance by reducing database queries. The `permissions.js` file has been updated to include functions for saving and retrieving user permissions from Redis, as well as middleware for checking permissions in various routes. Additionally, tests have been added to ensure the correctness of the permission logic and caching behavior, improving the overall security and efficiency of the application.
2026-08-20 19:35:15 +01:00
1c51766da6 Add user group management functionality and refactor permission settings
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This commit introduces a new feature for managing user groups within the application, including the creation of a `usergroup.schema.js` file for the Mongoose schema and corresponding route handlers for CRUD operations. Additionally, the permission settings functionality has been refactored to use a singular `permissionSetting` model instead of the previous plural form. Tests have been added to ensure the functionality of both user groups and permission settings services, enhancing the application's capability to manage user roles and permissions effectively.
2026-08-20 15:04:52 +01:00
806a32d306 Add permission settings management functionality
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This commit introduces a new feature for managing permission settings within the application. It includes the creation of a new `permissions.js` file for handling permission logic, a corresponding Mongoose schema for permission settings, and route handlers for CRUD operations on permission settings. Additionally, tests have been added to ensure the functionality of the new permission settings service. This enhancement improves the application's capability to manage user permissions effectively.
2026-08-20 12:28:04 +01:00
f467b1be33 Add formatting functionality for document templates
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This update introduces a new route for formatting document templates, utilizing the `formatTemplateContent` function to beautify HTML and JavaScript within templates. The `formatDocumentTemplateRouteHandler` is added to handle formatting requests, and the content is processed to maintain EJS blocks. Additionally, a new `templateformatter.js` file is created, containing the logic for formatting templates, along with corresponding tests to ensure functionality. This enhancement improves the usability and presentation of document templates in the application.
2026-08-19 20:02:39 +01:00
0fe1714e1a Add PDF generation and document template management features
This update introduces a comprehensive PDF generation system using Puppeteer, allowing for the rendering and downloading of document templates in various formats. Key features include the addition of preview and download routes for document templates, integration of EJS for template rendering, and utilities for converting PDFs to images. The new `TemplateManager` class manages template loading and rendering, while the `pdffactory.js` handles PDF generation. Additionally, several assets and styles for document templates have been added to enhance the visual presentation. This enhancement significantly improves the document management capabilities of the application.
2026-08-19 18:18:44 +01:00
5a4770820a Refactor audit logs route and service for improved readability and maintainability
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This update enhances the `auditlogs.js` files by formatting the allowed filters for better clarity and refactoring the `listAuditLogsRouteHandler` function to improve code readability. Unused filter translations for Mongoose have been removed, streamlining the filtering logic. These changes contribute to cleaner code and easier future modifications.
2026-08-19 17:08:13 +01:00
aa4b173a7e Add sorting functionality to various inventory and management routes
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This update introduces a new utility function, `getSort`, to validate and apply sorting based on allowed sorters across multiple routes in the inventory and management modules. The function is integrated into route handlers for invoices, payments, tax records, filament stocks, order items, part stocks, product stocks, purchase orders, shipments, and various management entities. This enhancement improves the flexibility and consistency of sorting operations throughout the application.
2026-08-11 02:12:27 +01:00
4bd29e2010 Enhance utility functions in utils.js for improved reference model handling and filtering logic
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
This update introduces new functions such as `getRefModelEntryFromPrefix`, `stripPrefixFromOperand`, and `getRefModelEntryForToken` to streamline the processing of reference models and tokens. Additionally, the `resolveRefLeaf` and `resolveRefCondition` functions have been refactored to utilize these enhancements, improving the overall efficiency and clarity of the filtering and reference resolution processes. Minor formatting adjustments were also made in orderitems.js for consistency.
2026-08-09 22:52:05 +01:00
2a30b7f3f6 Enhance filtering and parsing logic in utils.js and update route handlers for async support
This update introduces several utility functions in `utils.js` to improve the handling of ObjectId paths, schema types, and filtering logic. Key additions include `isObjectIdPath`, `getBaseProperty`, and `getFilterFieldKind`, which enhance the flexibility of property handling. Additionally, all route handlers in the finance and inventory modules have been refactored to support asynchronous operations, ensuring better performance and responsiveness when processing requests.
2026-08-09 22:27:45 +01:00
f69c88926c Refactor allowedFilters in inventory and management routes to improve consistency and readability. Cleaned up whitespace and ensured all filters are properly formatted for better query handling across purchase orders, shipments, and filament SKUs.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-08-01 18:25:59 +01:00
c043ad7a86 Enhance allowedFilters across multiple routes to include 'createdAt', 'updatedAt', and '_reference' for improved filtering capabilities. This update applies to finance, inventory, management, and sales modules, ensuring consistency and better query handling.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-08-01 14:26:40 +01:00
c233be5d80 Enhance allowedFilters in printers.js and subjobs.js to include 'state' and '_reference' for improved filtering capabilities. Cleaned up whitespace for better code readability.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-08-01 13:31:27 +01:00
664a3a4884 Update allowedFilters in jobs.js to include '_id' and '_reference' for enhanced filtering capabilities in job queries. Cleaned up whitespace for improved code readability. 2026-08-01 13:28:50 +01:00
74c0d8eb52 Refactor propertiesAllowedFilters across various routes to streamline filtering logic. Removed redundant allowedFilters definitions and replaced them with propertiesAllowedFilters for improved query handling in finance, inventory, and management modules.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-08-01 13:22:51 +01:00
1e807beacf Implement neighbors caching and retrieval for various entities in the inventory and finance modules. Introduced new route handlers for fetching neighbors in invoices, payments, tax records, filament stocks, order items, part stocks, product stocks, purchase orders, shipments, stock audits, stock events, stock locations, and stock transfers. Updated allowed filters for improved query capabilities across these routes. Enhanced database.js with caching logic for neighbors, including cache invalidation on object updates.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-08-01 13:20:01 +01:00
7a1b85bb19 Updated allowedFilters in printers.js to include '_id' and '_reference' for enhanced filtering capabilities in printer queries. Cleaned up unnecessary whitespace in the file. 2026-08-01 12:41:29 +01:00
4231d548cc Added sharp and blurhash dependencies, implemented thumbnail generation and retrieval functionality in the file management system. Updated database schema to include thumbnail metadata and enhanced route handlers for thumbnail access.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-07-26 03:07:23 +01:00
287e74b682 Added new route handlers and service functions to retrieve distinct property values for various entities, including invoices, payments, tax records, filament stocks, and more. Updated corresponding routes to support these new functionalities across multiple management and production modules, enhancing data querying capabilities.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-07-24 23:19:48 +01:00
11ff82a9af Enhanced various route handlers and services to support an additional master filter parameter for improved data querying capabilities. Updated related functions across multiple management and production routes, ensuring consistent handling of master filters in property-based queries. 2026-07-24 21:52:54 +01:00
cb16385b33 Added printer and filament profile schemas, routes, and associated logic for managing profiles. Enhanced authentication for slicer uploads and integrated new routes for handling slicer-related operations. Updated database utilities and services to support new features, improving overall functionality and user experience.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-07-20 02:11:44 +01:00
e112ec4386 Implemented job editing functionality by adding an editJobRouteHandler and associated logic to update draft jobs. Enhanced job schema with a recalculate method to manage subjob creation and updates based on job quantity and printer assignments. Updated tests to cover new editing capabilities and ensure proper state checks.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-07-18 15:19:11 +01:00
e192c04000 Enhanced courier service and listing schemas by adding cost-related fields and integrating courier services into listings. Updated route handlers and service logic to accommodate new fields, improving data management and retrieval capabilities.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-07-18 13:36:01 +01:00
561520be9a Added 'operation' to allowed filters in audit log route for enhanced filtering capabilities.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-07-13 23:26:55 +01:00
50eacb3974 Added text indexes to various schemas for improved search capabilities across finance, inventory, and management modules. Updated route handlers to include search functionality for invoices, payments, tax records, and inventory items, enhancing data retrieval efficiency.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-07-04 16:48:50 +01:00
efb3fdbcb9 Refactored filament recalculation logic to utilize filament SKUs instead of order items, improving efficiency. Updated allowed filters in the filament SKUs route to include 'costWithTax' and modified population logic in the service for better data retrieval.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-06-21 23:59:33 +01:00
f74b85bb88 Added authorisation and decline functionality for payments, including new route handlers and schema updates to track authorisation and decline timestamps. Updated payment cancellation logic to reflect changes in payment states.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-06-21 22:32:57 +01:00
2996b1670f Refactored tax record management by moving tax record schema and routes to the finance directory, enhancing organization. Implemented CRUD operations for tax records in the new service and added corresponding tests for route handlers. 2026-06-21 22:23:14 +01:00
645a1b6220 Implemented about page.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-06-21 13:19:15 +01:00
de40e0c3ff Started app update implementation.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-06-21 01:59:07 +01:00
bec68488a7 Implemented RSS support. 2026-06-20 22:06:04 +01:00
ed99638664 Implemented session status.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-06-20 00:33:51 +01:00
af0934b163 Added product category support, including new routes, database schemas, and service updates. Enhanced existing product functionalities to incorporate product categories in filtering and population. 2026-06-14 23:51:51 +01:00
92e07c97d7 Numerious fixes. 2026-05-17 19:11:29 +01:00
57f057e3aa Implemented stock locations.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-05-17 16:55:01 +01:00
d3c662a9ec Added stock location and stock transfer features, including new routes, database schemas, and service updates. Enhanced existing stock-related functionalities to support filtering and population of stock location data. 2026-03-21 23:14:07 +00:00
1b858d8814 Added better listing and listing varient support. 2026-03-21 21:39:10 +00:00
250c404408 Implemented market places.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-13 23:32:30 +00:00
0300e00c8f Enhanced delete functionality for filaments by adding a route handler that checks for dependencies before deletion. Updated the database service to support this check, ensuring objects in use cannot be deleted. Refactored related routes for consistency.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-08 01:53:07 +00:00
4458a1d828 Implemented materials and export improvements.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-08 01:28:21 +00:00
7eb774a297 Added missing SKUs. 2026-03-08 01:07:34 +00:00
73fbb50b34 Implemented Part SKUs. 2026-03-07 23:34:12 +00:00
4ea168f17f Implemented Product SKU.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-03-07 22:42:01 +00:00
866c29f33f Set default state as 'draft' and introduced 'postedAt' field. Implemented postProductStock route handler to transition product stock from draft to posted state, including state validation checks. Updated related service functions for consistency.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-03-07 20:37:41 +00:00
7c44f36590 Implemented product stocks and minor improvements.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-07 13:38:05 +00:00
ee14c420df Added CSV support.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-03-03 01:20:38 +00:00
f852e607f9 Added excel support.
All checks were successful
farmcontrol/farmcontrol-api/pipeline/head This commit looks good
2026-03-03 01:01:52 +00:00
8ad3d3da5c Implemented multiple app passwords.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-02 01:58:24 +00:00
eaa8bf4836 Updated log level to trace in config, added OData routes, implemented HTTP Basic Auth for user authentication, and added functionality to set app password for users. 2026-03-02 00:54:10 +00:00
3e47cb131b Implemented notifications.
Some checks failed
farmcontrol/farmcontrol-api/pipeline/head There was a failure building this commit
2026-03-01 01:42:30 +00:00