Enhanced various route handlers and services to support an additional master filter parameter for improved data querying capabilities. Updated related functions across multiple management and production routes, ensuring consistent handling of master filters in property-based queries.

This commit is contained in:
Tom Butcher 2026-07-24 21:52:54 +01:00
parent a42f953e9a
commit 11ff82a9af
48 changed files with 234 additions and 82 deletions

View File

@ -27,7 +27,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['taxRate', 'transactionType', 'transaction'];
const filter = getFilter(req.query, allowedFilters, false);
listTaxRecordsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listTaxRecordsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -12,7 +12,7 @@ import {
listCouriersByPropertiesRouteHandler,
getCourierStatsRouteHandler,
getCourierHistoryRouteHandler,
searchCouriersRouteHandler
searchCouriersRouteHandler,
} from '../../services/management/courier.js';
// list of couriers
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['name', 'website', 'email', 'phone', 'contact', 'country'];
const filter = getFilter(req.query, allowedFilters, false);
listCouriersByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listCouriersByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchCouriersRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newCourierRouteHandler(req, res);
});

View File

@ -47,8 +47,13 @@ router.get('/properties', isAuthenticated, (req, res) => {
'costWithTax',
];
const filter = getFilter(req.query, allowedFilters, false);
listCourierServicesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listCourierServicesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchCourierServicesRouteHandler(req, res, search);

View File

@ -12,7 +12,7 @@ import {
listDocumentJobsByPropertiesRouteHandler,
getDocumentJobStatsRouteHandler,
getDocumentJobHistoryRouteHandler,
searchDocumentJobsRouteHandler
searchDocumentJobsRouteHandler,
} from '../../services/management/documentjobs.js';
// list of document jobs
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = [];
const filter = getFilter(req.query, allowedFilters, false);
listDocumentJobsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listDocumentJobsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchDocumentJobsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newDocumentJobRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listDocumentPrintersByPropertiesRouteHandler,
getDocumentPrinterStatsRouteHandler,
getDocumentPrinterHistoryRouteHandler,
searchDocumentPrintersRouteHandler
searchDocumentPrintersRouteHandler,
} from '../../services/management/documentprinters.js';
// list of document printers
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['tags'];
const filter = getFilter(req.query, allowedFilters, false);
listDocumentPrintersByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listDocumentPrintersByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchDocumentPrintersRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newDocumentPrinterRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listDocumentSizesByPropertiesRouteHandler,
getDocumentSizeStatsRouteHandler,
getDocumentSizeHistoryRouteHandler,
searchDocumentSizesRouteHandler
searchDocumentSizesRouteHandler,
} from '../../services/management/documentsizes.js';
// list of document sizes
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = [];
const filter = getFilter(req.query, allowedFilters, false);
listDocumentSizesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listDocumentSizesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchDocumentSizesRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newDocumentSizeRouteHandler(req, res);
});

View File

@ -13,21 +13,14 @@ import {
deleteFilamentRouteHandler,
getFilamentStatsRouteHandler,
getFilamentHistoryRouteHandler,
searchFilamentsRouteHandler
searchFilamentsRouteHandler,
} from '../../services/management/filaments.js';
// list of filaments
router.get('/', isAuthenticated, (req, res) => {
const { page, limit, property, search, sort, order } = req.query;
const allowedFilters = [
'_id',
'material',
'material._id',
'diameter',
'name',
'cost',
];
const allowedFilters = ['_id', 'material', 'material._id', 'diameter', 'name', 'cost'];
var filter = {};
@ -46,14 +39,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['diameter', 'material'];
const filter = getFilter(req.query, allowedFilters, false);
listFilamentsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listFilamentsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchFilamentsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newFilamentRouteHandler(req, res);
});

View File

@ -14,29 +14,33 @@ import {
listFilesByPropertiesRouteHandler,
getFileStatsRouteHandler,
getFileHistoryRouteHandler,
searchFilesRouteHandler
searchFilesRouteHandler,
} from '../../services/management/files.js';
// list of files
router.get('/', isAuthenticated, (req, res) => {
const { page, limit, property, search, sort, order } = req.query;
const allowedFilters = ['_id', 'name', 'type', 'size'];
const allowedFilters = ['_id', 'name', 'type', 'size', 'extension'];
const filter = getFilter(req.query, allowedFilters);
listFilesRouteHandler(req, res, page, limit, property, filter, search, sort, order);
});
router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['type'];
const allowedFilters = ['type', 'extension'];
const filter = getFilter(req.query, allowedFilters, false);
listFilesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listFilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchFilesRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newFileRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listHostsByPropertiesRouteHandler,
getHostStatsRouteHandler,
getHostHistoryRouteHandler,
searchHostsRouteHandler
searchHostsRouteHandler,
} from '../../services/management/hosts.js';
// list of hosts
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['tags'];
const filter = getFilter(req.query, allowedFilters, false);
listHostsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listHostsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchHostsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newHostRouteHandler(req, res);
});

