Skip to content

Commit 79723e8

Browse files
authored
Merge pull request Expensify#66212 from FitseTLT/fix-creating-violations-for-invoices
Fix - Invoice - In invoice, red dot for category is briefly shown and disappeared.
2 parents 691e120 + 6635a08 commit 79723e8

3 files changed

Lines changed: 6 additions & 24 deletions

File tree

src/components/MoneyRequestConfirmationList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,7 @@ function MoneyRequestConfirmationList({
388388
const isMerchantEmpty = useMemo(() => !iouMerchant || isMerchantMissing(transaction), [transaction, iouMerchant]);
389389
const isMerchantRequired = isPolicyExpenseChat && (!isScanRequest || isEditingSplitBill) && shouldShowMerchant;
390390

391-
const isCategoryRequired = !!policy?.requiresCategory;
391+
const isCategoryRequired = !!policy?.requiresCategory && !isTypeInvoice;
392392

393393
useEffect(() => {
394394
if (shouldDisplayFieldError && didConfirmSplit) {

src/libs/ReportUtils.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1849,12 +1849,11 @@ function pushTransactionViolationsOnyxData(
18491849
const hasDependentTags = hasDependentTagsPolicyUtils(optimisticPolicy, policyTagLists);
18501850

18511851
getAllPolicyReports(policyID).forEach((report) => {
1852-
if (!report?.reportID) {
1852+
const isReportAnInvoice = isInvoiceReport(report);
1853+
if (!report?.reportID || isReportAnInvoice) {
18531854
return;
18541855
}
18551856

1856-
const isReportAnInvoice = isInvoiceReport(report);
1857-
18581857
getReportTransactions(report.reportID).forEach((transaction: Transaction) => {
18591858
const transactionViolations = allTransactionViolations?.[`${ONYXKEYS.COLLECTION.TRANSACTION_VIOLATIONS}${transaction.transactionID}`] ?? [];
18601859

src/libs/actions/IOU.ts

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2379,25 +2379,6 @@ function buildOnyxDataForInvoice(invoiceParams: BuildOnyxDataForInvoiceParams):
23792379
return [optimisticData, successData, failureData];
23802380
}
23812381

2382-
const violationsOnyxData = ViolationsUtils.getViolationsOnyxData(
2383-
transactionParams.transaction,
2384-
[],
2385-
policyParams.policy,
2386-
policyParams.policyTagList ?? {},
2387-
policyParams.policyCategories ?? {},
2388-
hasDependentTags(policyParams.policy, policyParams.policyTagList ?? {}),
2389-
true,
2390-
);
2391-
2392-
if (violationsOnyxData) {
2393-
optimisticData.push(violationsOnyxData);
2394-
failureData.push({
2395-
onyxMethod: Onyx.METHOD.SET,
2396-
key: `${ONYXKEYS.COLLECTION.TRANSACTION_VIOLATIONS}${transactionParams.transaction.transactionID}`,
2397-
value: [],
2398-
});
2399-
}
2400-
24012382
return [optimisticData, successData, failureData];
24022383
}
24032384

@@ -4329,9 +4310,11 @@ function getUpdateMoneyRequestParams(
43294310
}
43304311
const hasModifiedComment = 'comment' in transactionChanges;
43314312

4313+
const isInvoice = isInvoiceReportReportUtils(iouReport);
43324314
if (
43334315
policy &&
43344316
isPaidGroupPolicy(policy) &&
4317+
!isInvoice &&
43354318
updatedTransaction &&
43364319
(hasModifiedTag || hasModifiedCategory || hasModifiedComment || hasModifiedDistanceRate || hasModifiedAmount || hasModifiedCreated)
43374320
) {
@@ -4343,7 +4326,7 @@ function getUpdateMoneyRequestParams(
43434326
policyTagList ?? {},
43444327
policyCategories ?? {},
43454328
hasDependentTags(policy, policyTagList ?? {}),
4346-
isInvoiceReportReportUtils(iouReport),
4329+
isInvoice,
43474330
);
43484331
optimisticData.push(violationsOnyxData);
43494332
failureData.push({

0 commit comments

Comments
 (0)