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 ce298475b..ab757507f 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 @@ -51,7 +51,7 @@ export class AssignReviewerApproverDialogComponent { get userOptions() { const unassignUser = this._canUnassignFiles && this.data.withUnassignedOption ? [undefined] : []; - if (!this.permissionsService.canAssignUser(this.data.files, this.dossier)) { + if (this.dossier.hasReviewers && !this.permissionsService.canAssignUser(this.data.files, this.dossier)) { return [...unassignUser]; } return this.mode === 'reviewer' ? [...this.dossier.memberIds, ...unassignUser] : [...this.dossier.approverIds, ...unassignUser]; @@ -91,12 +91,16 @@ export class AssignReviewerApproverDialogComponent { } private get _user(): string { - let user: string = this._uniqueReviewers.size === 1 ? this._uniqueReviewers.values().next().value : this.userService.currentUser.id; - user = this.userOptions.indexOf(user) >= 0 ? user : this.userOptions[0]; - if (this.data.withCurrentUserAsDefault && this.userOptions.includes(this.userService.currentUser.id)) { - user = this.userService.currentUser.id; + const userOptions = this.userOptions; + + if (this.data.withCurrentUserAsDefault && userOptions.includes(this.userService.currentUser.id)) { + return this.userService.currentUser.id; } - return user; + + const uniqueReviewers = [...this._uniqueReviewers.values()]; + const user = uniqueReviewers.length === 1 ? uniqueReviewers[0] : this.userService.currentUser.id; + + return userOptions.indexOf(user) >= 0 ? userOptions[userOptions.indexOf(user)] : user; } async save() {