chore(promotion): big number calc (#7537)

This commit is contained in:
Carlos R. L. Rodrigues
2024-05-30 07:23:57 -03:00
committed by GitHub
parent 61977bd392
commit 096372463e
12 changed files with 194 additions and 148 deletions
@@ -14,6 +14,7 @@ import {
ComputedActions,
InjectManager,
InjectTransactionManager,
MathBN,
MedusaContext,
MedusaError,
ModulesSdkUtils,
@@ -23,6 +24,7 @@ import {
isDefined,
isPresent,
isString,
transformPropertiesToBigNumber,
} from "@medusajs/utils"
import {
ApplicationMethod,
@@ -176,12 +178,14 @@ export default class PromotionModuleService<
campaignBudget.id
) || { id: campaignBudget.id, used: campaignBudget.used ?? 0 }
campaignBudgetData.used =
(campaignBudgetData.used ?? 0) + computedAction.amount
campaignBudgetData.used = MathBN.add(
campaignBudgetData.used ?? 0,
computedAction.amount
)
if (
campaignBudget.limit &&
campaignBudgetData.used > campaignBudget.limit
MathBN.gt(campaignBudgetData.used, campaignBudget.limit)
) {
continue
}
@@ -202,12 +206,12 @@ export default class PromotionModuleService<
const campaignBudgetData = {
id: campaignBudget.id,
used: (campaignBudget.used ?? 0) + 1,
used: MathBN.add(campaignBudget.used ?? 0, 1),
}
if (
campaignBudget.limit &&
campaignBudgetData.used > campaignBudget.limit
MathBN.gt(campaignBudgetData.used, campaignBudget.limit)
) {
continue
}
@@ -424,6 +428,8 @@ export default class PromotionModuleService<
}
}
transformPropertiesToBigNumber(computedActions, { include: ["amount"] })
return computedActions
}