fix: user order count
This commit is contained in:
@@ -31,56 +31,37 @@ class OrderRepository extends BaseRepository<IOrder> {
|
|||||||
{ $unwind: "$orderItems" },
|
{ $unwind: "$orderItems" },
|
||||||
{
|
{
|
||||||
$group: {
|
$group: {
|
||||||
_id: {
|
_id: "$orderItems.status",
|
||||||
orderId: "$_id",
|
count: { $sum: 1 },
|
||||||
orderStatus: "$orderStatus",
|
|
||||||
itemStatus: "$orderItems.status",
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
$group: {
|
$group: {
|
||||||
_id: null,
|
_id: null,
|
||||||
processing: {
|
processing: {
|
||||||
$sum: {
|
$sum: { $cond: [{ $eq: ["$_id", OrderItemsStatus.Processing] }, "$count", 0] },
|
||||||
$cond: [
|
|
||||||
{
|
|
||||||
$or: [{ $eq: ["$_id.itemStatus", OrderItemsStatus.Processing] }],
|
|
||||||
},
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
delivered: {
|
delivered: {
|
||||||
$sum: {
|
$sum: { $cond: [{ $eq: ["$_id", OrderItemsStatus.Delivered] }, "$count", 0] },
|
||||||
$cond: [{ $eq: ["$_id.itemStatus", OrderItemsStatus.Delivered] }, 1, 0],
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
cancelled: {
|
cancelled: {
|
||||||
$sum: {
|
$sum: {
|
||||||
$cond: [
|
$cond: [
|
||||||
{
|
{
|
||||||
$in: [
|
$in: ["$_id", [OrderItemsStatus.cancelled_system, OrderItemsStatus.cancelled_user, OrderItemsStatus.cancelled_shop]],
|
||||||
"$_id.itemStatus",
|
|
||||||
[OrderItemsStatus.cancelled_system, OrderItemsStatus.cancelled_user, OrderItemsStatus.cancelled_shop],
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
1,
|
"$count",
|
||||||
0,
|
0,
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
returned: {
|
returned: {
|
||||||
$sum: {
|
$sum: { $cond: [{ $eq: ["$_id", OrderItemsStatus.Returned] }, "$count", 0] },
|
||||||
$cond: [{ $eq: ["$_id.itemStatus", OrderItemsStatus.Returned] }, 1, 0],
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
shipped: {
|
shipped: {
|
||||||
$sum: {
|
$sum: { $cond: [{ $eq: ["$_id", OrderItemsStatus.Shipped] }, "$count", 0] },
|
||||||
$cond: [{ $eq: ["$_id.itemStatus", OrderItemsStatus.Shipped] }, 1, 0],
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
|
all: { $sum: "$count" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -91,6 +72,7 @@ class OrderRepository extends BaseRepository<IOrder> {
|
|||||||
cancelled: 1,
|
cancelled: 1,
|
||||||
returned: 1,
|
returned: 1,
|
||||||
shipped: 1,
|
shipped: 1,
|
||||||
|
all: 1,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
@@ -103,6 +85,7 @@ class OrderRepository extends BaseRepository<IOrder> {
|
|||||||
cancelled: 0,
|
cancelled: 0,
|
||||||
returned: 0,
|
returned: 0,
|
||||||
shipped: 0,
|
shipped: 0,
|
||||||
|
all: 0,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user