From c5590ab7b16f92873d402ecc7419293c2afa1a7f Mon Sep 17 00:00:00 2001 From: shancheas Date: Mon, 7 Oct 2024 05:54:06 +0700 Subject: [PATCH] fix: pos formula calculation --- .../sales-price-formula-data.service.ts | 3 ++- .../handlers/pos-transaction.handler.ts | 23 +++++++++++++------ 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/modules/transaction/sales-price-formula/data/services/sales-price-formula-data.service.ts b/src/modules/transaction/sales-price-formula/data/services/sales-price-formula-data.service.ts index 8e23965..d3f667d 100644 --- a/src/modules/transaction/sales-price-formula/data/services/sales-price-formula-data.service.ts +++ b/src/modules/transaction/sales-price-formula/data/services/sales-price-formula-data.service.ts @@ -38,8 +38,9 @@ export class SalesPriceFormulaDataService extends BaseDataService { @@ -23,6 +24,7 @@ export class PosTransactionHandler implements IEventHandler { private taxService: TaxDataService, private formulaService: SalesPriceFormulaDataService, private eventBus: EventBus, + private calculator: PriceCalculator, ) {} async handle(event: ChangeDocEvent) { @@ -71,20 +73,27 @@ export class PosTransactionHandler implements IEventHandler { // jika update // create else { - const tax_datas = taxes?.map((tax) => { - return { - tax_id: tax.id, - tax_name: tax.name, - tax_value: tax.value, - }; - }); + // const tax_datas = taxes?.map((tax) => { + // return { + // tax_id: tax.id, + // tax_name: tax.name, + // tax_value: tax.value, + // }; + // }); + + const { dpp_value, tax_datas, other } = await this.calculator.calculate( + data, + ); mappingRevertTransaction(data, TransactionType.COUNTER); Object.assign(data, { taxes: tax_datas, + payment_total_dpp: dpp_value, profit_share_formula: profit_formula.formula_string, sales_price_formula: sales_formula.formula_string, + payment_total_share: other.total_profit_share, + payment_total_tax: other.payment_total_tax, }); apmTransactions.setLabel('Id', data?.id);