View File

@ -35,7 +35,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['name', 'tags'];
const filter = getFilter(req.query, allowedFilters, false);
listMaterialsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listMaterialsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {

View File

@ -12,7 +12,7 @@ import {
listPartsByPropertiesRouteHandler,
getPartStatsRouteHandler,
getPartHistoryRouteHandler,
searchPartsRouteHandler
searchPartsRouteHandler,
} from '../../services/management/parts.js';
// list of parts
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['product._id'];
const filter = getFilter(req.query, allowedFilters, false);
listPartsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listPartsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchPartsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newPartRouteHandler(req, res);
});

View File

@ -10,7 +10,7 @@ import {
listProductCategoriesByPropertiesRouteHandler,
listProductCategoriesRouteHandler,
newProductCategoryRouteHandler,
searchProductCategoriesRouteHandler
searchProductCategoriesRouteHandler,
} from '../../services/management/productcategories.js';
const router = express.Router();
@ -26,14 +26,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
const properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['name'];
const filter = getFilter(req.query, allowedFilters, false);
listProductCategoriesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listProductCategoriesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchProductCategoriesRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newProductCategoryRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listProductsByPropertiesRouteHandler,
getProductStatsRouteHandler,
getProductHistoryRouteHandler,
searchProductsRouteHandler
searchProductsRouteHandler,
} from '../../services/management/products.js';
// list of products
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = [];
const filter = getFilter(req.query, allowedFilters, false);
listProductsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listProductsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchProductsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newProductRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listTaxRatesByPropertiesRouteHandler,
getTaxRateStatsRouteHandler,
getTaxRateHistoryRouteHandler,
searchTaxRatesRouteHandler
searchTaxRatesRouteHandler,
} from '../../services/management/taxrates.js';
// list of tax rates
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['rateType', 'country', 'active'];
const filter = getFilter(req.query, allowedFilters, false);
listTaxRatesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listTaxRatesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchTaxRatesRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newTaxRateRouteHandler(req, res);
});

View File

@ -12,7 +12,7 @@ import {
listVendorsByPropertiesRouteHandler,
getVendorStatsRouteHandler,
getVendorHistoryRouteHandler,
searchVendorsRouteHandler
searchVendorsRouteHandler,
} from '../../services/management/vendors.js';
// list of vendors
@ -27,14 +27,18 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['country', 'active', 'createdAt', 'updatedAt'];
const filter = getFilter(req.query, allowedFilters, false);
listVendorsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listVendorsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;
searchVendorsRouteHandler(req, res, search);
});
router.post('/', isAuthenticated, (req, res) => {
newVendorRouteHandler(req, res);
});

View File

@ -26,7 +26,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['parent'];
const filter = getFilter(req.query, allowedFilters, false);
listNotesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listNotesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
// create new note

View File

