nodejs + mongodb jsonp 인터페이스 페이지 정렬 기능 구현

5222 단어 nodejsmongo
router.get('/list', function(req, res, next) {
    let callback = req.param('callback'),sort = parseInt(req.param('sort'))?1:-1,priceStart = req.param('priceStart'),priceEnd = req.param('priceEnd'),page = parseInt(req.param('page')),pageSize = parseInt(req.param('pageSize'));
    if(!callback){
        res.status(404).json({
            success:false,
            msg:'    !'
        });
    }
    let where = {$and:[{}]};
    if(priceStart){
        where.$and.push({
                salePrice:{$gte:priceStart}
            });
    }
    if(priceEnd){
        where.$and.push({
            salePrice:{$lte:priceEnd}
        });
    }
    let result = Goods.find(where).skip((page-1)*pageSize).limit(pageSize);
    result.sort({'salePrice':sort});//1    -1   
    result.exec(function(err,doc){
        if(err){
            res.status(500).json({
                success:false,
                msg:err.message
            });
        }else{
           let ret = {success:true,msg:'        ',data:{count:doc.length,list:doc}};
            res.status(200).end(callback+'('+JSON.stringify(ret)+')');
        }
    });

좋은 웹페이지 즐겨찾기