Skip to content

Commit c3a7ec0

Browse files
committed
DRY eng status change check
1 parent 50561f8 commit c3a7ec0

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed

src/components/engagement/engagement.service.ts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -172,17 +172,16 @@ export class EngagementService {
172172
)) as UnsecuredDto<LanguageEngagement>;
173173
const object = this.secure(previous, session);
174174

175-
if (input.status && input.status !== previous.status) {
175+
const { methodology, ...maybeChanges } = input;
176+
const changes = this.repo.getActualLanguageChanges(object, maybeChanges);
177+
if (changes.status) {
176178
await this.engagementRules.verifyStatusChange(
177179
input.id,
178180
session,
179-
input.status,
181+
changes.status,
180182
changeset,
181183
);
182184
}
183-
184-
const { methodology, ...maybeChanges } = input;
185-
const changes = this.repo.getActualLanguageChanges(object, maybeChanges);
186185
this.privileges
187186
.for(session, LanguageEngagement, object)
188187
.verifyChanges(changes);
@@ -226,16 +225,15 @@ export class EngagementService {
226225
)) as UnsecuredDto<InternshipEngagement>;
227226
const object = this.secure(previous, session);
228227

229-
if (input.status && input.status !== previous.status) {
228+
const changes = this.repo.getActualInternshipChanges(object, input);
229+
if (changes.status) {
230230
await this.engagementRules.verifyStatusChange(
231231
input.id,
232232
session,
233-
input.status,
233+
changes.status,
234234
changeset,
235235
);
236236
}
237-
238-
const changes = this.repo.getActualInternshipChanges(object, input);
239237
this.privileges
240238
.for(session, InternshipEngagement, object)
241239
.verifyChanges(changes, { pathPrefix: 'engagement' });

0 commit comments

Comments
 (0)