@ -22,7 +22,11 @@ router.get('/', isAuthenticated, (req, res) => {
router.get('/properties', isAuthenticated, (req, res) => {
const properties = convertPropertiesString(req.query.properties);
const filter = getFilter(req.query, ['name'], false);
listFilamentProfilesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listFilamentProfilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {

View File

@ -26,7 +26,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['filament', 'filament._id', 'filamentSku', 'filamentSku._id'];
const filter = getFilter(req.query, allowedFilters, false);
listGCodeFilesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listGCodeFilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -27,7 +27,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['state'];
const filter = getFilter(req.query, allowedFilters, false);
listJobsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listJobsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -22,7 +22,11 @@ router.get('/', isAuthenticated, (req, res) => {
router.get('/properties', isAuthenticated, (req, res) => {
const properties = convertPropertiesString(req.query.properties);
const filter = getFilter(req.query, ['name'], false);
listPrinterProfilesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listPrinterProfilesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {

View File

@ -26,7 +26,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['tags'];
const filter = getFilter(req.query, allowedFilters, false);
listPrintersByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listPrintersByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -24,7 +24,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['job'];
const filter = getFilter(req.query, allowedFilters, false);
listSubJobsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listSubJobsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -27,7 +27,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['country', 'active', 'createdAt', 'updatedAt'];
const filter = getFilter(req.query, allowedFilters, false);
listClientsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listClientsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -48,7 +48,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
'updatedAt',
];
const filter = getFilter(req.query, allowedFilters, false);
listListingsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listListingsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -46,7 +46,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
'updatedAt',
];
const filter = getFilter(req.query, allowedFilters, false);
listListingVarientsByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listListingVarientsByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -32,7 +32,11 @@ router.get('/properties', isAuthenticated, (req, res) => {
let properties = convertPropertiesString(req.query.properties);
const allowedFilters = ['name', 'provider', 'active', 'connected', 'state.type', 'createdAt', 'updatedAt'];
const filter = getFilter(req.query, allowedFilters, false);
listMarketplacesByPropertiesRouteHandler(req, res, properties, filter);
var masterFilter = {};
if (req.query.masterFilter) {
masterFilter = JSON.parse(req.query.masterFilter);
}
listMarketplacesByPropertiesRouteHandler(req, res, properties, filter, masterFilter);
});
router.get('/search', isAuthenticated, (req, res) => {
const { search } = req.query;

View File

@ -52,12 +52,14 @@ export const listTaxRecordsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: taxRecordModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -52,12 +52,14 @@ export const listCouriersByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: courierModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -53,12 +53,14 @@ export const listCourierServicesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: courierServiceModel,
properties,
filter,
masterFilter,
populate: ['courier', 'costTaxRate'],
});

View File

@ -52,12 +52,14 @@ export const listDocumentJobsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: documentJobModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -55,12 +55,14 @@ export const listDocumentPrintersByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: documentPrinterModel,
properties,
filter,
masterFilter,
populate: ['currentDocumentSize', 'host'],
});

View File

@ -52,12 +52,14 @@ export const listDocumentSizesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: documentSizeModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -55,12 +55,14 @@ export const listFilamentsByPropertiesRouteHandler = async (
req,
res,
properties = [],
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: filamentModel,
properties,
filter,
masterFilter,
populate: [],
});

View File

@ -53,12 +53,14 @@ export const listMaterialsByPropertiesRouteHandler = async (
req,
res,
properties = [],
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: materialModel,
properties,
filter,
masterFilter,
populate: [],
});

View File

@ -49,11 +49,18 @@ export const listPartsRouteHandler = async (
res.send(result);
};
export const listPartsByPropertiesRouteHandler = async (req, res, properties = '', filter = {}) => {
export const listPartsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: partModel,
properties,
filter,
masterFilter,
populate: [],
});

View File

@ -54,12 +54,14 @@ export const listProductCategoriesByPropertiesRouteHandler = async (
req,
res,
properties = [],
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: productCategoryModel,
properties,
filter,
masterFilter,
populate: [],
});

View File

@ -53,12 +53,14 @@ export const listProductsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: productModel,
properties,
filter,
masterFilter,
populate: ['productCategory', 'vendor'],
});

View File

@ -52,12 +52,14 @@ export const listTaxRatesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: taxRateModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -52,12 +52,14 @@ export const listVendorsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: vendorModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -51,11 +51,18 @@ export const listNotesRouteHandler = async (
res.send(result);
};
export const listNotesByPropertiesRouteHandler = async (req, res, properties = '', filter = {}) => {
export const listNotesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: noteModel,
properties,
filter,
masterFilter,
populate: ['noteType', 'user'],
});

View File

@ -203,12 +203,14 @@ export const listFilamentProfilesByPropertiesRouteHandler = async (
req,
res,
properties = [],
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: filamentProfileModel,
properties,
filter,
masterFilter,
populate: FILAMENT_PROFILE_POPULATE,
});

View File

@ -53,12 +53,14 @@ export const listGCodeFilesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: gcodeFileModel,
properties,
filter,
masterFilter,
populate: ['filament', 'filamentSku'],
});

View File

@ -91,12 +91,14 @@ export const listPrinterProfilesByPropertiesRouteHandler = async (
req,
res,
properties = [],
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: printerProfileModel,
properties,
filter,
masterFilter,
populate: ['printer'],
});

View File

@ -54,12 +54,14 @@ export const listPrintersByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: printerModel,
properties,
filter,
masterFilter,
populate: ['vendor', 'host'],
});

View File

@ -52,12 +52,14 @@ export const listClientsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: clientModel,
properties,
filter,
masterFilter,
});
if (result?.error) {

View File

@ -93,12 +93,14 @@ export const listListingsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: listingModel,
properties,
filter,
masterFilter,
populate: ['product', 'vendor', 'stockLocation', 'marketplace', 'courierServices'],
});

View File

@ -63,12 +63,14 @@ export const listListingVarientsByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: listingVarientModel,
properties,
filter,
masterFilter,
populate: POPULATE_FIELDS,
});

View File

@ -53,12 +53,14 @@ export const listMarketplacesByPropertiesRouteHandler = async (
req,
res,
properties = '',
filter = {}
filter = {},
masterFilter = {}
) => {
const result = await listObjectsByProperties({
model: marketplaceModel,
properties,
filter,
masterFilter,
});
if (result?.error) {