development #107
|
@ -38,8 +38,9 @@ export class SalesPriceFormulaDataService extends BaseDataService<SalesPriceForm
|
|||
},
|
||||
});
|
||||
|
||||
const tenantShareMargin = item?.tenant?.share_margin;
|
||||
const profitShare = (item?.share_profit ?? 0) / 100;
|
||||
const tenantShare = (item?.tenant?.share_margin ?? 0) / 100;
|
||||
const tenantShare = tenantShareMargin ? (100 - tenantShareMargin) / 100 : 0;
|
||||
|
||||
return { profitShare, tenantShare };
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@ import { mappingRevertTransaction } from '../managers/helpers/mapping-transactio
|
|||
import { apm } from '../../../../../../core/apm';
|
||||
import { TABLE_NAME } from 'src/core/strings/constants/table.constants';
|
||||
import { TransactionChangeStatusEvent } from '../../entities/event/transaction-change-status.event';
|
||||
import { PriceCalculator } from '../calculator/price.calculator';
|
||||
|
||||
@EventsHandler(ChangeDocEvent)
|
||||
export class PosTransactionHandler implements IEventHandler<ChangeDocEvent> {
|
||||
|
@ -23,6 +24,7 @@ export class PosTransactionHandler implements IEventHandler<ChangeDocEvent> {
|
|||
private taxService: TaxDataService,
|
||||
private formulaService: SalesPriceFormulaDataService,
|
||||
private eventBus: EventBus,
|
||||
private calculator: PriceCalculator,
|
||||
) {}
|
||||
|
||||
async handle(event: ChangeDocEvent) {
|
||||
|
@ -71,22 +73,36 @@ export class PosTransactionHandler implements IEventHandler<ChangeDocEvent> {
|
|||
|
||||
// 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,
|
||||
// };
|
||||
// });
|
||||
|
||||
mappingRevertTransaction(data, TransactionType.COUNTER);
|
||||
|
||||
Object.assign(data, {
|
||||
taxes: tax_datas,
|
||||
profit_share_formula: profit_formula.formula_string,
|
||||
sales_price_formula: sales_formula.formula_string,
|
||||
});
|
||||
|
||||
try {
|
||||
const { dpp_value, tax_datas, other } =
|
||||
await this.calculator.calculate(data);
|
||||
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,
|
||||
});
|
||||
} catch (error) {
|
||||
apm.captureError(error);
|
||||
}
|
||||
|
||||
apmTransactions.setLabel('Id', data?.id);
|
||||
apmTransactions.setLabel('Code', data?.code);
|
||||
apmTransactions.setLabel('Status', data?.status);
|
||||
|
|
Loading…
Reference in New Issue