From f34b6ce743bbc08425ed75569a1b56c2060484e2 Mon Sep 17 00:00:00 2001 From: Timo Bejan Date: Tue, 23 Nov 2021 12:12:50 +0200 Subject: [PATCH] status / assignee updates --- .../file-preview-screen/file-preview-screen.component.ts | 8 +++++++- .../dossier/shared/services/file-assign.service.ts | 9 ++++++++- .../src/app/services/entity-services/files.service.ts | 6 ++++++ apps/red-ui/src/assets/i18n/en.json | 8 ++++---- 4 files changed, 25 insertions(+), 6 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts index b6b862225..e34b01ed0 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts @@ -492,7 +492,13 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni const { dossierId, fileId, filename } = file; this._loadingService.start(); - await this._filesService.setReviewerFor([fileId], dossierId, assigneeId).toPromise(); + if (!assigneeId) { + await this._filesService.setUnassigned([fileId], dossierId).toPromise(); + } else if (file.isUnderReview) { + await this._filesService.setReviewerFor([fileId], dossierId, assigneeId).toPromise(); + } else if (file.isUnderApproval) { + await this._filesService.setUnderApprovalFor([fileId], dossierId, assigneeId).toPromise(); + } this._loadingService.stop(); this._toaster.info(_('assignment.reviewer'), { params: { reviewerName, filename } }); diff --git a/apps/red-ui/src/app/modules/dossier/shared/services/file-assign.service.ts b/apps/red-ui/src/app/modules/dossier/shared/services/file-assign.service.ts index 5b9d96da4..0e1de1f66 100644 --- a/apps/red-ui/src/app/modules/dossier/shared/services/file-assign.service.ts +++ b/apps/red-ui/src/app/modules/dossier/shared/services/file-assign.service.ts @@ -82,7 +82,14 @@ export class FileAssignService { private async _makeAssignFileRequest(userId: string, mode: 'reviewer' | 'approver', files: File[]) { this._loadingService.start(); try { - if (mode === 'reviewer') { + if (!userId) { + await this._filesService + .setUnassigned( + files.map(f => f.fileId), + files[0].dossierId, + ) + .toPromise(); + } else if (mode === 'reviewer') { await this._filesService .setReviewerFor( files.map(f => f.fileId), diff --git a/apps/red-ui/src/app/services/entity-services/files.service.ts b/apps/red-ui/src/app/services/entity-services/files.service.ts index c694e42a7..4064d2b0d 100644 --- a/apps/red-ui/src/app/services/entity-services/files.service.ts +++ b/apps/red-ui/src/app/services/entity-services/files.service.ts @@ -35,6 +35,12 @@ export class FilesService extends EntitiesService { ); } + @Validate() + setUnassigned(@RequiredParam() fileIds: List, @RequiredParam() dossierId: string) { + const url = `${this._defaultModelPath}/set-assignee/${dossierId}/bulk`; + return this._post(fileIds, url).pipe(switchMapTo(this.loadAll(dossierId))); + } + @Validate() setUnderApprovalFor(@RequiredParam() fileIds: List, @RequiredParam() dossierId: string, asigneeId: string) { const url = `${this._defaultModelPath}/under-approval/${dossierId}/bulk`; diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index 55409d14c..4e38c9def 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -405,7 +405,7 @@ }, "assign-file-to-me": { "question": "This document is currently reviewed by someone else. Do you want to become the reviewer and assign yourself to this document?", - "title": "Re-assign reviewer" + "title": "Re-assign user" }, "compare-file": { "question": "Warning!

Number of pages does not match, current document has {currentDocumentPageCount} page(s). Uploaded document has {compareDocumentPageCount} page(s).

Do you wish to proceed?", @@ -666,7 +666,7 @@ "approve-disabled": "File can only be approved once it has been analysed with the latest dictionaries and all suggestions have been processed.", "assign-approver": "Assign Approver", "assign-me": "Assign To Me", - "assign-reviewer": "Assign Reviewer", + "assign-reviewer": "Assign User", "bulk": { "delete": "Delete Documents", "reanalyse": "Analyze Documents" @@ -1026,8 +1026,8 @@ }, "file-preview": { "assign-me": "Assign to me", - "assign-reviewer": "Assign Reviewer", - "change-reviewer": "Change Reviewer", + "assign-reviewer": "Assign User", + "change-reviewer": "Change User", "delta": "Delta", "delta-tooltip": "Delta View shows only the changes since last re-analysis. This view is only available if there is at least 1 change", "document-info": "Your Document Info lives here. This includes metadata required on each document.",