Skip to content

Commit d884f56

Browse files
committed
Adding the ability to set if a planning is compliance.
1 parent 2a347ea commit d884f56

File tree

13 files changed

+59
-7
lines changed

13 files changed

+59
-7
lines changed

eFormAPI/Plugins/BackendConfiguration.Pn/BackendConfiguration.Pn/Infrastructure/Models/TaskWizard/TaskWizardCreateModel.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,5 @@ public class TaskWizardCreateModel
1919
public int RepeatEvery { get; set; }
2020
public TaskWizardStatuses Status { get; set; }
2121
public List<int> Sites { get; set; } = [];
22+
public bool ComplianceEnabled { get; set; }
2223
}

eFormAPI/Plugins/BackendConfiguration.Pn/BackendConfiguration.Pn/Infrastructure/Models/TaskWizard/TaskWizardTaskModel.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,5 @@ public class TaskWizardTaskModel
2020
public int RepeatEvery { get; set; }
2121
public TaskWizardStatuses Status { get; set; }
2222
public List<int> AssignedTo { get; set; } = [];
23+
public bool ComplianceEnabled { get; set; }
2324
}

eFormAPI/Plugins/BackendConfiguration.Pn/BackendConfiguration.Pn/Services/BackendConfigurationTaskWizardService/BackendConfigurationTaskWizardService.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ public async Task<OperationDataResult<TaskWizardTaskModel>> GetTaskById(int id,
292292
FolderId = x.FolderId,
293293
EformId = (int)x.AreaRule.EformId,
294294
Id = x.Id,
295+
ComplianceEnabled = x.ComplianceEnabled,
295296
AssignedTo = x.PlanningSites
296297
.Where(y => y.WorkflowState != Constants.WorkflowStates.Removed)
297298
.Select(y => y.SiteId)
@@ -524,7 +525,7 @@ public async Task<OperationResult> CreateTask(TaskWizardCreateModel createModel)
524525
RepeatType = (int?)createModel.RepeatType,
525526
Notifications = true,
526527
NotificationsModifiable = false,
527-
ComplianceEnabled = true,
528+
ComplianceEnabled = createModel.ComplianceEnabled,
528529
AreaRulesPlannings =
529530
[
530531
new()
@@ -748,7 +749,7 @@ public async Task<OperationResult> UpdateTask(TaskWizardCreateModel updateModel)
748749
var oldItemPlanningTagId = areaRulePlanning.ItemPlanningTagId;
749750
areaRulePlanning.ItemPlanningTagId = updateModel.ItemPlanningTagId;
750751
areaRulePlanning.UpdatedByUserId = _userService.UserId;
751-
areaRulePlanning.ComplianceEnabled = true;
752+
areaRulePlanning.ComplianceEnabled = updateModel.ComplianceEnabled;
752753
areaRulePlanning.SendNotifications = true;
753754
await areaRulePlanning.Update(_backendConfigurationPnDbContext);
754755

eform-client/src/app/plugins/modules/backend-configuration-pn/models/task-wizard/task-wizard-create.model.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,5 @@ export interface TaskWizardCreateModel {
1313
repeatEvery: number,
1414
status: TaskWizardStatusesEnum,
1515
sites: number[],
16+
complianceEnabled: boolean,
1617
}

eform-client/src/app/plugins/modules/backend-configuration-pn/models/task-wizard/task-wizard-task.model.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ export interface TaskWizardTaskModel {
1515
repeatEvery: number;
1616
status: TaskWizardStatusesEnum;
1717
assignedTo: number[];
18+
complianceEnabled: boolean;
1819
}

eform-client/src/app/plugins/modules/backend-configuration-pn/modules/task-tracker/components/task-tracker-actions/task-tracker-select-worker-modal/task-tracker-select-worker-modal.component.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ export class TaskTrackerSelectWorkerModalComponent implements OnInit, OnDestroy
2828
status: TaskWizardStatusesEnum.Active,
2929
sites: [],
3030
tagIds: [],
31-
translates: []
31+
translates: [],
32+
complianceEnabled: true
3233
};
3334
selectedSite: any;
3435

eform-client/src/app/plugins/modules/backend-configuration-pn/modules/task-tracker/components/task-tracker-container/task-tracker-container.component.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,7 @@ export class TaskTrackerContainerComponent implements OnInit, OnDestroy {
244244
tagIds: data.model.tags,
245245
translates: data.model.translations,
246246
itemPlanningTagId: data.model.itemPlanningTagId,
247+
complianceEnabled: data.model.complianceEnabled,
247248
});
248249
this.propertyService.getLinkedSites(data.model.propertyId, true)
249250
.subscribe((sites) => {
@@ -287,6 +288,7 @@ export class TaskTrackerContainerComponent implements OnInit, OnDestroy {
287288
tagIds: data.model.tags,
288289
translates: data.model.translations,
289290
itemPlanningTagId: data.model.itemPlanningTagId,
291+
complianceEnabled: data.model.complianceEnabled,
290292
});
291293
this.updateModal.componentInstance.typeahead.emit(data.model.eformName);
292294
this.updateModal.componentInstance.planningTagsModal = this.planningTagsModal;
@@ -329,6 +331,7 @@ export class TaskTrackerContainerComponent implements OnInit, OnDestroy {
329331
tagIds: updateModel.tagIds,
330332
translates: data.model.translations,
331333
itemPlanningTagId: data.model.itemPlanningTagId,
334+
complianceEnabled: updateModel.complianceEnabled,
332335
}, this.updateModal);
333336
});
334337
}

