【发布时间】:2022-01-06 04:43:07
【问题描述】:
我对 javascript 很陌生,我正在为我正在开发的电子商务网站创建一个仪表板。我正在尝试显示从第一个订单日期开始的所有日期的数据。 MongoDB 当然只显示订单日期的数据,所以我正在尝试使用 javascript 将缺失的日期添加到我的 MongoDB 数据中。我在执行此操作时遇到了一些问题,我非常感谢任何有关如何使其工作的建议或帮助。
谢谢!
OrderRouter.js
import express from 'express';
import expressAsyncHandler from 'express-async-handler';
import Order from '../models/orderModel.js';
import User from '../models/userModel.js';
import Product from '../models/productModel.js';
orderRouter.get(
'/summary',
isAuth,
isAdmin,
expressAsyncHandler(async (req, res) => {
const dailySales = await Order.aggregate([
{
$group: {
_id: { $dateToString: { format: '%m-%d-%Y', date: '$createdAt' } },
orders: { $sum: 1 },
sales: { $sum: '$totalPrice' },
},
},
{ $sort: { _id: 1 } },
]);
const datesArray = getDates(startDate, endDate)
for(date in datesArray){
isInArray = true;
for (day in dailySales){
if (day._id === date){
isInArray = true;
}
}
if (isInArray = false){
dailySales.push({ "_id":"date", "orders":0, "sales":0})
}
}
res.send({dailySales });
})
);
【问题讨论】:
标签: javascript reactjs mongodb