Skip to content

Commit f3ffbee

Browse files
author
VuXfi
committed
add event emission for order dish changes after create and update
1 parent 33befce commit f3ffbee

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

libs/AwaitEmitter.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ declare global {
8989
"promotion-process:debug": [number, OrderRecord, PromotionRecord, any],
9090
"core:adapter-rms-sync-out-of-stock-touch": []
9191
"core:order-after-create": [OrderRecord],
92-
"core:order-after-remove-dish": [OrderRecord, string, DishRecord, number, boolean]
92+
"core:order-after-remove-dish": [OrderRecord, string, DishRecord, number, boolean],
93+
"core:order-dish-changed": [OrderDishRecord]
9394
}
9495
}
9596

models/Order.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -567,7 +567,6 @@ let Model = {
567567

568568
//** Delete dish from order */
569569
async removeDish(criteria: CriteriaQuery<OrderRecord>, dish: OrderDishRecord, amount: number, stack?: boolean): Promise<void> {
570-
// TODO: delete stack
571570

572571
await emitter.emit.apply(emitter, ["core:order-before-remove-dish", ...arguments]);
573572

models/OrderDish.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,15 @@ interface OrderDish extends RequiredField<OptionalAll<attributes>, "dish" | "amo
9696
export interface OrderDishRecord extends RequiredField<OptionalAll<attributes>, "dish" | "amount" >, ORM {}
9797

9898
let Model = {
99+
afterCreate(newRecord: OrderDishRecord, proceed: () => void) {
100+
emitter.emit("core:order-dish-changed", newRecord);
101+
return proceed();
102+
},
103+
104+
afterUpdate(newRecord: OrderDishRecord, proceed: () => void) {
105+
emitter.emit("core:order-dish-changed", newRecord);
106+
return proceed();
107+
},
99108
};
100109

101110
module.exports = {

0 commit comments

Comments
 (0)