eform-client/src/app/plugins/modules/backend-configuration-pn/modules/task-wizard/components/task-wizard-actions/task-wizard-create-modal/task-wizard-create-modal.component.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,15 @@ <h3 mat-dialog-title>{{ 'Create new task' | translate }}</h3>
1010
>
1111
{{ 'Status' | translate }}
1212
</mat-slide-toggle>
13+
<mat-slide-toggle *ngIf="selectCurrentUserIsAdmin$ | async"
14+
class="p-2"
15+
color="primary"
16+
id="complianceEnabledToggle"
17+
formControlName="complianceEnabled"
18+
(change)="changeComplianceEnabled($event.checked)"
19+
>
20+
{{ 'Compliance' | translate }}
21+
</mat-slide-toggle>
1322

1423
<div class="d-flex flex-row">
1524
<mat-form-field class="p-2">

eform-client/src/app/plugins/modules/backend-configuration-pn/modules/task-wizard/components/task-wizard-actions/task-wizard-create-modal/task-wizard-create-modal.component.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import {Subscription, take} from 'rxjs';
2828
import {Overlay} from '@angular/cdk/overlay';
2929
import {PlanningTagsComponent} from 'src/app/plugins/modules/items-planning-pn/modules/plannings/components';
3030
import {AuthStateService} from 'src/app/common/store';
31-
import {selectAuthIsAuth} from 'src/app/state/auth/auth.selector';
31+
import {selectAuthIsAuth, selectCurrentUserIsAdmin} from 'src/app/state/auth/auth.selector';
3232
import {Store} from '@ngrx/store';
3333

3434
@AutoUnsubscribe()
@@ -75,9 +75,11 @@ export class TaskWizardCreateModalComponent implements OnInit, OnDestroy {
7575
status: TaskWizardStatusesEnum.Active,
7676
sites: [],
7777
tagIds: [],
78-
translates: []
78+
translates: [],
79+
complianceEnabled: true
7980
};
8081
public isAuth$ = this.store.select(selectAuthIsAuth);
82+
public selectCurrentUserIsAdmin$ = this.store.select(selectCurrentUserIsAdmin);
8183

8284
private folderSelectedSub$: Subscription;
8385
private repeatTypeSub$: Subscription;
@@ -193,6 +195,7 @@ export class TaskWizardCreateModalComponent implements OnInit, OnDestroy {
193195
tagIds: [this.model?.tagIds || []],
194196
sites: [this.model?.sites || []],
195197
folderId: [this.model?.folderId],
198+
complianceEnabled: [this.model?.complianceEnabled],
196199
translates: this.fb.array(
197200
this.model.translates.map(t => this.fb.group({
198201
languageId: [t.languageId],
@@ -371,4 +374,11 @@ export class TaskWizardCreateModalComponent implements OnInit, OnDestroy {
371374
}
372375

373376
protected readonly RepeatTypeEnum = RepeatTypeEnum;
377+
378+
changeComplianceEnabled(checked: boolean) {
379+
this.taskForm.patchValue({
380+
complianceEnabled: checked,
381+
});
382+
this.model.complianceEnabled = !!checked;
383+
}
374384
}

eform-client/src/app/plugins/modules/backend-configuration-pn/modules/task-wizard/components/task-wizard-actions/task-wizard-update-modal/task-wizard-update-modal.component.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,15 @@ <h3 mat-dialog-title>{{ 'Edit task' | translate }}</h3>
88
(change)="changeStatus($event.checked)">
99
{{ 'Status' | translate }}
1010
</mat-slide-toggle>
11+
<mat-slide-toggle *ngIf="selectCurrentUserIsAdmin$ | async"
12+
class="p-2"
13+
color="primary"
14+
id="complianceEnabledToggle"
15+
formControlName="complianceEnabled"
16+
(change)="changeComplianceEnabled($event.checked)"
17+
>
18+
{{ 'Compliance' | translate }}
19+
</mat-slide-toggle>
1120
<div class="d-flex flex-row">
1221
<mat-form-field class="p-3">
1322
<mat-label>{{ 'Location' | translate }}</mat-label>

0 commit comments

Comments
 (0)