Skip to content

Commit 2fba5fb

Browse files
committed
Only sync budget records on project update when there is a date change
Previously every project update was listing partnerships & budget records when we knew ahead of time that the records were in sync because there were no date changes
1 parent 64b3a71 commit 2fba5fb

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

src/components/budget/handlers/sync-budget-records-to-funding-partners.handler.ts

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,17 @@ export class SyncBudgetRecordsToFundingPartners
7070
// Partnership was not funding, so do nothing.
7171
return;
7272
}
73+
if (
74+
event instanceof ProjectUpdatedEvent &&
75+
event.changes.mouStart === undefined &&
76+
event.changes.mouEnd === undefined
77+
) {
78+
// Project dates haven't changed, so do nothing.
79+
return;
80+
}
7381

74-
const projectId = await this.determineProjectId(event);
75-
const changeset = await this.determineChangeset(event);
82+
const projectId = this.determineProjectId(event);
83+
const changeset = this.determineChangeset(event);
7684

7785
// Fetch budget & only continue if it is pending
7886
const budget = await this.budgetRepo.listRecordsForSync(
@@ -88,7 +96,7 @@ export class SyncBudgetRecordsToFundingPartners
8896
}
8997
}
9098

91-
private async determineProjectId(event: SubscribedEvent) {
99+
private determineProjectId(event: SubscribedEvent) {
92100
if (event instanceof ProjectUpdatedEvent) {
93101
return event.updated.id;
94102
}
@@ -98,7 +106,7 @@ export class SyncBudgetRecordsToFundingPartners
98106
return event.partnership.project.id;
99107
}
100108

101-
private async determineChangeset(event: SubscribedEvent) {
109+
private determineChangeset(event: SubscribedEvent) {
102110
if (event instanceof ProjectUpdatedEvent) {
103111
return event.updated.changeset;
104112
}

0 commit comments

Comments
 (0)