diff --git a/src/common/types/query.type.ts b/src/common/types/query.type.ts index ace4d42..f01aa01 100644 --- a/src/common/types/query.type.ts +++ b/src/common/types/query.type.ts @@ -100,4 +100,4 @@ export type NotificationQuery = { since: number; }; -export type OrderStatusQuery = "Delivered" | "Processing" | "Cancelled" | "Returned"; +export type OrderStatusQuery = "Delivered" | "Processing" | "Cancelled" | "Returned" | "Shipped"; diff --git a/src/modules/order/order.repository.ts b/src/modules/order/order.repository.ts index b2ef8fd..bbeda8e 100644 --- a/src/modules/order/order.repository.ts +++ b/src/modules/order/order.repository.ts @@ -117,13 +117,13 @@ class OrderRepository extends BaseRepository { 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 { ]; 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; }