From b33a5fb3556e2e5579a6b7b1369892caacdabff9 Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Thu, 17 Aug 2023 19:43:55 +0300 Subject: [PATCH] DM-388 display enable auto analysis in DM --- .../src/app/services/permissions.service.ts | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/apps/red-ui/src/app/services/permissions.service.ts b/apps/red-ui/src/app/services/permissions.service.ts index b5f9550dd..9d38cb118 100644 --- a/apps/red-ui/src/app/services/permissions.service.ts +++ b/apps/red-ui/src/app/services/permissions.service.ts @@ -111,7 +111,7 @@ export class PermissionsService { return this._iqserPermissionsService.has(Roles.excludeIncludeFile) && dossier.isActive; } - canReanalyseFile(file: File | File[], dossier: Dossier): boolean { + canReanalyseFile(file: File | File[], dossier: Dossier) { const files = file instanceof File ? [file] : file; return ( this._iqserPermissionsService.has(Roles.files.reanalyze) && @@ -119,11 +119,12 @@ export class PermissionsService { ); } - canEnableAutoAnalysis(files: File[], dossier: Dossier): boolean { - return ( - this._iqserPermissionsService.has(Roles.files.reanalyze) && - files.reduce((acc, _file) => this.#canEnableAutoAnalysis(_file, dossier) && acc, true) - ); + canEnableAutoAnalysis(files: File[], dossier: Dossier) { + if (!this._iqserPermissionsService.has(Roles.files.reanalyze)) { + return false; + } + + return files.reduce((acc, _file) => this.#canEnableAutoAnalysis(_file, dossier) && acc, true); } canDisableAutoAnalysis(files: File[], dossier: Dossier): boolean { @@ -408,12 +409,15 @@ export class PermissionsService { #canEnableAutoAnalysis(file: File, dossier: Dossier): boolean { const canEnable = dossier.isActive && this.isFileAssignee(file) && !file.isApproved && !!file.lastProcessed; - - if (this.#isDocumine) { - return canEnable && file.processingStatus === ProcessingFileStatuses.ERROR; + if (!canEnable) { + return false; } - return canEnable && file.excludedFromAutomaticAnalysis; + if (this.#isDocumine) { + return file.excludedFromAutomaticAnalysis || file.processingStatus === ProcessingFileStatuses.ERROR; + } + + return file.excludedFromAutomaticAnalysis; } #canDisableAutoAnalysis(file: File, dossier: Dossier): boolean {