From 4684c03dc8e4272cc898dcc2a3a7308437c6e591 Mon Sep 17 00:00:00 2001 From: nkdengineer Date: Tue, 14 Oct 2025 23:48:00 +0700 Subject: [PATCH 1/2] fix: Tax no longer valid error shown on distance expense --- src/libs/TransactionUtils/index.ts | 5 +++++ src/libs/Violations/ViolationsUtils.ts | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/libs/TransactionUtils/index.ts b/src/libs/TransactionUtils/index.ts index 59950398f4a3..558290c3df22 100644 --- a/src/libs/TransactionUtils/index.ts +++ b/src/libs/TransactionUtils/index.ts @@ -20,6 +20,7 @@ import {rand64, roundToTwoDecimalPlaces} from '@libs/NumberUtils'; import {getPersonalDetailsByIDs} from '@libs/PersonalDetailsUtils'; import { getCommaSeparatedTagNameWithSanitizedColons, + getDistanceRateCustomUnit, getDistanceRateCustomUnitRate, getPolicy, getTaxByID, @@ -1440,6 +1441,10 @@ function getDefaultTaxCode(policy: OnyxEntry, transaction: OnyxEntry violation.name === CONST.VIOLATIONS.OVER_CATEGORY_LIMIT); const hasMissingCommentViolation = transactionViolations.some((violation) => violation.name === CONST.VIOLATIONS.MISSING_COMMENT); const hasTaxOutOfPolicyViolation = transactionViolations.some((violation) => violation.name === CONST.VIOLATIONS.TAX_OUT_OF_POLICY); - const isPolicyTrackTaxEnabled = !!policy?.tax?.trackingEnabled; + const isDistanceRequest = TransactionUtils.isDistanceRequest(updatedTransaction); + const isPerDiemRequest = TransactionUtils.isPerDiemRequest(updatedTransaction); + const isPolicyTrackTaxEnabled = isTaxTrackingEnabled(true, policy, isDistanceRequest, isPerDiemRequest); // we can use isPolicyExpenseChat here const isTaxInPolicy = Object.keys(policy.taxRates?.taxes ?? {}).some((key) => key === updatedTransaction.taxCode); // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing From e27727ec98340f8439b225f440dd6de39e1aafac Mon Sep 17 00:00:00 2001 From: nkdengineer Date: Tue, 21 Oct 2025 11:43:59 +0700 Subject: [PATCH 2/2] remove useless comment --- src/libs/Violations/ViolationsUtils.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libs/Violations/ViolationsUtils.ts b/src/libs/Violations/ViolationsUtils.ts index 783da3608b2e..436a5c85ff00 100644 --- a/src/libs/Violations/ViolationsUtils.ts +++ b/src/libs/Violations/ViolationsUtils.ts @@ -320,7 +320,7 @@ const ViolationsUtils = { const hasTaxOutOfPolicyViolation = transactionViolations.some((violation) => violation.name === CONST.VIOLATIONS.TAX_OUT_OF_POLICY); const isDistanceRequest = TransactionUtils.isDistanceRequest(updatedTransaction); const isPerDiemRequest = TransactionUtils.isPerDiemRequest(updatedTransaction); - const isPolicyTrackTaxEnabled = isTaxTrackingEnabled(true, policy, isDistanceRequest, isPerDiemRequest); // we can use isPolicyExpenseChat here + const isPolicyTrackTaxEnabled = isTaxTrackingEnabled(true, policy, isDistanceRequest, isPerDiemRequest); const isTaxInPolicy = Object.keys(policy.taxRates?.taxes ?? {}).some((key) => key === updatedTransaction.taxCode); // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing