From 6a730294b1e51251946c58c2c33dd6b54c4890cb Mon Sep 17 00:00:00 2001 From: Tom Butcher Date: Sun, 30 Aug 2026 12:25:10 +0100 Subject: [PATCH] Refactor filter handling in various routes to include master filter support This commit updates multiple routes across the management and inventory modules to enhance the handling of property value requests. The `/values` endpoints are modified to incorporate a filtering mechanism that allows for both a standard filter and an optional master filter, improving the flexibility and accuracy of data retrieval. Additionally, debug logging statements are added to assist in tracking the filter parameters during requests. This refactor aims to streamline the data fetching process and improve the overall user experience when interacting with the API. --- src/routes/finance/invoices.js | 22 ++- src/routes/finance/paymentpolicies.js | 12 +- src/routes/finance/payments.js | 22 ++- src/routes/finance/taxrecords.js | 22 ++- src/routes/inventory/filamentstocks.js | 22 ++- src/routes/inventory/orderitems.js | 22 ++- src/routes/inventory/partstocks.js | 22 ++- src/routes/inventory/productstocks.js | 22 ++- src/routes/inventory/purchaseorders.js | 22 ++- src/routes/inventory/shipments.js | 22 ++- src/routes/inventory/stockevents.js | 22 ++- src/routes/inventory/stocklocations.js | 22 ++- src/routes/inventory/stocktransfers.js | 22 ++- src/routes/management/apppasswords.js | 22 ++- src/routes/management/courier.js | 22 ++- src/routes/management/courierservice.js | 22 ++- src/routes/management/documentjobs.js | 22 ++- src/routes/management/documentprinters.js | 22 ++- src/routes/management/documentsizes.js | 22 ++- src/routes/management/documenttemplates.js | 22 ++- src/routes/management/filaments.js | 22 ++- src/routes/management/filamentskus.js | 22 ++- src/routes/management/files.js | 22 ++- src/routes/management/hosts.js | 22 ++- src/routes/management/materials.js | 22 ++- src/routes/management/notetypes.js | 22 ++- src/routes/management/parts.js | 22 ++- src/routes/management/partskus.js | 22 ++- src/routes/management/permissionsetting.js | 22 ++- src/routes/management/productcategories.js | 22 ++- src/routes/management/products.js | 22 ++- src/routes/management/productskus.js | 22 ++- src/routes/management/taxrates.js | 22 ++- src/routes/management/usergroups.js | 22 ++- src/routes/management/users.js | 22 ++- src/routes/management/vendors.js | 22 ++- src/routes/production/filamentprofiles.js | 22 ++- src/routes/production/gcodefiles.js | 22 ++- src/routes/production/jobs.js | 30 +++- src/routes/production/printerprofiles.js | 22 ++- src/routes/production/printers.js | 22 ++- src/routes/production/subjobs.js | 22 ++- src/routes/sales/clients.js | 22 ++- src/routes/sales/fulfillmentpolicies.js | 12 +- src/routes/sales/listings.js | 22 ++- src/routes/sales/listingvarients.js | 172 +++++++++++++------ src/routes/sales/marketplaces.js | 11 +- src/routes/sales/returnpolicies.js | 12 +- src/routes/sales/salesorders.js | 22 ++- src/services/finance/invoices.js | 9 +- src/services/finance/paymentpolicies.js | 9 +- src/services/finance/payments.js | 9 +- src/services/finance/taxrecords.js | 9 +- src/services/inventory/filamentstocks.js | 9 +- src/services/inventory/orderitems.js | 9 +- src/services/inventory/partstocks.js | 9 +- src/services/inventory/productstocks.js | 9 +- src/services/inventory/purchaseorders.js | 9 +- src/services/inventory/shipments.js | 9 +- src/services/inventory/stockevents.js | 9 +- src/services/inventory/stocklocations.js | 9 +- src/services/inventory/stocktransfers.js | 9 +- src/services/management/apppasswords.js | 9 +- src/services/management/courier.js | 9 +- src/services/management/courierservice.js | 9 +- src/services/management/documentjobs.js | 9 +- src/services/management/documentprinters.js | 9 +- src/services/management/documentsizes.js | 9 +- src/services/management/documenttemplates.js | 9 +- src/services/management/filaments.js | 9 +- src/services/management/filamentskus.js | 9 +- src/services/management/files.js | 9 +- src/services/management/hosts.js | 9 +- src/services/management/materials.js | 9 +- src/services/management/notetypes.js | 9 +- src/services/management/parts.js | 9 +- src/services/management/partskus.js | 9 +- src/services/management/permissionsetting.js | 9 +- src/services/management/productcategories.js | 9 +- src/services/management/products.js | 9 +- src/services/management/productskus.js | 9 +- src/services/management/taxrates.js | 9 +- src/services/management/usergroups.js | 9 +- src/services/management/users.js | 9 +- src/services/management/vendors.js | 9 +- src/services/production/filamentprofiles.js | 9 +- src/services/production/gcodefiles.js | 9 +- src/services/production/jobs.js | 10 +- src/services/production/printerprofiles.js | 9 +- src/services/production/printers.js | 9 +- src/services/production/subjobs.js | 9 +- src/services/sales/clients.js | 9 +- src/services/sales/fulfillmentpolicies.js | 9 +- src/services/sales/listings.js | 9 +- src/services/sales/listingvarients.js | 17 +- src/services/sales/marketplaces.js | 9 +- src/services/sales/returnpolicies.js | 9 +- src/services/sales/salesorders.js | 9 +- src/utils.js | 9 +- 99 files changed, 1369 insertions(+), 285 deletions(-) diff --git a/src/routes/finance/invoices.js b/src/routes/finance/invoices.js index 5590e61..e366189 100644 --- a/src/routes/finance/invoices.js +++ b/src/routes/finance/invoices.js @@ -84,10 +84,24 @@ router.get('/properties', checkPermissions('invoice', 'list'), isAuthenticated, listInvoicesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('invoice', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getInvoicePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('invoice', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true, invoiceModel); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true, invoiceModel + ); + } + getInvoicePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('invoice', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchInvoicesRouteHandler(req, res, search); diff --git a/src/routes/finance/paymentpolicies.js b/src/routes/finance/paymentpolicies.js index 108ec2d..192288d 100644 --- a/src/routes/finance/paymentpolicies.js +++ b/src/routes/finance/paymentpolicies.js @@ -65,7 +65,17 @@ router.get( checkPermissions('paymentPolicy', 'list'), isAuthenticated, async (req, res) => { - getPaymentPolicyPropertyValuesRouteHandler(req, res, req.query.property); + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPaymentPolicyPropertyValuesRouteHandler(req, res, property, filter, masterFilter); } ); diff --git a/src/routes/finance/payments.js b/src/routes/finance/payments.js index 62109c1..484f8e3 100644 --- a/src/routes/finance/payments.js +++ b/src/routes/finance/payments.js @@ -65,10 +65,24 @@ router.get('/properties', checkPermissions('payment', 'list'), isAuthenticated, listPaymentsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('payment', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPaymentPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('payment', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPaymentPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('payment', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchPaymentsRouteHandler(req, res, search); diff --git a/src/routes/finance/taxrecords.js b/src/routes/finance/taxrecords.js index 9435fca..cef97cb 100644 --- a/src/routes/finance/taxrecords.js +++ b/src/routes/finance/taxrecords.js @@ -50,10 +50,24 @@ router.get('/properties', checkPermissions('taxRecord', 'list'), isAuthenticated listTaxRecordsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('taxRecord', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getTaxRecordPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('taxRecord', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getTaxRecordPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('taxRecord', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchTaxRecordsRouteHandler(req, res, search); diff --git a/src/routes/inventory/filamentstocks.js b/src/routes/inventory/filamentstocks.js index f4c8e4f..f369cc0 100644 --- a/src/routes/inventory/filamentstocks.js +++ b/src/routes/inventory/filamentstocks.js @@ -60,10 +60,24 @@ router.get('/properties', checkPermissions('filamentStock', 'list'), isAuthentic listFilamentStocksByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('filamentStock', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getFilamentStockPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('filamentStock', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFilamentStockPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('filamentStock', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchFilamentStocksRouteHandler(req, res, search); diff --git a/src/routes/inventory/orderitems.js b/src/routes/inventory/orderitems.js index 97ef876..f4685d8 100644 --- a/src/routes/inventory/orderitems.js +++ b/src/routes/inventory/orderitems.js @@ -74,10 +74,24 @@ router.get('/properties', checkPermissions('orderItem', 'list'), isAuthenticated listOrderItemsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('orderItem', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getOrderItemPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('orderItem', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getOrderItemPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('orderItem', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchOrderItemsRouteHandler(req, res, search); diff --git a/src/routes/inventory/partstocks.js b/src/routes/inventory/partstocks.js index 4eedd5b..b8b7aba 100644 --- a/src/routes/inventory/partstocks.js +++ b/src/routes/inventory/partstocks.js @@ -52,10 +52,24 @@ router.get('/properties', checkPermissions('partStock', 'list'), isAuthenticated listPartStocksByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('partStock', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPartStockPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('partStock', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPartStockPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('partStock', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchPartStocksRouteHandler(req, res, search); diff --git a/src/routes/inventory/productstocks.js b/src/routes/inventory/productstocks.js index 4a2045e..8e7b585 100644 --- a/src/routes/inventory/productstocks.js +++ b/src/routes/inventory/productstocks.js @@ -51,10 +51,24 @@ router.get('/properties', checkPermissions('productStock', 'list'), isAuthentica listProductStocksByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('productStock', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getProductStockPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('productStock', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getProductStockPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('productStock', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchProductStocksRouteHandler(req, res, search); diff --git a/src/routes/inventory/purchaseorders.js b/src/routes/inventory/purchaseorders.js index e0a91c0..20a6016 100644 --- a/src/routes/inventory/purchaseorders.js +++ b/src/routes/inventory/purchaseorders.js @@ -78,10 +78,24 @@ router.get('/properties', checkPermissions('purchaseOrder', 'list'), isAuthentic listPurchaseOrdersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('purchaseOrder', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPurchaseOrderPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('purchaseOrder', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPurchaseOrderPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('purchaseOrder', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchPurchaseOrdersRouteHandler(req, res, search); diff --git a/src/routes/inventory/shipments.js b/src/routes/inventory/shipments.js index 25c60d9..820ea45 100644 --- a/src/routes/inventory/shipments.js +++ b/src/routes/inventory/shipments.js @@ -83,10 +83,24 @@ router.get('/properties', checkPermissions('shipment', 'list'), isAuthenticated, listShipmentsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('shipment', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getShipmentPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('shipment', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getShipmentPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('shipment', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchShipmentsRouteHandler(req, res, search); diff --git a/src/routes/inventory/stockevents.js b/src/routes/inventory/stockevents.js index 2c4df13..1865836 100644 --- a/src/routes/inventory/stockevents.js +++ b/src/routes/inventory/stockevents.js @@ -41,10 +41,24 @@ router.get('/properties', checkPermissions('stockEvent', 'list'), isAuthenticate listStockEventsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('stockEvent', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getStockEventPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('stockEvent', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getStockEventPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('stockEvent', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchStockEventsRouteHandler(req, res, search); diff --git a/src/routes/inventory/stocklocations.js b/src/routes/inventory/stocklocations.js index 176040b..b054589 100644 --- a/src/routes/inventory/stocklocations.js +++ b/src/routes/inventory/stocklocations.js @@ -40,10 +40,24 @@ router.get('/properties', checkPermissions('stockLocation', 'list'), isAuthentic listStockLocationsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('stockLocation', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getStockLocationPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('stockLocation', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getStockLocationPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('stockLocation', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchStockLocationsRouteHandler(req, res, search); diff --git a/src/routes/inventory/stocktransfers.js b/src/routes/inventory/stocktransfers.js index 4f27fc1..4da7647 100644 --- a/src/routes/inventory/stocktransfers.js +++ b/src/routes/inventory/stocktransfers.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('stockTransfer', 'list'), isAuthentic listStockTransfersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('stockTransfer', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getStockTransferPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('stockTransfer', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getStockTransferPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('stockTransfer', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchStockTransfersRouteHandler(req, res, search); diff --git a/src/routes/management/apppasswords.js b/src/routes/management/apppasswords.js index 82ed023..015511b 100644 --- a/src/routes/management/apppasswords.js +++ b/src/routes/management/apppasswords.js @@ -46,10 +46,24 @@ router.get('/properties', checkPermissions('appPassword', 'list'), isAuthenticat listAppPasswordsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('appPassword', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getAppPasswordPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('appPassword', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getAppPasswordPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('appPassword', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/courier.js b/src/routes/management/courier.js index 7b974d9..f5252b9 100644 --- a/src/routes/management/courier.js +++ b/src/routes/management/courier.js @@ -50,10 +50,24 @@ router.get('/properties', checkPermissions('courier', 'list'), isAuthenticated, listCouriersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('courier', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getCourierPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('courier', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getCourierPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('courier', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/courierservice.js b/src/routes/management/courierservice.js index f8ec906..975ced9 100644 --- a/src/routes/management/courierservice.js +++ b/src/routes/management/courierservice.js @@ -76,10 +76,24 @@ router.get('/properties', checkPermissions('courierService', 'list'), isAuthenti listCourierServicesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('courierService', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getCourierServicePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('courierService', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getCourierServicePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('courierService', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/documentjobs.js b/src/routes/management/documentjobs.js index 0e7684f..61d2a73 100644 --- a/src/routes/management/documentjobs.js +++ b/src/routes/management/documentjobs.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('documentJob', 'list'), isAuthenticat listDocumentJobsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('documentJob', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getDocumentJobPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('documentJob', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getDocumentJobPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('documentJob', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/documentprinters.js b/src/routes/management/documentprinters.js index 475a83d..54ffaab 100644 --- a/src/routes/management/documentprinters.js +++ b/src/routes/management/documentprinters.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('documentPrinter', 'list'), isAuthent listDocumentPrintersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('documentPrinter', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getDocumentPrinterPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('documentPrinter', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getDocumentPrinterPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('documentPrinter', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/documentsizes.js b/src/routes/management/documentsizes.js index 1a3fc61..41187e8 100644 --- a/src/routes/management/documentsizes.js +++ b/src/routes/management/documentsizes.js @@ -64,10 +64,24 @@ router.get('/properties', checkPermissions('documentSize', 'list'), isAuthentica listDocumentSizesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('documentSize', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getDocumentSizePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('documentSize', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getDocumentSizePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('documentSize', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/documenttemplates.js b/src/routes/management/documenttemplates.js index 3682208..9d72d6a 100644 --- a/src/routes/management/documenttemplates.js +++ b/src/routes/management/documenttemplates.js @@ -66,10 +66,24 @@ router.get('/properties', checkPermissions('documentTemplate', 'list'), isAuthen listDocumentTemplatesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('documentTemplate', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getDocumentTemplatePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('documentTemplate', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getDocumentTemplatePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('documentTemplate', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/filaments.js b/src/routes/management/filaments.js index f4662c1..4a300da 100644 --- a/src/routes/management/filaments.js +++ b/src/routes/management/filaments.js @@ -70,10 +70,24 @@ router.get('/properties', checkPermissions('filament', 'list'), isAuthenticated, listFilamentsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('filament', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getFilamentPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('filament', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFilamentPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('filament', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/filamentskus.js b/src/routes/management/filamentskus.js index 6c09176..2737122 100644 --- a/src/routes/management/filamentskus.js +++ b/src/routes/management/filamentskus.js @@ -59,10 +59,24 @@ router.get('/properties', checkPermissions('filamentSku', 'list'), isAuthenticat listFilamentSkusByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('filamentSku', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getFilamentSkuPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('filamentSku', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFilamentSkuPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('filamentSku', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchFilamentSkusRouteHandler(req, res, search); diff --git a/src/routes/management/files.js b/src/routes/management/files.js index 41ffa23..3abd2e2 100644 --- a/src/routes/management/files.js +++ b/src/routes/management/files.js @@ -52,10 +52,24 @@ router.get('/properties', checkPermissions('file', 'list'), isAuthenticated, asy listFilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('file', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getFilePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('file', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFilePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('file', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/hosts.js b/src/routes/management/hosts.js index 051cb37..21888b0 100644 --- a/src/routes/management/hosts.js +++ b/src/routes/management/hosts.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('host', 'list'), isAuthenticated, asy listHostsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('host', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getHostPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('host', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getHostPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('host', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/materials.js b/src/routes/management/materials.js index 807bd96..43b7a3a 100644 --- a/src/routes/management/materials.js +++ b/src/routes/management/materials.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('material', 'list'), isAuthenticated, listMaterialsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('material', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getMaterialPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('material', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getMaterialPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('material', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/notetypes.js b/src/routes/management/notetypes.js index 8e164cd..96fb09e 100644 --- a/src/routes/management/notetypes.js +++ b/src/routes/management/notetypes.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('noteType', 'list'), isAuthenticated, listNoteTypesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('noteType', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getNoteTypePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('noteType', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getNoteTypePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('noteType', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchNoteTypesRouteHandler(req, res, search); diff --git a/src/routes/management/parts.js b/src/routes/management/parts.js index 48996a8..f23e986 100644 --- a/src/routes/management/parts.js +++ b/src/routes/management/parts.js @@ -59,10 +59,24 @@ router.get('/properties', checkPermissions('part', 'list'), isAuthenticated, asy listPartsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('part', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPartPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('part', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPartPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('part', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/partskus.js b/src/routes/management/partskus.js index 3b14a45..4f28f42 100644 --- a/src/routes/management/partskus.js +++ b/src/routes/management/partskus.js @@ -60,10 +60,24 @@ router.get('/properties', checkPermissions('partSku', 'list'), isAuthenticated, listPartSkusByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('partSku', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPartSkuPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('partSku', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPartSkuPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('partSku', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchPartSkusRouteHandler(req, res, search); diff --git a/src/routes/management/permissionsetting.js b/src/routes/management/permissionsetting.js index af49af4..704ad07 100644 --- a/src/routes/management/permissionsetting.js +++ b/src/routes/management/permissionsetting.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('permissionSetting', 'list'), isAuthe listPermissionSettingsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('permissionSetting', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPermissionSettingsPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('permissionSetting', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPermissionSettingsPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('permissionSetting', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/productcategories.js b/src/routes/management/productcategories.js index 70e5fae..3a08bb6 100644 --- a/src/routes/management/productcategories.js +++ b/src/routes/management/productcategories.js @@ -46,10 +46,24 @@ router.get('/properties', checkPermissions('productCategory', 'list'), isAuthent listProductCategoriesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('productCategory', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getProductCategoryPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('productCategory', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getProductCategoryPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('productCategory', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/products.js b/src/routes/management/products.js index 76e2012..3cbb540 100644 --- a/src/routes/management/products.js +++ b/src/routes/management/products.js @@ -60,10 +60,24 @@ router.get('/properties', checkPermissions('product', 'list'), isAuthenticated, listProductsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('product', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getProductPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('product', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getProductPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('product', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/productskus.js b/src/routes/management/productskus.js index 5898cd7..9d5156f 100644 --- a/src/routes/management/productskus.js +++ b/src/routes/management/productskus.js @@ -60,10 +60,24 @@ router.get('/properties', checkPermissions('productSku', 'list'), isAuthenticate listProductSkusByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('productSku', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getProductSkuPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('productSku', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getProductSkuPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('productSku', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchProductSkusRouteHandler(req, res, search); diff --git a/src/routes/management/taxrates.js b/src/routes/management/taxrates.js index 97a9dee..18707a7 100644 --- a/src/routes/management/taxrates.js +++ b/src/routes/management/taxrates.js @@ -61,10 +61,24 @@ router.get('/properties', checkPermissions('taxRate', 'list'), isAuthenticated, listTaxRatesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('taxRate', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getTaxRatePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('taxRate', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getTaxRatePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('taxRate', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/usergroups.js b/src/routes/management/usergroups.js index a0f8ab6..ddcb7d0 100644 --- a/src/routes/management/usergroups.js +++ b/src/routes/management/usergroups.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('userGroup', 'list'), isAuthenticated listUserGroupsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('userGroup', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getUserGroupPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('userGroup', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getUserGroupPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('userGroup', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/management/users.js b/src/routes/management/users.js index 5fd230e..0d99a76 100644 --- a/src/routes/management/users.js +++ b/src/routes/management/users.js @@ -50,10 +50,24 @@ router.get('/properties', checkPermissions('user', 'list'), isAuthenticated, asy listUsersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('user', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getUserPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('user', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getUserPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('user', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchUsersRouteHandler(req, res, search); diff --git a/src/routes/management/vendors.js b/src/routes/management/vendors.js index 6bea367..9241323 100644 --- a/src/routes/management/vendors.js +++ b/src/routes/management/vendors.js @@ -48,10 +48,24 @@ router.get('/properties', checkPermissions('vendor', 'list'), isAuthenticated, a listVendorsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('vendor', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getVendorPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('vendor', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getVendorPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('vendor', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; diff --git a/src/routes/production/filamentprofiles.js b/src/routes/production/filamentprofiles.js index 57ec28b..4a95342 100644 --- a/src/routes/production/filamentprofiles.js +++ b/src/routes/production/filamentprofiles.js @@ -46,10 +46,24 @@ router.get('/properties', checkPermissions('filamentProfile', 'list'), isAuthent listFilamentProfilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('filamentProfile', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getFilamentProfilePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('filamentProfile', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFilamentProfilePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('filamentProfile', 'list'), isAuthenticated, async (req, res) => { searchFilamentProfilesRouteHandler(req, res, req.query.search); diff --git a/src/routes/production/gcodefiles.js b/src/routes/production/gcodefiles.js index 556a7f0..6385747 100644 --- a/src/routes/production/gcodefiles.js +++ b/src/routes/production/gcodefiles.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('gcodeFile', 'list'), isAuthenticated listGCodeFilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('gcodeFile', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getGCodeFilePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('gcodeFile', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getGCodeFilePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('gcodeFile', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchGCodeFilesRouteHandler(req, res, search); diff --git a/src/routes/production/jobs.js b/src/routes/production/jobs.js index 12fc92c..4b4c5b5 100644 --- a/src/routes/production/jobs.js +++ b/src/routes/production/jobs.js @@ -45,7 +45,17 @@ import { convertPropertiesString, getFilter, getSort } from '../../utils.js'; router.get('/', isAuthenticated, checkPermissions('job', 'list'), async (req, res) => { const { page, limit, property, search, sortProperty, sortOrder } = req.query; const filter = await getFilter(req.query, listAllowedFilters); - listJobsRouteHandler(req, res, page, limit, property, filter, search, getSort(sortProperty, listAllowedSorters), sortOrder); + listJobsRouteHandler( + req, + res, + page, + limit, + property, + filter, + search, + getSort(sortProperty, listAllowedSorters), + sortOrder + ); }); router.get('/properties', checkPermissions('job', 'list'), isAuthenticated, async (req, res) => { @@ -60,7 +70,12 @@ router.get('/properties', checkPermissions('job', 'list'), isAuthenticated, asyn router.get('/values', checkPermissions('job', 'list'), isAuthenticated, async (req, res) => { const { property } = req.query; - getJobPropertyValuesRouteHandler(req, res, property); + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter(JSON.parse(req.query.masterFilter), listAllowedFilters, true); + } + getJobPropertyValuesRouteHandler(req, res, property, filter, masterFilter); }); router.get('/search', checkPermissions('job', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; @@ -84,7 +99,16 @@ router.get('/history', isAuthenticated, async (req, res) => { router.get('/neighbors', isAuthenticated, async (req, res) => { const { property, search, sortProperty, sortOrder, id } = req.query; const filter = await getFilter(req.query, listAllowedFilters); - getJobNeighborsRouteHandler(req, res, property, filter, search, getSort(sortProperty, listAllowedSorters), sortOrder, id); + getJobNeighborsRouteHandler( + req, + res, + property, + filter, + search, + getSort(sortProperty, listAllowedSorters), + sortOrder, + id + ); }); router.get('/:id', isAuthenticated, checkPermissions('job', 'info'), async (req, res) => { diff --git a/src/routes/production/printerprofiles.js b/src/routes/production/printerprofiles.js index 556f7fd..2a40f89 100644 --- a/src/routes/production/printerprofiles.js +++ b/src/routes/production/printerprofiles.js @@ -45,10 +45,24 @@ router.get('/properties', checkPermissions('printerProfile', 'list'), isAuthenti listPrinterProfilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('printerProfile', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPrinterProfilePropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('printerProfile', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPrinterProfilePropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('printerProfile', 'list'), isAuthenticated, async (req, res) => { searchPrinterProfilesRouteHandler(req, res, req.query.search); diff --git a/src/routes/production/printers.js b/src/routes/production/printers.js index aaf4fd6..048c9b3 100644 --- a/src/routes/production/printers.js +++ b/src/routes/production/printers.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('printer', 'list'), isAuthenticated, listPrintersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('printer', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getPrinterPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('printer', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getPrinterPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('printer', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchPrintersRouteHandler(req, res, search); diff --git a/src/routes/production/subjobs.js b/src/routes/production/subjobs.js index 6d04947..fd51dde 100644 --- a/src/routes/production/subjobs.js +++ b/src/routes/production/subjobs.js @@ -56,10 +56,24 @@ router.get('/properties', checkPermissions('subJob', 'list'), isAuthenticated, a listSubJobsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('subJob', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getSubJobPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('subJob', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getSubJobPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('subJob', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchSubJobsRouteHandler(req, res, search); diff --git a/src/routes/sales/clients.js b/src/routes/sales/clients.js index fb3e6d5..8799a3d 100644 --- a/src/routes/sales/clients.js +++ b/src/routes/sales/clients.js @@ -49,10 +49,24 @@ router.get('/properties', checkPermissions('client', 'list'), isAuthenticated, a listClientsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('client', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getClientPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('client', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getClientPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('client', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchClientsRouteHandler(req, res, search); diff --git a/src/routes/sales/fulfillmentpolicies.js b/src/routes/sales/fulfillmentpolicies.js index 558b6d2..6ec381a 100644 --- a/src/routes/sales/fulfillmentpolicies.js +++ b/src/routes/sales/fulfillmentpolicies.js @@ -76,7 +76,17 @@ router.get( checkPermissions('fulfillmentPolicy', 'list'), isAuthenticated, async (req, res) => { - getFulfillmentPolicyPropertyValuesRouteHandler(req, res, req.query.property); + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getFulfillmentPolicyPropertyValuesRouteHandler(req, res, property, filter, masterFilter); } ); diff --git a/src/routes/sales/listings.js b/src/routes/sales/listings.js index 6df8868..14131ad 100644 --- a/src/routes/sales/listings.js +++ b/src/routes/sales/listings.js @@ -84,10 +84,24 @@ router.get('/properties', checkPermissions('listing', 'list'), isAuthenticated, listListingsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('listing', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getListingPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('listing', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getListingPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('listing', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchListingsRouteHandler(req, res, search); diff --git a/src/routes/sales/listingvarients.js b/src/routes/sales/listingvarients.js index e7a1443..1114654 100644 --- a/src/routes/sales/listingvarients.js +++ b/src/routes/sales/listingvarients.js @@ -2,6 +2,7 @@ import express from 'express'; import { isAuthenticated } from '../../keycloak.js'; import { checkPermissions } from '../../database/permissions.js'; import { getFilter, convertPropertiesString, getSort } from '../../utils.js'; +import { listingVarientModel } from '../../database/schemas/sales/listingvarient.schema.js'; const router = express.Router(); @@ -19,18 +20,26 @@ const listAllowedFilters = [ 'updatedAt', '_reference', ]; -const listAllowedSorters = ['state', 'stockQuantity', 'price', 'lastSyncedAt', 'createdAt', 'updatedAt', '_id']; +const listAllowedSorters = [ + 'state', + 'stockQuantity', + 'price', + 'lastSyncedAt', + 'createdAt', + 'updatedAt', + '_id', +]; const propertiesAllowedFilters = [ - 'listing', - 'listing._id', - 'product', - 'productSku', - 'stockQuantity', - 'state', - 'state.type', - 'createdAt', - 'updatedAt', - ]; + 'listing', + 'listing._id', + 'product', + 'productSku', + 'stockQuantity', + 'state', + 'state.type', + 'createdAt', + 'updatedAt', +]; import { listListingVarientsRouteHandler, getListingVarientRouteHandler, @@ -44,39 +53,77 @@ import { unpublishListingVarientRouteHandler, searchListingVarientsRouteHandler, getListingVarientPropertyValuesRouteHandler, - - getListingVarientNeighborsRouteHandler + getListingVarientNeighborsRouteHandler, } from '../../services/sales/listingvarients.js'; router.get('/', isAuthenticated, checkPermissions('listingVarient', 'list'), async (req, res) => { const { page, limit, property, search, sortProperty, sortOrder } = req.query; - const filter = await getFilter(req.query, listAllowedFilters); - listListingVarientsRouteHandler(req, res, page, limit, property, filter, search, getSort(sortProperty, listAllowedSorters), sortOrder); + const filter = await getFilter(req.query, listAllowedFilters); + listListingVarientsRouteHandler( + req, + res, + page, + limit, + property, + filter, + search, + getSort(sortProperty, listAllowedSorters), + sortOrder + ); }); -router.get('/properties', checkPermissions('listingVarient', 'list'), isAuthenticated, async (req, res) => { - let properties = convertPropertiesString(req.query.properties); - const filter = await getFilter(req.query, propertiesAllowedFilters, false); - var masterFilter = {}; - if (req.query.masterFilter) { - masterFilter = JSON.parse(req.query.masterFilter); +router.get( + '/properties', + checkPermissions('listingVarient', 'list'), + isAuthenticated, + async (req, res) => { + let properties = convertPropertiesString(req.query.properties); + const filter = await getFilter(req.query, propertiesAllowedFilters, false); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = JSON.parse(req.query.masterFilter); + } + listListingVarientsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); } - listListingVarientsByPropertiesRouteHandler(req, res, properties, filter, masterFilter); -}); +); -router.get('/values', checkPermissions('listingVarient', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getListingVarientPropertyValuesRouteHandler(req, res, property); -}); -router.get('/search', checkPermissions('listingVarient', 'list'), isAuthenticated, async (req, res) => { - const { search } = req.query; - searchListingVarientsRouteHandler(req, res, search); -}); +router.get( + '/values', + checkPermissions('listingVarient', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true, listingVarientModel); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true, + listingVarientModel + ); + } + getListingVarientPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); +router.get( + '/search', + checkPermissions('listingVarient', 'list'), + isAuthenticated, + async (req, res) => { + const { search } = req.query; + searchListingVarientsRouteHandler(req, res, search); + } +); - -router.post('/', isAuthenticated, checkPermissions('listing', 'newListingVarient'), async (req, res) => { - newListingVarientRouteHandler(req, res); -}); +router.post( + '/', + isAuthenticated, + checkPermissions('listing', 'newListingVarient'), + async (req, res) => { + newListingVarientRouteHandler(req, res); + } +); router.get('/stats', isAuthenticated, async (req, res) => { getListingVarientStatsRouteHandler(req, res); @@ -86,27 +133,56 @@ router.get('/history', isAuthenticated, async (req, res) => { getListingVarientHistoryRouteHandler(req, res); }); -router.post('/:id/publish', isAuthenticated, checkPermissions('listingVarient', 'publish'), async (req, res) => { - publishListingVarientRouteHandler(req, res); -}); +router.post( + '/:id/publish', + isAuthenticated, + checkPermissions('listingVarient', 'publish'), + async (req, res) => { + publishListingVarientRouteHandler(req, res); + } +); -router.post('/:id/unpublish', isAuthenticated, checkPermissions('listingVarient', 'unpublish'), async (req, res) => { - unpublishListingVarientRouteHandler(req, res); -}); +router.post( + '/:id/unpublish', + isAuthenticated, + checkPermissions('listingVarient', 'unpublish'), + async (req, res) => { + unpublishListingVarientRouteHandler(req, res); + } +); router.get('/neighbors', isAuthenticated, async (req, res) => { const { property, search, sortProperty, sortOrder, id } = req.query; const filter = await getFilter(req.query, listAllowedFilters); - getListingVarientNeighborsRouteHandler(req, res, property, filter, search, getSort(sortProperty, listAllowedSorters), sortOrder, id); + getListingVarientNeighborsRouteHandler( + req, + res, + property, + filter, + search, + getSort(sortProperty, listAllowedSorters), + sortOrder, + id + ); }); -router.get('/:id', isAuthenticated, checkPermissions('listingVarient', 'info'), async (req, res) => { - getListingVarientRouteHandler(req, res); -}); +router.get( + '/:id', + isAuthenticated, + checkPermissions('listingVarient', 'info'), + async (req, res) => { + getListingVarientRouteHandler(req, res); + } +); -router.put('/:id', isAuthenticated, checkPermissions('listingVarient', 'edit'), async (req, res) => { - editListingVarientRouteHandler(req, res); -}); +router.put( + '/:id', + isAuthenticated, + checkPermissions('listingVarient', 'edit'), + async (req, res) => { + editListingVarientRouteHandler(req, res); + } +); router.delete('/:id', isAuthenticated, async (req, res) => { deleteListingVarientRouteHandler(req, res); diff --git a/src/routes/sales/marketplaces.js b/src/routes/sales/marketplaces.js index 8e6cdbd..907e63e 100644 --- a/src/routes/sales/marketplaces.js +++ b/src/routes/sales/marketplaces.js @@ -101,7 +101,16 @@ router.get( isAuthenticated, async (req, res) => { const { property } = req.query; - getMarketplacePropertyValuesRouteHandler(req, res, property); + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getMarketplacePropertyValuesRouteHandler(req, res, property, filter, masterFilter); } ); router.get( diff --git a/src/routes/sales/returnpolicies.js b/src/routes/sales/returnpolicies.js index 2256953..5483880 100644 --- a/src/routes/sales/returnpolicies.js +++ b/src/routes/sales/returnpolicies.js @@ -81,7 +81,17 @@ router.get( checkPermissions('returnPolicy', 'list'), isAuthenticated, async (req, res) => { - getReturnPolicyPropertyValuesRouteHandler(req, res, req.query.property); + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getReturnPolicyPropertyValuesRouteHandler(req, res, property, filter, masterFilter); } ); diff --git a/src/routes/sales/salesorders.js b/src/routes/sales/salesorders.js index 4ffdd02..6fdbd2a 100644 --- a/src/routes/sales/salesorders.js +++ b/src/routes/sales/salesorders.js @@ -51,10 +51,24 @@ router.get('/properties', checkPermissions('salesOrder', 'list'), isAuthenticate listSalesOrdersByPropertiesRouteHandler(req, res, properties, filter, masterFilter); }); -router.get('/values', checkPermissions('salesOrder', 'list'), isAuthenticated, async (req, res) => { - const { property } = req.query; - getSalesOrderPropertyValuesRouteHandler(req, res, property); -}); +router.get( + '/values', + checkPermissions('salesOrder', 'list'), + isAuthenticated, + async (req, res) => { + const { property } = req.query; + const filter = await getFilter(req.query, listAllowedFilters, true); + var masterFilter = {}; + if (req.query.masterFilter) { + masterFilter = await getFilter( + JSON.parse(req.query.masterFilter), + listAllowedFilters, + true + ); + } + getSalesOrderPropertyValuesRouteHandler(req, res, property, filter, masterFilter); + } +); router.get('/search', checkPermissions('salesOrder', 'list'), isAuthenticated, async (req, res) => { const { search } = req.query; searchSalesOrdersRouteHandler(req, res, search); diff --git a/src/services/finance/invoices.js b/src/services/finance/invoices.js index 6de7203..2a650f6 100644 --- a/src/services/finance/invoices.js +++ b/src/services/finance/invoices.js @@ -95,10 +95,17 @@ export const listInvoicesByPropertiesRouteHandler = async ( res.send(result); }; -export const getInvoicePropertyValuesRouteHandler = async (req, res, property) => { +export const getInvoicePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: invoiceModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/finance/paymentpolicies.js b/src/services/finance/paymentpolicies.js index 11cc2da..d2d7df7 100644 --- a/src/services/finance/paymentpolicies.js +++ b/src/services/finance/paymentpolicies.js @@ -89,10 +89,17 @@ export const listPaymentPoliciesByPropertiesRouteHandler = async ( res.send(result); }; -export const getPaymentPolicyPropertyValuesRouteHandler = async (req, res, property) => { +export const getPaymentPolicyPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: paymentPolicyModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/finance/payments.js b/src/services/finance/payments.js index 8782c36..1cc78cd 100644 --- a/src/services/finance/payments.js +++ b/src/services/finance/payments.js @@ -84,10 +84,17 @@ export const listPaymentsByPropertiesRouteHandler = async ( res.send(result); }; -export const getPaymentPropertyValuesRouteHandler = async (req, res, property) => { +export const getPaymentPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: paymentModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/finance/taxrecords.js b/src/services/finance/taxrecords.js index 8f06e66..c58b923 100644 --- a/src/services/finance/taxrecords.js +++ b/src/services/finance/taxrecords.js @@ -74,10 +74,17 @@ export const listTaxRecordsByPropertiesRouteHandler = async ( res.send(result); }; -export const getTaxRecordPropertyValuesRouteHandler = async (req, res, property) => { +export const getTaxRecordPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: taxRecordModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/filamentstocks.js b/src/services/inventory/filamentstocks.js index c405472..162eacd 100644 --- a/src/services/inventory/filamentstocks.js +++ b/src/services/inventory/filamentstocks.js @@ -82,10 +82,17 @@ export const listFilamentStocksByPropertiesRouteHandler = async ( res.send(result); }; -export const getFilamentStockPropertyValuesRouteHandler = async (req, res, property) => { +export const getFilamentStockPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: filamentStockModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/orderitems.js b/src/services/inventory/orderitems.js index 5c0e556..39981cb 100644 --- a/src/services/inventory/orderitems.js +++ b/src/services/inventory/orderitems.js @@ -173,10 +173,17 @@ export const listOrderItemsByPropertiesRouteHandler = async ( res.send(result); }; -export const getOrderItemPropertyValuesRouteHandler = async (req, res, property) => { +export const getOrderItemPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: orderItemModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/partstocks.js b/src/services/inventory/partstocks.js index 816c49f..fa0e09f 100644 --- a/src/services/inventory/partstocks.js +++ b/src/services/inventory/partstocks.js @@ -85,10 +85,17 @@ export const listPartStocksByPropertiesRouteHandler = async ( res.send(result); }; -export const getPartStockPropertyValuesRouteHandler = async (req, res, property) => { +export const getPartStockPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: partStockModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/productstocks.js b/src/services/inventory/productstocks.js index f37dcc0..8010cfb 100644 --- a/src/services/inventory/productstocks.js +++ b/src/services/inventory/productstocks.js @@ -144,10 +144,17 @@ export const listProductStocksByPropertiesRouteHandler = async ( res.send(result); }; -export const getProductStockPropertyValuesRouteHandler = async (req, res, property) => { +export const getProductStockPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: productStockModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/purchaseorders.js b/src/services/inventory/purchaseorders.js index 8c60191..ff923f2 100644 --- a/src/services/inventory/purchaseorders.js +++ b/src/services/inventory/purchaseorders.js @@ -81,10 +81,17 @@ export const listPurchaseOrdersByPropertiesRouteHandler = async ( res.send(result); }; -export const getPurchaseOrderPropertyValuesRouteHandler = async (req, res, property) => { +export const getPurchaseOrderPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: purchaseOrderModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/shipments.js b/src/services/inventory/shipments.js index 1cf2a3e..049710d 100644 --- a/src/services/inventory/shipments.js +++ b/src/services/inventory/shipments.js @@ -82,10 +82,17 @@ export const listShipmentsByPropertiesRouteHandler = async ( res.send(result); }; -export const getShipmentPropertyValuesRouteHandler = async (req, res, property) => { +export const getShipmentPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: shipmentModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/stockevents.js b/src/services/inventory/stockevents.js index 0c403fb..0b97d4d 100644 --- a/src/services/inventory/stockevents.js +++ b/src/services/inventory/stockevents.js @@ -79,10 +79,17 @@ export const listStockEventsByPropertiesRouteHandler = async ( res.send(result); }; -export const getStockEventPropertyValuesRouteHandler = async (req, res, property) => { +export const getStockEventPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: stockEventModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/stocklocations.js b/src/services/inventory/stocklocations.js index ff90d06..12ccf72 100644 --- a/src/services/inventory/stocklocations.js +++ b/src/services/inventory/stocklocations.js @@ -76,10 +76,17 @@ export const listStockLocationsByPropertiesRouteHandler = async ( res.send(result); }; -export const getStockLocationPropertyValuesRouteHandler = async (req, res, property) => { +export const getStockLocationPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: stockLocationModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/inventory/stocktransfers.js b/src/services/inventory/stocktransfers.js index 9ac0017..97fdf7e 100644 --- a/src/services/inventory/stocktransfers.js +++ b/src/services/inventory/stocktransfers.js @@ -281,10 +281,17 @@ export const listStockTransfersByPropertiesRouteHandler = async ( res.send(result); }; -export const getStockTransferPropertyValuesRouteHandler = async (req, res, property) => { +export const getStockTransferPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: stockTransferModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/apppasswords.js b/src/services/management/apppasswords.js index 1ea413a..cf8e9b9 100644 --- a/src/services/management/apppasswords.js +++ b/src/services/management/apppasswords.js @@ -82,10 +82,17 @@ export const listAppPasswordsByPropertiesRouteHandler = async ( res.send(result); }; -export const getAppPasswordPropertyValuesRouteHandler = async (req, res, property) => { +export const getAppPasswordPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: appPasswordModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/courier.js b/src/services/management/courier.js index 0ffa852..0531264 100644 --- a/src/services/management/courier.js +++ b/src/services/management/courier.js @@ -74,10 +74,17 @@ export const listCouriersByPropertiesRouteHandler = async ( res.send(result); }; -export const getCourierPropertyValuesRouteHandler = async (req, res, property) => { +export const getCourierPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: courierModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/courierservice.js b/src/services/management/courierservice.js index 1a82db6..61dc8b6 100644 --- a/src/services/management/courierservice.js +++ b/src/services/management/courierservice.js @@ -78,10 +78,17 @@ export const listCourierServicesByPropertiesRouteHandler = async ( res.send(result); }; -export const getCourierServicePropertyValuesRouteHandler = async (req, res, property) => { +export const getCourierServicePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: courierServiceModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/documentjobs.js b/src/services/management/documentjobs.js index 39b8bb6..0f99a95 100644 --- a/src/services/management/documentjobs.js +++ b/src/services/management/documentjobs.js @@ -75,10 +75,17 @@ export const listDocumentJobsByPropertiesRouteHandler = async ( res.send(result); }; -export const getDocumentJobPropertyValuesRouteHandler = async (req, res, property) => { +export const getDocumentJobPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: documentJobModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/documentprinters.js b/src/services/management/documentprinters.js index f5fd42f..9146b5f 100644 --- a/src/services/management/documentprinters.js +++ b/src/services/management/documentprinters.js @@ -78,10 +78,17 @@ export const listDocumentPrintersByPropertiesRouteHandler = async ( res.send(result); }; -export const getDocumentPrinterPropertyValuesRouteHandler = async (req, res, property) => { +export const getDocumentPrinterPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: documentPrinterModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/documentsizes.js b/src/services/management/documentsizes.js index 9e8868b..d0bda34 100644 --- a/src/services/management/documentsizes.js +++ b/src/services/management/documentsizes.js @@ -74,10 +74,17 @@ export const listDocumentSizesByPropertiesRouteHandler = async ( res.send(result); }; -export const getDocumentSizePropertyValuesRouteHandler = async (req, res, property) => { +export const getDocumentSizePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: documentSizeModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/documenttemplates.js b/src/services/management/documenttemplates.js index a680920..0fecd93 100644 --- a/src/services/management/documenttemplates.js +++ b/src/services/management/documenttemplates.js @@ -112,10 +112,17 @@ export const listDocumentTemplatesByPropertiesRouteHandler = async ( res.send(result); }; -export const getDocumentTemplatePropertyValuesRouteHandler = async (req, res, property) => { +export const getDocumentTemplatePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: documentTemplateModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/filaments.js b/src/services/management/filaments.js index bc50739..0d95e48 100644 --- a/src/services/management/filaments.js +++ b/src/services/management/filaments.js @@ -78,10 +78,17 @@ export const listFilamentsByPropertiesRouteHandler = async ( res.send(result); }; -export const getFilamentPropertyValuesRouteHandler = async (req, res, property) => { +export const getFilamentPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: filamentModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/filamentskus.js b/src/services/management/filamentskus.js index 396dc31..eaf9b24 100644 --- a/src/services/management/filamentskus.js +++ b/src/services/management/filamentskus.js @@ -76,10 +76,17 @@ export const listFilamentSkusByPropertiesRouteHandler = async ( res.send(result); }; -export const getFilamentSkuPropertyValuesRouteHandler = async (req, res, property) => { +export const getFilamentSkuPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: filamentSkuModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/files.js b/src/services/management/files.js index f2ffce2..782307f 100644 --- a/src/services/management/files.js +++ b/src/services/management/files.js @@ -111,10 +111,17 @@ export const listFilesByPropertiesRouteHandler = async ( res.send(result); }; -export const getFilePropertyValuesRouteHandler = async (req, res, property) => { +export const getFilePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: fileModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/hosts.js b/src/services/management/hosts.js index 046383a..4b378a8 100644 --- a/src/services/management/hosts.js +++ b/src/services/management/hosts.js @@ -74,10 +74,17 @@ export const listHostsByPropertiesRouteHandler = async ( res.send(result); }; -export const getHostPropertyValuesRouteHandler = async (req, res, property) => { +export const getHostPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: hostModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/materials.js b/src/services/management/materials.js index 1ad3d99..85f6729 100644 --- a/src/services/management/materials.js +++ b/src/services/management/materials.js @@ -76,10 +76,17 @@ export const listMaterialsByPropertiesRouteHandler = async ( res.send(result); }; -export const getMaterialPropertyValuesRouteHandler = async (req, res, property) => { +export const getMaterialPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: materialModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/notetypes.js b/src/services/management/notetypes.js index 77dc5c3..f59ba4f 100644 --- a/src/services/management/notetypes.js +++ b/src/services/management/notetypes.js @@ -74,10 +74,17 @@ export const listNoteTypesByPropertiesRouteHandler = async ( res.send(result); }; -export const getNoteTypePropertyValuesRouteHandler = async (req, res, property) => { +export const getNoteTypePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: noteTypeModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/parts.js b/src/services/management/parts.js index 1ece91f..429c97b 100644 --- a/src/services/management/parts.js +++ b/src/services/management/parts.js @@ -76,10 +76,17 @@ export const listPartsByPropertiesRouteHandler = async ( res.send(result); }; -export const getPartPropertyValuesRouteHandler = async (req, res, property) => { +export const getPartPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: partModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/partskus.js b/src/services/management/partskus.js index 03b06df..30ac0e4 100644 --- a/src/services/management/partskus.js +++ b/src/services/management/partskus.js @@ -82,10 +82,17 @@ export const listPartSkusByPropertiesRouteHandler = async ( res.send(result); }; -export const getPartSkuPropertyValuesRouteHandler = async (req, res, property) => { +export const getPartSkuPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: partSkuModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/permissionsetting.js b/src/services/management/permissionsetting.js index 83ad134..524d6f4 100644 --- a/src/services/management/permissionsetting.js +++ b/src/services/management/permissionsetting.js @@ -77,10 +77,17 @@ export const listPermissionSettingsByPropertiesRouteHandler = async ( res.send(result); }; -export const getPermissionSettingsPropertyValuesRouteHandler = async (req, res, property) => { +export const getPermissionSettingsPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: permissionSettingModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/productcategories.js b/src/services/management/productcategories.js index edcffae..6eb68be 100644 --- a/src/services/management/productcategories.js +++ b/src/services/management/productcategories.js @@ -79,10 +79,17 @@ export const listProductCategoriesByPropertiesRouteHandler = async ( res.send(result); }; -export const getProductCategoryPropertyValuesRouteHandler = async (req, res, property) => { +export const getProductCategoryPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: productCategoryModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/products.js b/src/services/management/products.js index 6a054cd..d574bc1 100644 --- a/src/services/management/products.js +++ b/src/services/management/products.js @@ -76,10 +76,17 @@ export const listProductsByPropertiesRouteHandler = async ( res.send(result); }; -export const getProductPropertyValuesRouteHandler = async (req, res, property) => { +export const getProductPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: productModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/productskus.js b/src/services/management/productskus.js index 5b5e584..7c0d3cc 100644 --- a/src/services/management/productskus.js +++ b/src/services/management/productskus.js @@ -85,10 +85,17 @@ export const listProductSkusByPropertiesRouteHandler = async ( res.send(result); }; -export const getProductSkuPropertyValuesRouteHandler = async (req, res, property) => { +export const getProductSkuPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: productSkuModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/taxrates.js b/src/services/management/taxrates.js index 69e7a69..1257392 100644 --- a/src/services/management/taxrates.js +++ b/src/services/management/taxrates.js @@ -80,10 +80,17 @@ export const listTaxRatesByPropertiesRouteHandler = async ( res.send(result); }; -export const getTaxRatePropertyValuesRouteHandler = async (req, res, property) => { +export const getTaxRatePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: taxRateModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/usergroups.js b/src/services/management/usergroups.js index 7edafb5..dd63a92 100644 --- a/src/services/management/usergroups.js +++ b/src/services/management/usergroups.js @@ -83,10 +83,17 @@ export const listUserGroupsByPropertiesRouteHandler = async ( res.send(result); }; -export const getUserGroupPropertyValuesRouteHandler = async (req, res, property) => { +export const getUserGroupPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: userGroupModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/users.js b/src/services/management/users.js index 72c8c6a..12630e9 100644 --- a/src/services/management/users.js +++ b/src/services/management/users.js @@ -78,10 +78,17 @@ export const listUsersByPropertiesRouteHandler = async ( res.send(result); }; -export const getUserPropertyValuesRouteHandler = async (req, res, property) => { +export const getUserPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: userModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/management/vendors.js b/src/services/management/vendors.js index e45b3d5..cf3ed3c 100644 --- a/src/services/management/vendors.js +++ b/src/services/management/vendors.js @@ -74,10 +74,17 @@ export const listVendorsByPropertiesRouteHandler = async ( res.send(result); }; -export const getVendorPropertyValuesRouteHandler = async (req, res, property) => { +export const getVendorPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: vendorModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/filamentprofiles.js b/src/services/production/filamentprofiles.js index be19b59..6f8d109 100644 --- a/src/services/production/filamentprofiles.js +++ b/src/services/production/filamentprofiles.js @@ -225,10 +225,17 @@ export const listFilamentProfilesByPropertiesRouteHandler = async ( res.send(result); }; -export const getFilamentProfilePropertyValuesRouteHandler = async (req, res, property) => { +export const getFilamentProfilePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: filamentProfileModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/gcodefiles.js b/src/services/production/gcodefiles.js index 6f146d2..dc770e8 100644 --- a/src/services/production/gcodefiles.js +++ b/src/services/production/gcodefiles.js @@ -76,10 +76,17 @@ export const listGCodeFilesByPropertiesRouteHandler = async ( res.send(result); }; -export const getGCodeFilePropertyValuesRouteHandler = async (req, res, property) => { +export const getGCodeFilePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: gcodeFileModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/jobs.js b/src/services/production/jobs.js index 0de8493..ccd2154 100644 --- a/src/services/production/jobs.js +++ b/src/services/production/jobs.js @@ -76,11 +76,17 @@ export const listJobsByPropertiesRouteHandler = async ( res.send(result); }; -export const getJobPropertyValuesRouteHandler = async (req, res, property, filter = {}) => { +export const getJobPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: jobModel, property, - filter, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/printerprofiles.js b/src/services/production/printerprofiles.js index 6c7b4b4..9447835 100644 --- a/src/services/production/printerprofiles.js +++ b/src/services/production/printerprofiles.js @@ -113,10 +113,17 @@ export const listPrinterProfilesByPropertiesRouteHandler = async ( res.send(result); }; -export const getPrinterProfilePropertyValuesRouteHandler = async (req, res, property) => { +export const getPrinterProfilePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: printerProfileModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/printers.js b/src/services/production/printers.js index 926f38e..4f22ec8 100644 --- a/src/services/production/printers.js +++ b/src/services/production/printers.js @@ -77,10 +77,17 @@ export const listPrintersByPropertiesRouteHandler = async ( res.send(result); }; -export const getPrinterPropertyValuesRouteHandler = async (req, res, property) => { +export const getPrinterPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: printerModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/production/subjobs.js b/src/services/production/subjobs.js index a9825b5..f6a04a3 100644 --- a/src/services/production/subjobs.js +++ b/src/services/production/subjobs.js @@ -71,10 +71,17 @@ export const listSubJobsByPropertiesRouteHandler = async ( res.send(result); }; -export const getSubJobPropertyValuesRouteHandler = async (req, res, property) => { +export const getSubJobPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: subJobModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/clients.js b/src/services/sales/clients.js index e98ec6b..af742ab 100644 --- a/src/services/sales/clients.js +++ b/src/services/sales/clients.js @@ -74,10 +74,17 @@ export const listClientsByPropertiesRouteHandler = async ( res.send(result); }; -export const getClientPropertyValuesRouteHandler = async (req, res, property) => { +export const getClientPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: clientModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/fulfillmentpolicies.js b/src/services/sales/fulfillmentpolicies.js index 13b81c3..e36586f 100644 --- a/src/services/sales/fulfillmentpolicies.js +++ b/src/services/sales/fulfillmentpolicies.js @@ -95,10 +95,17 @@ export const listFulfillmentPoliciesByPropertiesRouteHandler = async ( res.send(result); }; -export const getFulfillmentPolicyPropertyValuesRouteHandler = async (req, res, property) => { +export const getFulfillmentPolicyPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: fulfillmentPolicyModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/listings.js b/src/services/sales/listings.js index ed62471..1418765 100644 --- a/src/services/sales/listings.js +++ b/src/services/sales/listings.js @@ -144,10 +144,17 @@ export const listListingsByPropertiesRouteHandler = async ( res.send(result); }; -export const getListingPropertyValuesRouteHandler = async (req, res, property) => { +export const getListingPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: listingModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/listingvarients.js b/src/services/sales/listingvarients.js index 424b747..fda69dc 100644 --- a/src/services/sales/listingvarients.js +++ b/src/services/sales/listingvarients.js @@ -45,13 +45,7 @@ function pushListingToMarketplace(listingId, marketplaceId, user) { run(); } -const POPULATE_FIELDS = [ - 'listing', - 'product', - 'productSku', - 'priceTaxRate', - 'listingImages', -]; +const POPULATE_FIELDS = ['listing', 'product', 'productSku', 'priceTaxRate', 'listingImages']; export const listListingVarientsRouteHandler = async ( req, @@ -111,10 +105,17 @@ export const listListingVarientsByPropertiesRouteHandler = async ( res.send(result); }; -export const getListingVarientPropertyValuesRouteHandler = async (req, res, property) => { +export const getListingVarientPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: listingVarientModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/marketplaces.js b/src/services/sales/marketplaces.js index 217711a..4ad39a1 100644 --- a/src/services/sales/marketplaces.js +++ b/src/services/sales/marketplaces.js @@ -84,10 +84,17 @@ export const listMarketplacesByPropertiesRouteHandler = async ( res.send(result); }; -export const getMarketplacePropertyValuesRouteHandler = async (req, res, property) => { +export const getMarketplacePropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: marketplaceModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/returnpolicies.js b/src/services/sales/returnpolicies.js index 3547ce3..ccc6171 100644 --- a/src/services/sales/returnpolicies.js +++ b/src/services/sales/returnpolicies.js @@ -96,10 +96,17 @@ export const listReturnPoliciesByPropertiesRouteHandler = async ( res.send(result); }; -export const getReturnPolicyPropertyValuesRouteHandler = async (req, res, property) => { +export const getReturnPolicyPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: returnPolicyModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/services/sales/salesorders.js b/src/services/sales/salesorders.js index e10c2fd..8a3e2bf 100644 --- a/src/services/sales/salesorders.js +++ b/src/services/sales/salesorders.js @@ -81,10 +81,17 @@ export const listSalesOrdersByPropertiesRouteHandler = async ( res.send(result); }; -export const getSalesOrderPropertyValuesRouteHandler = async (req, res, property) => { +export const getSalesOrderPropertyValuesRouteHandler = async ( + req, + res, + property, + filter, + masterFilter +) => { const result = await getPropertyValues({ model: salesOrderModel, property, + filter: { ...filter, ...masterFilter }, }); res.send(result); }; diff --git a/src/utils.js b/src/utils.js index 19a4df7..d28ac31 100644 --- a/src/utils.js +++ b/src/utils.js @@ -708,7 +708,6 @@ async function resolveRefLeaf(rawToken, fallbackRefName) { return resolveRefOperand(lookupToken.slice(symbol.length), refModelEntry, name); } } - const objectId = extractObjectIdFromOperand(lookupToken); if (objectId) return { value: objectId }; @@ -740,6 +739,10 @@ async function parseFilter(property, value, model = null) { property = 'state.type'; } + console.log('property', property); + console.log('value', value); + console.log('model', model); + const fieldKind = getFilterFieldKind(property, model); const filterProperty = fieldKind.property; const isBoolField = isBooleanField(property, model); @@ -1673,6 +1676,10 @@ function normalizeFilterQuery(query = {}) { // Returns a filter object based on allowed filters and req.query async function getFilter(query, allowedFilters, parse = true, model = null) { const clauses = []; + console.log('query', query); + console.log('allowedFilters', allowedFilters); + console.log('parse', parse); + console.log('model', model); const queryClean = normalizeFilterQuery(query); for (const key of ['sortProperty', 'sortOrder', 'page', 'limit']) { if (key in queryClean) delete queryClean[key];