diff --git a/src/app/resource/controllers/SummarySheetController.php b/src/app/resource/controllers/SummarySheetController.php index 4bee8e3ccfe50452c9d879417d902cada74c1b01..2898fed31d0cb91aaf689692c6266761807f200e 100755 --- a/src/app/resource/controllers/SummarySheetController.php +++ b/src/app/resource/controllers/SummarySheetController.php @@ -21,6 +21,7 @@ use Endroid\QrCode\QrCode; use Entity\models\EntityModel; use Entity\models\ListInstanceModel; use ExternalSignatoryBook\controllers\MaarchParapheurController; +use Group\controllers\PrivilegeController; use History\models\HistoryModel; use IndexingModel\models\IndexingModelFieldModel; use Note\models\NoteEntityModel; @@ -828,6 +829,13 @@ class SummarySheetController $users = []; foreach ($workflow as $item) { $label = $item['userDisplay'] . ' (' . ($item['mode'] == 'visa' ? _VISA_USER_MIN : _SIGNATORY) . ')'; + if (!empty($item['status'])) { + if ($item['status'] == 'VAL') { + $label .= ', ' . _MAARCH_PARAPHEUR_STATUS_VAL; + } elseif ($item['status'] == 'REF') { + $label .= ', ' . _MAARCH_PARAPHEUR_STATUS_REF; + } + } $users[] = ['user' => $label, 'date' => $item['processDate']]; } @@ -850,6 +858,10 @@ class SummarySheetController } } } elseif ($unit['unit'] == 'workflowHistory') { + if (!PrivilegeController::hasPrivilege(['privilegeId' => 'view_doc_history', 'userId' => $GLOBALS['id']])) { + continue; + } + $historyList = HistoryModel::get([ 'select' => ['record_id', 'event_date', 'user_id', 'info', 'remote_ip', 'count(1) OVER()'], 'where' => ['table_name in (?)', 'event_type like ?', 'record_id = ?'], diff --git a/src/core/lang/lang-en.php b/src/core/lang/lang-en.php index f98f3638043d7cce9275140eddbf04ad234ace79..4617caa109972d0838e1a8ba953e02f2c674c5b0 100755 --- a/src/core/lang/lang-en.php +++ b/src/core/lang/lang-en.php @@ -126,7 +126,6 @@ define('_EMAIL', 'Email'); define('_FAX', 'Fax'); define('_CHRONOPOST', 'Chronopost'); define('_FEDEX', 'Fedex'); -define('_REGISTERED_MAIL', 'Registered mail with acknowledgement of receipt'); define('_COURIER', 'Courier'); define('_NUMERIC_PACKAGE', 'Numeric package'); define('_OTHER', 'Other'); @@ -468,9 +467,6 @@ define("_RETENTION_RULE_FROZEN", "Retention rule frozen"); define("_BINDING_DOCUMENT", "Binding document"); define("_YES", "Yes"); define("_NO", "No"); -define("_RESET_BINDING_DOCUMENT", "Reset binding document"); -define("_SET_BINDING_DOCUMENT", "Mail was set as binding"); -define("_SET_NON_BINDING_DOCUMENT", "Mail was set as non binding"); define("_FREEZE_RETENTION_RULE", "Retention rule frozen"); define("_UNFREEZE_RETENTION_RULE", "Retention rule unfrozen"); @@ -499,3 +495,6 @@ define('_RESET_RECORD_MANAGEMENT', 'Reset record management'); define('_RESET_RECORD_MANAGEMENT_DESC', 'Reset record management'); define('_USER_SKIPPED', 'User skipped'); + +define('_MAARCH_PARAPHEUR_STATUS_VAL', 'Validé'); +define('_MAARCH_PARAPHEUR_STATUS_REF', 'Refusé'); diff --git a/src/core/lang/lang-fr.php b/src/core/lang/lang-fr.php index db3a45f986998d491f624a49746831711c50fdc6..0e552f9d39cf519614845caaf7898a32114b92c5 100755 --- a/src/core/lang/lang-fr.php +++ b/src/core/lang/lang-fr.php @@ -126,7 +126,6 @@ define('_EMAIL', 'Courriel'); define('_FAX', 'Fax'); define('_CHRONOPOST', 'Chronopost'); define('_FEDEX', 'Fedex'); -define('_REGISTERED_MAIL', 'Courrier AR'); define('_COURIER', 'Coursier'); define('_NUMERIC_PACKAGE', 'Pli numérique'); define('_OTHER', 'Autre'); @@ -461,7 +460,6 @@ define("_DOC_ADD_TO_SIGNATORY_BOOK", "Courrier intégré au parapheur électroni define("_DOC_REMOVE_FROM_SIGNATORY_BOOK", "Courrier retiré du parapheur électronique"); define("_DOC_ADD_TO_MAILEVA", "Courrier intégré aux envois Maileva"); define("_DOC_REMOVE_FROM_MAILEVA", "Courrier retiré des envois Maileva"); -define("_RESET_BINDING_DOCUMENT", "Suppression de l'engagement du courrier"); define("_SET_BINDING_DOCUMENT", "Courrier défini comme engageant"); define("_SET_NON_BINDING_DOCUMENT", "Courrier défini comme non engageant"); define("_RETENTION_RULE_FROZEN", "Durée d'utilitée courante gelée"); @@ -469,8 +467,6 @@ define("_BINDING_DOCUMENT", "Document engageant"); define("_YES", "Oui"); define("_NO", "Non"); define("_RESET_BINDING_DOCUMENT", "Paramètre Document engageant supprimé"); -define("_SET_BINDING_DOCUMENT", "Le document a été défini comme engageant"); -define("_SET_NON_BINDING_DOCUMENT", "Le document a été défini comme non engageant"); define("_FREEZE_RETENTION_RULE", "La durée d'utilité courante a été gelée"); define("_UNFREEZE_RETENTION_RULE", "La durée d'utilité courante a été dégelée"); @@ -506,3 +502,6 @@ define('_RESET_RECORD_MANAGEMENT', 'Remise à zéro du circuit d\'archivage'); define('_RESET_RECORD_MANAGEMENT_DESC', 'Remise à zéro du circuit d\'archivage'); define('_USER_SKIPPED', 'Utilisateur passé'); + +define('_MAARCH_PARAPHEUR_STATUS_VAL', 'Validé'); +define('_MAARCH_PARAPHEUR_STATUS_REF', 'Refusé'); diff --git a/src/frontend/app/list/summarySheet/summary-sheet.component.ts b/src/frontend/app/list/summarySheet/summary-sheet.component.ts index ef79599c3331a8c33c3c3449914518f5b23383f6..67d7300eb3ab366c07e8b0829a5f09e124702b02 100644 --- a/src/frontend/app/list/summarySheet/summary-sheet.component.ts +++ b/src/frontend/app/list/summarySheet/summary-sheet.component.ts @@ -7,6 +7,7 @@ import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; import { FunctionsService } from '@service/functions.service'; import { tap } from 'rxjs/operators'; import { DomSanitizer } from '@angular/platform-browser'; +import {PrivilegeService} from '@service/privileges.service'; @Component({ templateUrl: 'summary-sheet.component.html', @@ -121,17 +122,17 @@ export class SummarySheetComponent implements OnInit { enabled: true }, { - id: 'trafficRecords', - unit: 'trafficRecords', - label: this.translate.instant('lang.trafficRecordSummarySheet'), + id: 'workflowHistory', + unit: 'workflowHistory', + label: this.translate.instant('lang.history'), css: 'col-md-4 text-center', desc: [], enabled: true }, { - id: 'workflowHistory', - unit: 'workflowHistory', - label: this.translate.instant('lang.history'), + id: 'trafficRecords', + unit: 'trafficRecords', + label: this.translate.instant('lang.trafficRecordSummarySheet'), css: 'col-md-4 text-center', desc: [], enabled: true @@ -145,6 +146,7 @@ export class SummarySheetComponent implements OnInit { public dialogRef: MatDialogRef<SummarySheetComponent>, @Inject(MAT_DIALOG_DATA) public data: any, public functions: FunctionsService, + private privilegeService: PrivilegeService, private sanitizer: DomSanitizer) { } ngOnInit(): void { @@ -172,6 +174,10 @@ export class SummarySheetComponent implements OnInit { } }) ).subscribe(); + + if (!this.privilegeService.hasCurrentUserPrivilege('view_doc_history')) { + this.dataAvailable = this.dataAvailable.filter((item: any) => item.id !== 'workflowHistory'); + } } drop(event: CdkDragDrop<string[]>) {