diff --git a/apps/red-ui/src/app/modules/shared-dossiers/dialogs/assign-reviewer-approver-dialog/assign-reviewer-approver-dialog.component.ts b/apps/red-ui/src/app/modules/shared-dossiers/dialogs/assign-reviewer-approver-dialog/assign-reviewer-approver-dialog.component.ts index ab757507f..295e3bab0 100644 --- a/apps/red-ui/src/app/modules/shared-dossiers/dialogs/assign-reviewer-approver-dialog/assign-reviewer-approver-dialog.component.ts +++ b/apps/red-ui/src/app/modules/shared-dossiers/dialogs/assign-reviewer-approver-dialog/assign-reviewer-approver-dialog.component.ts @@ -46,15 +46,27 @@ export class AssignReviewerApproverDialogComponent { } get selectedUser(): string { - return this.form.get('user').value; + const value = this.form.get('user').value; + return value === 'undefined' ? undefined : value; } get userOptions() { - const unassignUser = this._canUnassignFiles && this.data.withUnassignedOption ? [undefined] : []; - if (this.dossier.hasReviewers && !this.permissionsService.canAssignUser(this.data.files, this.dossier)) { + const unassignUser = this._canUnassignFiles && this.data.withUnassignedOption ? ['undefined'] : []; + const cannotAssignUser = !this.permissionsService.canAssignUser(this.data.files, this.dossier); + + if (this.mode === 'reviewer') { + if (this.dossier.hasReviewers && cannotAssignUser) { + return [...unassignUser]; + } + + return [...this.dossier.memberIds, ...unassignUser]; + } + + if (this.dossier.approverIds.length > 1 && cannotAssignUser) { return [...unassignUser]; } - return this.mode === 'reviewer' ? [...this.dossier.memberIds, ...unassignUser] : [...this.dossier.approverIds, ...unassignUser]; + + return [...this.dossier.approverIds, ...unassignUser]; } get changed(): boolean { diff --git a/libs/common-ui b/libs/common-ui index 61ae1e8ba..4c0e6d1be 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 61ae1e8bac67338c61f590f1a785d5a26bb1613b +Subproject commit 4c0e6d1beda5b9633e73e5cafd59b5dcf76c5428