router.get('/', function (request, response, next) {
let page = parseInt(request.query.page);
let pageSize = parseInt(request.query.pageSize);
let sort = parseInt(request.query.sort);
let priceLevel = request.query.priceLevel;
let skip = (page - 1) * pageSize;
let query = {};
let priceGt = '', priceLte = '';
if (priceLevel !== 'all') {
switch (priceLevel) {
case '0': priceGt = 0, priceLte = 500;break;
case '1': priceGt = 500, priceLte = 1000;break;
case '2': priceGt = 1000, priceLte = 2000;break;
case '3': priceGt = 2000, priceLte = 5000;break;
}
query = {
salePrice: {
$gt: priceGt,
$lte: priceLte
}
}
}
let goodsModel = Goods.find(query).skip(skip).limit(pageSize);
goodsModel.sort({'salePrice': sort});
goodsModel.exec(function (error, document) {
if (error) {
response.json({
status: '1',
message: error.message
});
} else {
response.json({
status: '0',
message: '',
result: {
count: document.length,
list: document
}
})
}
})
});