如何在 mongo 和 express 中使用 daterangepicker 过滤日期之间的数据?

问题描述

我有 2 个文件 app.js 和 payment.ejs,payment.ejs 有以下代码

<input type="text" size="18" name="date" id="date" />

    $('#date').daterangepicker({},function(start,end,label) {

    console.log("A new date selection was made: " + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));

    $.ajax({
            url:"/payment",method: "POST",dataType: "json",data: {from: start.format('YYYY-MM-DD'),to: end.format('YYYY-MM-DD')},success:function(result) {
                console.log(result);
            }
        });
  });

app.js 有以下代码

app.get("/payment",totalpayment_post,payment_render);
app.post("/payment",payment_render);

var payment_Schema = new mongoose.Schema({
  _id: String,Date_between: { type: Date,default: moment(new Date()).format('YYYY/MM/DD') },Payment: Number
});

var payment_list = mongoose.model('payment_list',payment_Schema,'employees');

var pipeline_total = [
    "$match": {
        "Date_between": { "$gte": start,"$lte": end }
    }
},{
      "$group": {
          "_id": null,"total": { "$sum": "$Payment" },"count": {$sum: 1}
      }
  }
];

function totalpayment_post(req,res,next) {
    
payment_list.aggregate(pipeline_total).exec(function (err,docs_total) {
  if (err) next(err);
     res.locals.docs_total = docs_total;
     next();
});
}

function payment_render(req,res) {
    res.render("payment");
}

我想使用 daterangepicker 在 'Date_between' 字段之间选择 mongo 文档的总付款,但是我如何将 daterangepicker 的开始和结束值发送到 app.js 的 "Date_between": { "$gte": start,"$lte": end }

我想显示日期范围内的总付款额。当我选择日期时,我如何在payment.ejs 中的日期之间支付总额? 总付款:<%= docs_total[0].total %>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...