fix : user profile orders list

This commit is contained in:
morteza-mortezai
2025-11-05 23:15:34 +03:30
parent ad296a2f75
commit f555afaa49
2 changed files with 13 additions and 10 deletions
+1 -1
View File
@@ -100,4 +100,4 @@ export type NotificationQuery = {
since: number;
};
export type OrderStatusQuery = "Delivered" | "Processing" | "Cancelled" | "Returned";
export type OrderStatusQuery = "Delivered" | "Processing" | "Cancelled" | "Returned" | "Shipped";
+12 -9
View File
@@ -117,13 +117,13 @@ class OrderRepository extends BaseRepository<IOrder> {
async getUserOrders(userId: string, statusQuery: OrderStatusQuery) {
const matchQuery: { [k: string]: unknown } = {
user: new Types.ObjectId(userId),
$or: [],
// $or: [],
};
const orderItemsMatchQuery: { [k: string]: unknown } = {};
switch (statusQuery) {
case "Cancelled":
matchQuery.$or = [{ orderStatus: OrdersStatus.cancelled_system }, { orderStatus: OrdersStatus.Cancelled }];
// matchQuery.$or = [{ orderStatus: OrdersStatus.cancelled_system }, { orderStatus: OrdersStatus.Cancelled }];
orderItemsMatchQuery.$or = [
{ "orderItems.status": OrderItemsStatus.cancelled_system },
{ "orderItems.status": OrderItemsStatus.cancelled_shop },
@@ -131,20 +131,23 @@ class OrderRepository extends BaseRepository<IOrder> {
];
break;
case "Processing":
matchQuery.$or = [{ orderStatus: OrdersStatus.process_by_seller }, { orderStatus: OrdersStatus.wait_payment }];
orderItemsMatchQuery.$or = [
{ "orderItems.status": OrderItemsStatus.Processing },
{ "orderItems.status": OrderItemsStatus.Shipped },
];
// matchQuery.$or = [{ orderStatus: OrdersStatus.process_by_seller }, { orderStatus: OrdersStatus.wait_payment }];
orderItemsMatchQuery["orderItems.status"] = OrderItemsStatus.Processing;
// { "orderItems.status": OrderItemsStatus.Shipped },
break;
case "Delivered":
matchQuery.orderStatus = OrdersStatus.process_by_seller;
// matchQuery.orderStatus = OrdersStatus.process_by_seller;
orderItemsMatchQuery["orderItems.status"] = OrderItemsStatus.Delivered;
break;
case "Returned":
matchQuery.orderStatus = OrdersStatus.process_by_seller;
// matchQuery.orderStatus = OrdersStatus.process_by_seller;
orderItemsMatchQuery["orderItems.status"] = OrderItemsStatus.Returned;
break;
case "Shipped":
// matchQuery.orderStatus = OrdersStatus.process_by_seller;
orderItemsMatchQuery["orderItems.status"] = OrderItemsStatus.Shipped;
break;
default:
break;
}