浏览代码

Merge branch 'master' of http://209.50.56.224/git/ITTEC/SistemaMantenimiento

JeanBenitez 1 年之前
父节点
当前提交
9198ba4851

+ 21 - 0
sistema-mantenimiento-front/src/app/components/corrective-maintenance/operations-management/corrective-order-form/corrective-order-form.component.ts

@@ -125,6 +125,12 @@ export class CorrectiveOrderFormComponent implements OnInit {
   @ViewChild('file') private uploader?: ElementRef;
   filteredClassifications?: Observable<string[]>;
 
+  responsibleAtentionUserEnabled: boolean;
+  workTypesClassificationEnabled: boolean;
+  failDateTimeCaptureEnabled: boolean;
+  materialReservationEnabled: boolean;
+  securityManagementEnabled: boolean;
+
   constructor(
     @Inject(DOCUMENT) private _document: Document,
     private _formsService: DynamicFormService,
@@ -185,6 +191,12 @@ export class CorrectiveOrderFormComponent implements OnInit {
 
     this.symptomsDataSource = new MatTableDataSource();
     this.resourcesDataSource = new MatTableDataSource();
+
+    this.responsibleAtentionUserEnabled = true;
+    this.workTypesClassificationEnabled = true;
+    this.failDateTimeCaptureEnabled = true;
+    this.materialReservationEnabled = true;
+    this.securityManagementEnabled = true;
   }
 
   ngOnInit(): void {
@@ -653,6 +665,15 @@ export class CorrectiveOrderFormComponent implements OnInit {
           
           this.orderFormGroup.controls['personalControl'].setValue(staffVal);
         }
+        
+        let permissionsEnc = localStorage.getItem('permisos');
+        let permissionsDec = '';
+        if(permissionsEnc == '' || permissionsEnc == undefined || permissionsEnc == null){
+          permissionsDec = '[]';
+        }else{
+          permissionsDec = await this._encService.decrypt(permissionsEnc!);
+        }
+        console.log(permissionsDec);
       }
 
       this.isLoading = false;

+ 4 - 4
sistema-mantenimiento-front/src/app/components/corrective-maintenance/operations-management/operations-management.component.html

@@ -22,11 +22,11 @@
           </mat-form-field>
           <div class="override-buttons">
             <button mat-raised-button color="primary" class="override_no_shadow mr-10 animated fadeIn" (click)="openWorkOrder('nuevo', null)" 
-            *ngIf="!btnSmall">
+            *ngIf="!btnSmall" [disabled]="!workOrderGenerationEnabled">
               <mat-icon>add</mat-icon> Registrar orden de trabajo
             </button>
             <button mat-mini-fab color="primary" class="override_no_shadow mr-10 animated fadeIn" (click)="openWorkOrder('nuevo', null)" 
-            *ngIf="btnSmall" matTooltip="Registrar orden de trabajo">
+            *ngIf="btnSmall" matTooltip="Registrar orden de trabajo" [disabled]="!workOrderGenerationEnabled">
             <mat-icon>add</mat-icon>
             </button>
             <button mat-mini-fab class="cyan_dark_background white_font override_no_shadow mr-10" matTooltip="Actualizar datos" (click)="getworkOrders(false)">
@@ -122,7 +122,7 @@
                   <mat-icon>attach_money</mat-icon>
                   <span>Asignar análisis de costos</span>
                 </button>
-                <button mat-menu-item *ngIf="row.ESTADO == 'Pendiente'" (click)="openTransferDialog(row.ID_ORDEN)">
+                <button mat-menu-item *ngIf="row.ESTADO == 'Pendiente'" (click)="openTransferDialog(row.ID_ORDEN)" [disabled]="!workOrderTransferEnabled">
                   <mat-icon>change_circle</mat-icon>
                   <span>Traspasar orden</span>
                 </button>
@@ -134,7 +134,7 @@
                   <mat-icon>close</mat-icon>
                   <span>Rechazar orden</span>
                 </button>
-                <button mat-menu-item *ngIf="row.ESTADO == 'Validado'" (click)="startOrder(row.ID_ORDEN)">
+                <button mat-menu-item *ngIf="row.ESTADO == 'Validado'" (click)="startOrder(row.ID_ORDEN)" [disabled]="!manualActivationEnabled">
                   <mat-icon>play_arrow</mat-icon>
                   <span>Iniciar ejecución</span>
                 </button>

+ 29 - 5
sistema-mantenimiento-front/src/app/components/corrective-maintenance/operations-management/operations-management.component.ts

@@ -47,7 +47,7 @@ export class OperationsManagementComponent implements OnInit {
   operationsConsultEnabled: boolean;
   manualActivationEnabled: boolean;
   workOrderGenerationEnabled: boolean;
-  workOrderTransfer: boolean;
+  workOrderTransferEnabled: boolean;
 
   constructor(
     private _activatedRoute: ActivatedRoute,
@@ -73,7 +73,7 @@ export class OperationsManagementComponent implements OnInit {
     this.operationsConsultEnabled = true;
     this.manualActivationEnabled = true;
     this.workOrderGenerationEnabled = true;
-    this.workOrderTransfer = true;
+    this.workOrderTransferEnabled = true;
   }
 
   ngOnInit(): void {
@@ -125,10 +125,19 @@ export class OperationsManagementComponent implements OnInit {
                 }
 
                 let manualActivationEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F03ACMA');
-                console.log(manualActivationEnabled);
+                if(manualActivationEnabled.length > 0){
+                  this.manualActivationEnabled = manualActivationEnabled[0].access > 0;
+                }
                 
-                //workOrderGenerationEnabled
-                //workOrderTransfer
+                let workOrderGenerationEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F04GEOT');
+                if(workOrderGenerationEnabled.length > 0){
+                  this.workOrderGenerationEnabled = workOrderGenerationEnabled[0].access > 0;
+                }
+  
+                let workOrderTransferEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F06TROT');
+                if(workOrderTransferEnabled.length > 0){
+                  this.workOrderTransferEnabled = workOrderTransferEnabled[0].access > 0;
+                }
               }
             }
           }
@@ -254,6 +263,21 @@ export class OperationsManagementComponent implements OnInit {
                   this.operationsConsultEnabled = operationsConsultEnabled[0].access > 0;
                 }
               }
+
+              let manualActivationEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F03ACMA');
+              if(manualActivationEnabled.length > 0){
+                this.manualActivationEnabled = manualActivationEnabled[0].access > 0;
+              }
+              
+              let workOrderGenerationEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F04GEOT');
+              if(workOrderGenerationEnabled.length > 0){
+                this.workOrderGenerationEnabled = workOrderGenerationEnabled[0].access > 0;
+              }
+
+              let workOrderTransferEnabled = subPerm[0].children.filter(item => item.id == 'S002V01F06TROT');
+              if(workOrderTransferEnabled.length > 0){
+                this.workOrderTransferEnabled = workOrderTransferEnabled[0].access > 0;
+              }
             }
           }
         }