织梦CMS - 轻松建站从此开始!

沙龙国际-沙龙365国际_沙龙国际网上娱乐

当前位置: 主页 > www.salon365.com >

mongodb多条查询,如何在所有查询执行完成后再回

时间:2017-07-11 17:42来源:未知 作者:admin 点击:
router.get('/test.node', function(req, res, next) { //定义回显的msg var msg = { stats: 1, err: [], main: {}, mark: '' }; //查询数据1 var paywayList = []; //查询数据2 var tradeList = []; //查询数据3 var rechargeList = []; //查
router.get('/test.node', function(req, res, next) {
    //定义回显的msg
    var msg = {
        stats: 1,
        err: [],
        main: {},
        mark: ''
    };
    //查询数据1
    var paywayList = [];
    //查询数据2
    var tradeList = [];
    //查询数据3
    var rechargeList = [];
    //查询数据4
    var tradeSum = {};
    
    //每查询一次调用一次okCountFunc()
    //查询数据1
    bossService.getPaywayListByMerchant(merchantId, branchId, function(items) {
        paywayList = items;
        okCountFunc();
    });
    //查询数据2
    bossService.getPaysumListByMerchant(merchantId, branchId, params.startDate, params.endDate, function(items) {
        tradeList = items;
        okCountFunc();
    });

    //查询数据3
    bossService.getVippaysumListByMerchant(merchantId, branchId, params.startDate, params.endDate, function(items, objs) {
        rechargeList = objs;
        okCountFunc();
    });
    //查询数据4
    bossService.getDaysumListByMerchant(merchantId, branchId, params.startDate, params.endDate, function(list, sum) {
        tradeSum = sum;
        okCountFunc();
    });
    
    //统计计数
    var okCount = 0;
    var okCountFunc = function() {
        okCount  ;
        if (okCount == 4) { //到这里查询已全部结束
            //最后合并该统计数据
            msg.main.paywayList = paywayList;
            msg.main.tradeList = tradeList;
            msg.main.rechargeList = rechargeList;
            msg.main.tradeSum = tradeSum;
            res.send(msg);
        }
    }
});
  • 有没有更加便捷的方法,当所有查询执行完成后再回显到页面。

  • promise?有没有demo.

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容