| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355 |
- <main class="main-container animated fadeIn" (window:resize)="onResize()">
- <header id="navigation" class="btn-navigate mb-8" [style]="changeOnTab && cardSmall ? 'width: calc(100% - 40%)!important' : ''">
- <div class="prev-page prevent-select indigo_primary_background
- mat-elevation-z8" matRipple [routerLink]="['/sam/GPRS']">
- <mat-icon style="color: white">arrow_back</mat-icon>
- <div class="page-name ml-4">Menú de Gestión del Personal</div>
- </div>
- </header>
- <mat-card class="override-card override-elevation-z8" [style]="changeOnTab && cardSmall ? 'width: calc(100% - 40%)!important' : ''">
-
- <mat-tab-group style="overflow: auto;" #tabGroup (selectedTabChange)="tabChange($event)">
- <mat-tab label="Subcontratistas" >
- <section class="override-section">
- <nav class="override-nav">
- <mat-card-title class="mat-card-title centre">Lista de
- Subcontratistas</mat-card-title>
- <div class="override-actions">
- <mat-form-field appearance="outline" class="w-300p
- mr-8">
- <mat-label>Buscador</mat-label>
- <input matInput [(ngModel)]="txtBuscadorSubcontratists"
- (keyup)="applyFilterSubcontratists($event,'INP')"
- placeholder="Ingrese la palabra a buscar" />
- <mat-icon *ngIf="txtBuscadorSubcontratists.length === 0"
- matSuffix>search</mat-icon>
- <mat-icon *ngIf="txtBuscadorSubcontratists.length> 0"
- class="clickable" matTooltip="Eliminar
- filtro"
- (click)="applyFilterSubcontratists('', 'EST')" matSuffix>close</mat-icon>
- </mat-form-field>
- <div class="override-buttons">
- <button mat-raised-button color="primary"
- matTooltip="Registrar Subcontratista"
- [disabled]="isLoading" *ngIf="!btnSmall"
- class="override-no-shadow mr-10"
- (click)="openDialog('REG')">
- <mat-icon>add</mat-icon> Nuevo
- </button>
- <button mat-mini-fab color="primary"
- matTooltip="Registrar Subcontratista"
- [disabled]="isLoading" *ngIf="btnSmall"
- class="override-no-shadow mr-8"
- (click)="openDialog('REG')">
- <mat-icon>add</mat-icon>
- </button>
- <button mat-mini-fab color="info"
- (click)="getSubcontratists()"
- [disabled]="isLoading"
- matTooltip="Actualizar
- Datos" class="override-no-shadow mr-10">
- <mat-icon>refresh</mat-icon>
- </button>
- </div>
- </div>
- </nav>
- <!-- ALERTAS - CARGANDO FORMULARIOS -->
- <div>
- <div class="is-loading animated fadeIn fast"
- *ngIf="isLoading">
- <mat-spinner align="center"></mat-spinner>
- <h3>Cargando datos ...</h3>
- </div>
- <mat-progress-bar mode="indeterminate"
- *ngIf="isLoadingForm"></mat-progress-bar>
- </div>
- <!-- CONTENEDOR DE LA TABLA -->
- <div class="override-table" style="height: calc(100% - 66px)!important;">
- <!-- TABLA -->
- <table mat-table [dataSource]="dataSourceSubcontratists!" matSort
- class="animated fadeIn" [style.display]="isLoading ?
- 'none' : 'revert'">
- <ng-container matColumnDef="NAME">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Nombre</th>
- <td mat-cell *matCellDef="let element">{{
- element.NAME }}</td>
- </ng-container>
- <ng-container matColumnDef="INTERVENTIONS_COUNT">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Cantidad
- Intervenciones</th>
- <td mat-cell *matCellDef="let element">{{
- element.INTERVENTIONS_COUNT }}</td>
- </ng-container>
- <ng-container matColumnDef="UPDATE_DATE">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Fecha
- Registro</th>
- <td mat-cell *matCellDef="let element">
- {{element.UPDATE_DATE != null ? element.UPDATE_DATE : element.REGISTER_DATE}}
- </td>
- </ng-container>
- <ng-container matColumnDef="UPDATED_BY_USER">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Usuario
- Registró</th>
- <td mat-cell *matCellDef="let element">
- {{element.UPDATED_BY_USER != null ? element.UPDATED_BY_USER : element.REGISTERED_BY_USER}}
- </td>
- </ng-container>
- <ng-container matColumnDef="STATUS">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Estado</th>
- <td mat-cell *matCellDef="let element">
- <mat-chip-listbox>
- <mat-chip
- class="teal_primary_background"
- selected *ngIf="element.STATUS ===
- 'Activo'"
- (click)="applyFilterSubcontratists(element.STATUS,
- 'EST')"> {{ element.STATUS }}
- </mat-chip>
- <mat-chip class="red_dark_background"
- selected
- *ngIf="element.STATUS ===
- 'Eliminado'"
- (click)="applyFilterSubcontratists(element.STATUS,
- 'EST')"> {{ element.STATUS }}
- </mat-chip>
- </mat-chip-listbox>
- </td>
- </ng-container>
- <ng-container matColumnDef="ACCIONES">
- <th mat-header-cell *matHeaderCellDef>Acciones</th>
- <td mat-cell *matCellDef="let element">
- <button mat-mini-fab color="accent"
- *ngIf="btnSmall && element.STATUS !== 'Eliminado'"
- [disabled]="isLoading" [matMenuTriggerFor]="menu"
- #menuTrigger class="override-no-shadow">
- <mat-icon>settings</mat-icon>
- </button>
- <button mat-mini-fab color="success" class="override-no-shadow" [disabled]="isLoading"
- (click)="openDialog('ACT', element)" *ngIf="btnSmall && element.STATUS == 'Eliminado'">
- <mat-icon>restore_from_trash</mat-icon>
- </button>
- <mat-menu #menu="matMenu">
- <button mat-menu-item
- (click)="openDialog('DET',
- element)">
- <mat-icon>visibility</mat-icon> Detalles
- </button>
- <button mat-menu-item
- (click)="openDialog('UPD',
- element)">
- <mat-icon>edit</mat-icon> Editar
- </button>
- <button mat-menu-item
- (click)="openDialog('DEL',
- element)">
- <mat-icon>delete</mat-icon> Eliminar
- </button>
- </mat-menu>
- <div *ngIf="!btnSmall">
- <button
- mat-mini-fab
- color="primary"
- class="override-no-shadow mr-4"
- [disabled]="element.STATUS ==
- 'Eliminado'
- || isLoadingForm"
- matTooltip="Ver Detalles"
- (click)="openDialog('DET',
- element)">
- <mat-icon>visibility</mat-icon>
- </button>
- <button
- mat-mini-fab
- color="accent"
- class="override-no-shadow mr-4"
- [disabled]="element.STATUS ==
- 'Eliminado'
- || isLoadingForm"
- matTooltip="Editar Subcontratista"
- (click)="openDialog('UPD',
- element)">
- <mat-icon>edit</mat-icon>
- </button>
- <button
- mat-mini-fab
- color="warn"
- class="override-no-shadow mr-4"
- [disabled]="isLoadingForm" *ngIf="element.STATUS == 'Activo'"
- matTooltip="Eliminar Subcontratista"
- (click)="openDialog('DEL',
- element)">
- <mat-icon>delete</mat-icon>
- </button>
- <button
- mat-mini-fab
- color="success"
- class="override-no-shadow mr-4"
- [disabled]="isLoadingForm" *ngIf="element.STATUS == 'Eliminado'"
- matTooltip="Activar Subcontratista"
- (click)="openDialog('ACT',
- element)">
- <mat-icon>restore_from_trash</mat-icon>
- </button>
- </div>
- </td>
- </ng-container>
- <tr mat-header-row
- *matHeaderRowDef="displayedColumnsSubcontratists"></tr>
- <tr mat-row *matRowDef="let row; columns:
- displayedColumnsSubcontratists"></tr>
- <tr class="mat-row" *matNoDataRow>
- <td class="mat-cell p-80 centre" colspan="12">
- <object data="assets/img/empty_data.svg"
- width="300"></object>
- <h2>Sin datos</h2>
- </td>
- </tr>
- </table>
- </div>
- </section>
-
- </mat-tab>
- <mat-tab label="Contratos">
-
- <section class="override-section">
- <nav>
- <mat-card-title class="mat-card-title centre">Lista de
- Contratos por Subcontratista</mat-card-title>
- <div class="override-actions">
- <mat-form-field appearance="outline" class="w-300p
- mr-8">
- <mat-label>Buscador</mat-label>
- <input matInput [(ngModel)]="txtBuscadorContracts"
- (keyup)="applyFilterContracts($event,'INP')"
- placeholder="Ingrese la palabra a buscar" />
- <mat-icon *ngIf="txtBuscadorContracts.length === 0"
- matSuffix>search</mat-icon>
- <mat-icon *ngIf="txtBuscadorContracts.length> 0"
- class="clickable" matTooltip="Eliminar
- filtro"
- (click)="applyFilterContracts('', 'EST')" matSuffix>close</mat-icon>
- </mat-form-field>
- <div class="override-buttons">
- <button mat-mini-fab color="info"
- (click)="getContractsBySubcontratists()"
- [disabled]="isLoading"
- matTooltip="Actualizar
- Datos" class="override-no-shadow mr-10">
- <mat-icon>refresh</mat-icon>
- </button>
- </div>
- </div>
- </nav>
- <!-- ALERTAS - CARGANDO FORMULARIOS -->
- <div>
- <div class="is-loading animated fadeIn fast"
- *ngIf="isLoading">
- <mat-spinner align="center"></mat-spinner>
- <h3>Cargando datos ...</h3>
- </div>
- <mat-progress-bar mode="indeterminate"
- *ngIf="isLoadingForm"></mat-progress-bar>
- </div>
- <!-- CONTENEDOR DE LA TABLA -->
- <div class="override-table" style="height: calc(100% - 66px)!important;">
- <!-- TABLA -->
- <table mat-table [dataSource]="dataSourceContracts!" matSort #MatSort2="matSort"
- class="animated fadeIn" [style.display]="isLoading ?
- 'none' : 'revert'">
- <ng-container matColumnDef="NAME">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Nombre</th>
- <td mat-cell *matCellDef="let element">{{
- element.NAME }}</td>
- </ng-container>
- <ng-container matColumnDef="CONTRACTS_COUNT">
- <th mat-header-cell *matHeaderCellDef
- mat-sort-header>Cantidad
- Contratos</th>
- <td mat-cell *matCellDef="let element">{{
- element.CONTRACTS_COUNT }}</td>
- </ng-container>
- <ng-container matColumnDef="ACCIONES">
- <th mat-header-cell *matHeaderCellDef>Acciones</th>
- <td mat-cell *matCellDef="let element">
- <button mat-mini-fab color="accent"
- *ngIf="btnSmall"
- [disabled]="isLoading" [matMenuTriggerFor]="menu"
- #menuTrigger class="override-no-shadow">
- <mat-icon>settings</mat-icon>
- </button>
- <mat-menu #menu="matMenu">
- <button mat-menu-item
- (click)="openDialog('HIS',
- element)">
- <mat-icon>visibility</mat-icon> Historial
- </button>
- <!-- Pendiente por modulo gestión de adquisiciónes -->
- <button mat-menu-item
- (click)="openDialog('PRO')">
- <mat-icon>local_shipping</mat-icon> Proveedores
- </button>
- </mat-menu>
- <div *ngIf="!btnSmall">
- <button
- mat-mini-fab
- color="primary"
- class="override-no-shadow mr-4"
- [disabled]="isLoadingForm"
- matTooltip="Ver Historial"
- (click)="openDialog('HIS',
- element)">
- <mat-icon>visibility</mat-icon>
- </button>
- <!-- Pendiente por modulo gestión de adquisiciónes -->
- <button
- mat-mini-fab
- color="accent"
- class="override-no-shadow mr-4"
- [disabled]="isLoadingForm"
- (click)="openDialog('PRO')"
- matTooltip="Ver Ficha Proveedores">
- <mat-icon>local_shipping</mat-icon>
- </button>
- </div>
- </td>
- </ng-container>
- <tr mat-header-row
- *matHeaderRowDef="displayedColumnsContracts"></tr>
- <tr mat-row *matRowDef="let row; columns:
- displayedColumnsContracts"></tr>
- <tr class="mat-row" *matNoDataRow>
- <td class="mat-cell p-80 centre" colspan="12">
- <object data="assets/img/empty_data.svg"
- width="300"></object>
- <h2>Sin datos</h2>
- </td>
- </tr>
- </table>
- </div>
- </section>
-
- </mat-tab>
- </mat-tab-group>
- <!-- PAGINADOR -->
- <mat-paginator [pageSizeOptions]="[10, 50, 100]" class="override-paginator" [style.display]="changeOnTab ?
- 'none' : 'revert'"></mat-paginator>
- <mat-paginator [pageSizeOptions]="[10, 50, 100]" #MatPaginator2="matPaginator" class="override-paginator" [style.display]="!changeOnTab ?
- 'none' : 'revert'"></mat-paginator>
-
- </mat-card>
- </main>
|