add new features

This commit is contained in:
Peter Maquiran
2023-05-24 14:26:54 +01:00
parent 033a6c331c
commit 11d9e22f11
61 changed files with 777 additions and 1509 deletions
@@ -23,6 +23,9 @@ import { ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListPageModule } from 'src/app/shared/gabinete-digital/generic/task-list/task-list.module'
import { TaskListHeaderPageModule } from 'src/app/shared/gabinete-digital/generic/task-list-header/task-list-header.module';
@NgModule({
imports: [
@@ -32,6 +35,8 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
DespachosPrPageRoutingModule,
BtnModalDismissPageModule,
TaskListPageModule,
TaskListHeaderPageModule,
//
MatInputModule,
MatNativeDateModule,
@@ -1,63 +1,14 @@
<ion-header class="ion-no-border">
<!-- <app-header > </app-header> -->
</ion-header>
<ion-header class="ion-no-border header-2">
<div class="main-header">
<app-btn-modal-dismiss (click)="goBack()" ></app-btn-modal-dismiss>
<div class="thetitle">
<ion-label >{{environment.dispatchPR }}</ion-label>
</div>
<div class="theicon btn-refresh d-flex align-center">
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
</div>
<mat-form-field class="task-filter-input" appearance="none" color="ion-color-secondary" placeholder="Selecione agenda">
<mat-select [(value)]="filterName">
<mat-option value="Para hoje" >
Para hoje
</mat-option>
<mat-option value="Novos" >
Novos
</mat-option>
<mat-option value="Lidos" >
Lidos
</mat-option>
<mat-option value="Não lidos" >
Não lidos
</mat-option>
<mat-option value="OverdueTasks">
Em atraso
</mat-option>
<mat-option value="Todos" >
Todos
</mat-option>
</mat-select>
</mat-form-field>
<button class="btn-no-color" (click)="doRefresh($event)">
<ion-icon slot="end" class="title-icon font-awesome" name="reload-circle"></ion-icon>
</button>
</div>
</div>
<!-- <div *ngIf="SessionStore.user.Profile =='MDGPR'" class="bottom-title d-flex">
<h3 class="bottom-text">Presidente da República</h3>
</div> -->
<app-task-list-header
[goBackButton] = true
[headerName] = environment.dispatchPR
[ordinance] = ordinance
[loading] = skeletonLoader
[loaderTop] = true
(reorderList) = reorderList($event)
(changeFilterName) = changeFilterName($event)
(goBack) = goBack()
></app-task-list-header>
</ion-header>
<ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
@@ -69,82 +20,13 @@
</ion-refresher-content>
</ion-refresher>
<div class="main-content width-100 overflow-y-auto height-100">
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<div >
<ion-list>
<div
class="ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of list; let i = index"
(click)="goToDespachoPr(task.SerialNumber)"
>
<!-- [routerLink]="['/home/gabinete-digital/expediente',task.SerialNumber]" -->
<div class="item width-100 expediente" *ngIf="TaskService.filter(task, filterName)">
<div class="exp-top-detail">
<div class="subject d-flex align-center">
<ion-label [class.gb-seen]="TaskService.seen(task)">{{ task.Folio }}</ion-label>
<span class="dead-line ml-10" *ngIf="TaskService.deadlineIsToday(task.Deadline)">Para hoje</span>
<span class="new-task ml-10" *ngIf="TaskService.lessThen24Hours(task.TaskReceiveDate)">Nova</span>
</div>
<div class="exp-icon">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/icons-expediente-attachment.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-expediente-attachment.svg"></ion-icon>
<label *ngIf="task.DocumentsQty != 0">{{task.DocumentsQty}}</label>
</div>
</div>
<div class="exp-bottom-detail">
<div class="exp-remetente">
<ion-label>{{task.Senders}}</ion-label>
</div>
</div>
<div class="exp-middle-detail">
<div class="exp-workflow">
<span class="label">{{task.activityInstanceName}}</span>
</div>
<div class="exp-date">
<ion-label>{{ task.CreateDate | date: 'dd-MM-yyyy HH:mm' }}</ion-label>
</div>
</div>
</div>
</div>
</ion-list>
</div>
<div
*ngIf="!skeletonLoader && despachoprstore.list.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<!-- <div *ngIf="skeletonLoader && despachoprstore.list.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
<ion-skeleton-text animated></ion-skeleton-text>
</ion-thumbnail>
<ion-label>
<h3><ion-skeleton-text animated style="width: 50%"></ion-skeleton-text></h3>
<p><ion-skeleton-text animated style="width: 80%"></ion-skeleton-text></p>
<p><ion-skeleton-text animated style="width: 60%"></ion-skeleton-text></p>
</ion-label>
</ion-item>
<ion-item>
<ion-thumbnail slot="end">
<ion-skeleton-text animated></ion-skeleton-text>
</ion-thumbnail>
<ion-label>
<h3><ion-skeleton-text animated style="width: 50%"></ion-skeleton-text></h3>
<p><ion-skeleton-text animated style="width: 80%"></ion-skeleton-text></p>
<p><ion-skeleton-text animated style="width: 60%"></ion-skeleton-text></p>
</ion-label>
</ion-item>
</ion-list>
</div> -->
</div>
<app-task-list
[taskList] = list
[skeletonLoader] = skeletonLoader
(viewTaskDetail)="goToDespachoPr($event)"
[filterName]="filterName"
>
</app-task-list>
</ion-content>
@@ -6,11 +6,12 @@
.header-2 {
border-top-right-radius: 24px;
border-top-left-radius: 24px;
background-color: white;
}
ion-content, .header-2, .main-content{
padding: 30px 20px 0 20px !important;
ion-content, .main-content{
background-color: white;
padding: 30px 20px 0 20px !important;
}
.main-content {
padding-top: 0px !important;
@@ -115,6 +115,10 @@ export class DespachosPrPage implements OnInit {
this.dynamicSearch();
}
changeFilterName(filterName) {
this.filterName = filterName
}
async dynamicSearch() {
if(this.showSearch && this.searchSubject) {
@@ -138,8 +142,8 @@ export class DespachosPrPage implements OnInit {
this.LoadList();
}
goToDespachoPr(serialNumber: any) {
this.router.navigate(['/home/gabinete-digital/despachos-pr', serialNumber, 'gabinete-digital']);
goToDespachoPr({SerialNumber}) {
this.router.navigate(['/home/gabinete-digital/despachos-pr', SerialNumber, 'gabinete-digital']);
}
notImplemented() {
@@ -1,9 +1,9 @@
<ion-content class="container-wrapper">
<div class="main-content d-flex height-100 overflow-hidden">
<div class="content d-flex flex-column" *ngIf="task">
<div class="content d-flex align-center flex-column" *ngIf="task">
<div class="main-header">
<div class="title-content width-100 d-flex justify-space-between">
<div class="font-30 cursor-pointer" (click)="goBack()" defaultHref="#">
<div class="title-content width-100 d-flex align-center justify-space-between">
<div class="font-30 cursor-pointer d-flex align-center" (click)="goBack()" defaultHref="#">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " slot="end" src='assets/images/icons-arrow-arrow-left.svg'></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'doneIt' " src="assets/images/theme/doneIt/icons-calendar-arrow-left.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " slot="end" src='assets/images/theme/gov/icons-calendar-arrow-left.svg'></ion-icon>
@@ -23,6 +23,7 @@ import { ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListHeaderPageModule } from 'src/app/shared/gabinete-digital/generic/task-list-header/task-list-header.module';
@NgModule({
@@ -32,6 +33,7 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
IonicModule,
DiplomasPageRoutingModule,
BtnModalDismissPageModule,
TaskListHeaderPageModule,
//
MatInputModule,
MatNativeDateModule,
@@ -2,90 +2,18 @@
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-refresher-content></ion-refresher-content>
</ion-refresher>
<div class="title">
<app-btn-modal-dismiss (click)="goBack()" ></app-btn-modal-dismiss>
<div class="thetitle"><ion-label >Diplomas</ion-label></div>
<div class="theicon d-flex align-center">
<!-- <div>
<div title="Pesquisa" *ngIf="!hideSearchBtn" class="mr-20 d-flex align-center cursor-pointer">
<div (click)="openSearch();showSearch=true" *ngIf="!showSearch" class="d-flex">
<ion-icon title="Perfil" *ngIf="ThemeService.currentTheme == 'doneIt' " class="font-35" src="assets/images/theme/doneIt/icons-search.svg"></ion-icon>
<ion-icon title="Perfil" *ngIf="ThemeService.currentTheme == 'default' " class="font-35" src='assets/images/icons-search.svg'></ion-icon>
<ion-icon title="Perfil" *ngIf="ThemeService.currentTheme == 'gov' " class="font-35" src='assets/images/theme/gov/icons-search.svg'></ion-icon>
</div>
<button title="Fechar" class="btn-no-color d-flex" (click)="closeSearch();showSearch=false;searchSubject=''" *ngIf="showSearch">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' || ThemeService.currentTheme == 'doneIt' " class="font-35" name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="font-35" name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
</button>
<div *ngIf="showSearch">
<div class="d-flex search-input-container ml-10 justify-between" *ngIf="showSearch">
<div class="input-text d-flex ion-align-items-center">
<ion-input (keyup.enter)="basicSearch()" [(ngModel)]='searchSubject' (ngModelChange)="dynamicSearch()"
class="search-input text-black" type="search" placeholder="Pesquisar"></ion-input>
</div>
<app-task-list-header
[goBackButton] = true
[headerName] = "headerName"
[ordinance] = ordinance
[loading] = skeletonLoader
[loaderTop] = true
(reorderList) = reorderList($event)
(changeFilterName) = changeFilterName($event)
(goBack) = goBack()
></app-task-list-header>
<div (click)="basicSearch()" class="d-flex align-center icon">
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
</div>
</div>
</div>
</div>
</div> -->
<div>
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
</div>
</div>
<div>
<mat-form-field class="task-filter-input" appearance="none" color="ion-color-secondary" placeholder="Selecione agenda">
<mat-select [(value)]="filterName">
<mat-option value="Para hoje" >
Para hoje
</mat-option>
<mat-option value="Novos" >
Novos
</mat-option>
<mat-option value="Lidos" >
Lidos
</mat-option>
<mat-option value="Não lidos" >
Não lidos
</mat-option>
<mat-option value="OverdueTasks">
Em atraso
</mat-option>
<mat-option value="Todos" >
Todos
</mat-option>
</mat-select>
</mat-form-field>
</div>
<!-- <button title="Atualizar" class="btn-no-color" (click)="doRefresh($event)">
<ion-icon slot="end" class="title-icon font-awesome" name="reload-circle"></ion-icon>
</button> -->
</div>
</div>
<ion-toolbar>
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)">
<ion-segment-button value="validar" *ngIf="p.userPermission([p.permissionList.Gabinete.md_tasks])">
@@ -116,7 +44,7 @@
(click)="goToDiploma(task.SerialNumber)"
lines="none"
>
<div class="item width-100 expediente">
<div class="item width-100 expediente" *ngIf="TaskService.filter(task, filterName)">
<div class="exp-top-detail">
<div class="subject d-flex align-center">
<ion-label [class.gb-seen]="TaskService.seen(task)">{{ task.Folio }}</ion-label>
@@ -183,12 +111,12 @@
<ion-list *ngSwitchCase="'assinados'">
<div *ngIf="listDiplomasAssinadosPR.length >= 1">
<ion-item
class="expediente ion-no-padding cursor-pointer"
class=" ion-no-padding cursor-pointer"
*ngFor = "let task of listDiplomasAssinadosPR"
(click)="goToDiploma(task.SerialNumber)"
lines="none"
>
<div class="item width-100">
<div class="item width-100 expediente" *ngIf="TaskService.filter(task, filterName)">
<div class="exp-top-detail">
<div class="subject d-flex">
<ion-label [class.gb-seen]="TaskService.seen(task)">{{ task.Folio }}</ion-label>
@@ -7,9 +7,10 @@
.header-2 {
border-top-right-radius: 24px;
border-top-left-radius: 24px;
background-color: white;
}
ion-content, .header-2, .main-content{
ion-content, .main-content{
padding: 30px 20px 0 20px !important;
background-color: white;
}
@@ -21,6 +21,7 @@ export class DiplomasPage implements OnInit, OnDestroy {
showLoader: boolean;
totalDocs: any;
serialNumber: string;
headerName = "Diplomas"
segment: string;
@@ -114,6 +115,10 @@ export class DiplomasPage implements OnInit, OnDestroy {
this.dynamicSearch();
}
changeFilterName(filterName) {
this.filterName = filterName
}
async dynamicSearch() {
if(this.showSearch && this.searchSubject) {
@@ -21,6 +21,8 @@ import { ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListPageModule } from 'src/app/shared/gabinete-digital/generic/task-list/task-list.module'
@NgModule({
@@ -28,6 +30,7 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
CommonModule,
FormsModule,
IonicModule,
TaskListPageModule,
//
MatInputModule,
MatNativeDateModule,
@@ -8,6 +8,7 @@ import { ExpedientesPrPageRoutingModule } from './expedientes-pr-routing.module'
import { ExpedientesPrPage } from './expedientes-pr.page';
import { BtnModalDismissPageModule } from 'src/app/shared/btn-modal-dismiss/btn-modal-dismiss.module';
import { TaskListPageModule } from 'src/app/shared/gabinete-digital/generic/task-list/task-list.module'
import { MatInputModule } from '@angular/material/input';
@@ -23,6 +24,7 @@ import { ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListHeaderPageModule } from 'src/app/shared/gabinete-digital/generic/task-list-header/task-list-header.module';
@NgModule({
imports: [
@@ -31,7 +33,9 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
IonicModule,
ExpedientesPrPageRoutingModule,
BtnModalDismissPageModule,
//
TaskListPageModule,
TaskListHeaderPageModule,
//
MatInputModule,
MatNativeDateModule,
NgxMatDatetimePickerModule,
@@ -1,142 +1,33 @@
<ion-header class="ion-no-border">
<!-- <app-header > </app-header> -->
</ion-header>
<ion-header class="ion-no-border header-2">
<app-task-list-header
[goBackButton] = true
[headerName] = "headerName"
[ordinance] = ordinance
[loading] = skeletonLoader
[loaderTop] = true
(reorderList) = reorderList($event)
(changeFilterName) = changeFilterName($event)
(goBack) = goBack()
></app-task-list-header>
<app-btn-modal-dismiss (click)="goBack()" ></app-btn-modal-dismiss>
<div class="title">
<div class="thetitle"><ion-label >Expediente</ion-label></div>
<div class="theicon btn-refresh d-flex align-center">
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
</div>
<mat-form-field class="task-filter-input" appearance="none" color="ion-color-secondary" placeholder="Selecione agenda">
<mat-select [(value)]="filterName">
<mat-option value="Para hoje" >
Para hoje
</mat-option>
<mat-option value="Novos" >
Novos
</mat-option>
<mat-option value="Lidos" >
Lidos
</mat-option>
<mat-option value="Não lidos" >
Não lidos
</mat-option>
<mat-option value="OverdueTasks">
Em atraso
</mat-option>
<mat-option value="Todos" >
Todos
</mat-option>
</mat-select>
</mat-form-field>
<button class="btn-no-color" (click)="refreshing()">
<ion-icon slot="end" class="title-icon font-awesome" name="reload-circle"></ion-icon>
</button>
</div>
</div>
</ion-header>
<ion-content>
<div class="main-content width-100 overflow-y-auto height-100">
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="width-100" >
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<ion-list>
<div
class=" ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of expedienteGdStore.list"
(click)="goToExpediente(task.SerialNumber)"
>
<div class="item width-100 expediente" *ngIf="TaskService.filter(task, filterName)">
<div class="exp-top-detail">
<div class="subject d-flex align-center">
<ion-label [class.gb-seen]="TaskService.seen(task)">{{ task.Subject }}</ion-label>
<span class="dead-line ml-10" *ngIf="TaskService.deadlineIsToday(task.Deadline)">Para hoje</span>
<span class="new-task ml-10" *ngIf="TaskService.lessThen24Hours(task.TaskReceiveDate)">Nova</span>
</div>
<div class="exp-icon">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "src="assets/images/icons-expediente-attachment.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-expediente-attachment.svg"></ion-icon>
<label *ngIf="task.DocumentsQty != 0">{{task.DocumentsQty}}</label>
</div>
</div>
<div class="exp-bottom-detail">
<div class="exp-remetente">
<ion-label>{{task.Senders}}</ion-label>
</div>
</div>
<div class="exp-middle-detail">
<div class="exp-workflow">
<span class="label">{{task.activityInstanceName}}</span>
</div>
<div class="exp-date">
<ion-label>{{ task.CreateDate | date: 'dd-MM-yyyy HH:mm' }}</ion-label>
</div>
</div>
</div>
</div>
</ion-list>
</div>
<div
*ngIf="!skeletonLoader && expedienteGdStore.list.length == 0 && expedienteGdStore.list.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
</div>
<!-- Skeleton loader -->
<div *ngIf="skeletonLoader && expedienteGdStore.list.length == 0">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
<ion-skeleton-text animated></ion-skeleton-text>
</ion-thumbnail>
<ion-label>
<h3><ion-skeleton-text animated style="width: 50%"></ion-skeleton-text></h3>
<p><ion-skeleton-text animated style="width: 80%"></ion-skeleton-text></p>
<p><ion-skeleton-text animated style="width: 60%"></ion-skeleton-text></p>
</ion-label>
</ion-item>
<ion-item>
<ion-thumbnail slot="end">
<ion-skeleton-text animated></ion-skeleton-text>
</ion-thumbnail>
<ion-label>
<h3><ion-skeleton-text animated style="width: 50%"></ion-skeleton-text></h3>
<p><ion-skeleton-text animated style="width: 80%"></ion-skeleton-text></p>
<p><ion-skeleton-text animated style="width: 60%"></ion-skeleton-text></p>
</ion-label>
</ion-item>
</ion-list>
</div>
</div>
<app-task-list
[taskList] = list
[skeletonLoader] = skeletonLoader
(viewTaskDetail)="goToExpediente($event)"
[filterName]="filterName"
>
</app-task-list>
</ion-content>
@@ -7,9 +7,10 @@
.header-2 {
border-top-right-radius: 24px;
border-top-left-radius: 24px;
background-color: white;
}
ion-content, .header-2, .main-content{
ion-content, .main-content{
padding: 30px 20px 0 20px !important;
background-color: white;
}
@@ -41,7 +41,8 @@ export class ExpedientesPrPage implements OnInit {
searchSubject = ''
list = []
ordinance: string = 'old'
headerName = "Expediente"
constructor(
private processes:ProcessesService,
private modalController: ModalController,
@@ -85,6 +86,11 @@ export class ExpedientesPrPage implements OnInit {
this.dynamicSearch();
}
changeFilterName(filterName) {
this.filterName = filterName
}
async dynamicSearch() {
if(this.showSearch && this.searchSubject) {
@@ -136,9 +142,9 @@ export class ExpedientesPrPage implements OnInit {
}, 2000);
}
goToExpediente(serialNumber:any){
goToExpediente({SerialNumber}){
//this.router.navigate(['/home/gabinete-digital/expedientes-pr',serialNumber,'gabinete-digital']);
this.router.navigate(['/home/gabinete-digital/expediente', serialNumber, 'gabinete-digital']);
this.router.navigate(['/home/gabinete-digital/expediente', SerialNumber, 'gabinete-digital']);
}
async viewExpedientDetail(serialNumber:any) {
@@ -159,13 +165,7 @@ export class ExpedientesPrPage implements OnInit {
}
goBack() {
// let navigationExtras: NavigationExtras = {
// queryParams: {
// "expedientes-pr": true,
// }
// };
// this.router.navigate(['/home/gabinete-digital'], navigationExtras);
this.RouteService.goBack();
}
@@ -24,6 +24,8 @@ import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListHeaderPageModule } from 'src/app/shared/gabinete-digital/generic/task-list-header/task-list-header.module';
@NgModule({
imports: [
@@ -3,18 +3,27 @@
</ion-header>
<ion-header class="ion-no-border header-2">
<app-btn-modal-dismiss (click)="goBack()"></app-btn-modal-dismiss>
<div class="title">
<div class="thetitle"><ion-label >Pedidos</ion-label></div>
<div class="theicon btn-refresh d-flex align-center">
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
<div class="title d-flex justify-space-between">
<div class="d-flex align-center" (click)="goBack()">
<div class="d-flex align-center font-35">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " slot="end" src='assets/images/icons-arrow-arrow-left.svg'></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " slot="end" src='assets/images/theme/gov/icons-calendar-arrow-left.svg'></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'doneIt' " slot="end" src='assets/images/theme/{{ThemeService.currentTheme}}/icons-calendar-arrow-left.svg'></ion-icon>
</div>
<div class="thetitle"><ion-label >Pedidos</ion-label></div>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
<div class="theicon btn-refresh d-flex">
<div>
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10 font-25" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10 font-25" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
</div>
</div>
<mat-form-field class="task-filter-input" appearance="none" color="ion-color-secondary" placeholder="Selecione agenda">
@@ -53,6 +62,7 @@
</button>
</div>
</div>
<ion-toolbar>
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)" >
<ion-segment-button value="parecer">
@@ -77,40 +87,15 @@
</ion-refresher-content>
</ion-refresher>
<div class="d-flex ion-justify-content-between ion-align-items-center" style="
width: 300px;
margin: 0px auto;
">
<div class="d-flex sort-by ion-justify-content-center">
<p>
<span class="order">Order por:</span>
<span *ngIf="ordinance == 'recent'" class="order-labal">Mais Recentes</span>
<span *ngIf="ordinance == 'old'" class="order-labal">Mais Antigos</span>
</p>
</div>
<div>
<div *ngIf="ordinance == 'old'" (click)="reorderList('recent')">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/icons-arrow-arrow-up.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-arrow-arrow-up.svg"></ion-icon>
</div>
<div *ngIf="ordinance == 'recent'" (click)="reorderList('old')">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/icons-arrow-arrow-down-25.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-arrow-arrow-down.svg"></ion-icon>
</div>
</div>
</div>
<div class="width-100" [ngSwitch]="segment">
<ion-progress-bar type="indeterminate" *ngIf="skeletonLoader"></ion-progress-bar>
<div *ngIf="listPedidosParecer">
<div *ngIf="pedidosstorage.listparecer">
<ion-list *ngSwitchCase="'parecer'">
<!-- *ngFor = "let task of listPedidosParecer; let i = index"
<!-- *ngFor = "let task of pedidosstorage.listparecer; let i = index"
(click)="viewExpedientDetail(task.SerialNumber)" -->
<div
class="ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of listPedidosParecer"
*ngFor = "let task of pedidosstorage.listparecer"
(click)="goToPedido(task.SerialNumber)"
>
<!-- (click)="viewExpedientDetail(task.SerialNumber)" -->
@@ -146,11 +131,11 @@
</ion-list>
</div>
<div *ngIf="listPedidosDeferimento">
<div *ngIf="pedidosstorage.listdeferimento">
<ion-list *ngSwitchCase="'deferimento'">
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of listPedidosDeferimento"
*ngFor = "let task of pedidosstorage.listdeferimento"
(click)="goToPedido(task.SerialNumber)"
>
<!-- (click)="viewExpedientDetail(task.SerialNumber)" -->
@@ -190,7 +175,7 @@
<div [ngSwitch]="segment">
<div *ngSwitchCase="'parecer'" class="centered-div d-flex height-100 align-center justify-content-center" >
<div
*ngIf="listPedidosParecer.length == 0"
*ngIf="pedidosstorage.listparecer.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
@@ -199,7 +184,7 @@
<div *ngSwitchCase="'deferimento'" class="centered-div d-flex height-100 align-center justify-content-center">
<div
*ngIf="listPedidosDeferimento.length == 0"
*ngIf="pedidosstorage.listdeferimento.length == 0"
class="empty-list d-flex height-100 align-center justify-content-center"
>
<span>Lista vazia</span>
@@ -207,7 +192,7 @@
</div>
</div>
<div *ngIf="skeletonLoader && listPedidosDeferimento.length == 0 && skeletonLoader && listPedidosParecer.length == 0">
<div *ngIf="skeletonLoader && pedidosstorage.listdeferimento.length == 0 && skeletonLoader && pedidosstorage.listparecer.length == 0">
<ion-list>
<ion-item>
@@ -121,7 +121,6 @@ export class PedidosPage implements OnInit {
this.listPedidosParecer = this.TaskService.reorderList(this.ordinance, listPedidosParecer)
const listPedidosDeferimento = this.pedidosstorage.listdeferimento.filter((task) => {
let subject = task.Folio || task.Subject || task.workflowInstanceDataFields.Subject
subject = subject.toLowerCase();
@@ -24,6 +24,7 @@ import { ReactiveFormsModule } from '@angular/forms';
import { MatButtonModule } from '@angular/material/button';
import { MatSelectModule } from '@angular/material/select';
import { NgxMatMomentModule } from '@angular-material-components/moment-adapter';
import { TaskListHeaderPageModule } from 'src/app/shared/gabinete-digital/generic/task-list-header/task-list-header.module';
@NgModule({
@@ -35,6 +36,7 @@ import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'
BtnModalDismissPageModule,
// entryComponents
TaskListPageModule,
TaskListHeaderPageModule,
//
MatInputModule,
MatNativeDateModule,
@@ -1,59 +1,14 @@
<ion-header class="ion-no-border">
<!-- <app-header > </app-header> -->
</ion-header>
<ion-header class="ion-no-border header-2">
<app-btn-modal-dismiss (click)="goBack()" ></app-btn-modal-dismiss>
<div class="title">
<div class="thetitle"><ion-label >Pendentes</ion-label></div>
<div class="theicon btn-refresh d-flex align-center">
<div class="d-flex" (click)="reorderList('old')" *ngIf="ordinance == 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/crescente.svg" ></ion-icon>
</div>
<div class="d-flex" (click)="reorderList('recent')" *ngIf="ordinance != 'recent' ">
<ion-icon class="mr-10" src="assets/images/theme/gov/decrescente.svg" ></ion-icon>
</div>
<mat-form-field class="task-filter-input" appearance="none" color="ion-color-secondary" placeholder="Selecione agenda">
<mat-select [(value)]="filterName">
<mat-option value="Para hoje" >
Para hoje
</mat-option>
<mat-option value="Novos" >
Novos
</mat-option>
<mat-option value="Lidos" >
Lidos
</mat-option>
<mat-option value="Não lidos" >
Não lidos
</mat-option>
<mat-option value="OverdueTasks">
Em atraso
</mat-option>
<mat-option value="Todos" >
Todos
</mat-option>
</mat-select>
</mat-form-field>
<button class="btn-no-color" (click)="doRefresh($event)">
<ion-icon slot="end" class="title-icon font-awesome" name="reload-circle"></ion-icon>
</button>
</div>
</div>
<app-task-list-header
[goBackButton] = true
[headerName] = "headerName"
[ordinance] = ordinance
[loading] = skeletonLoader
[loaderTop] = true
(reorderList) = reorderList($event)
(changeFilterName) = changeFilterName($event)
(goBack) = goBack()
></app-task-list-header>
</ion-header>
<ion-content style="background-color: white;">
@@ -71,6 +26,7 @@
<app-task-list class="height-100"
[taskList] = list
[skeletonLoader] = skeletonLoader
[filterName] = "filterName"
(viewTaskDetail)="viewTaskDetails($event)"
> </app-task-list>
@@ -7,11 +7,7 @@
.header-2 {
border-top-right-radius: 24px;
border-top-left-radius: 24px;
}
.header-2{
padding: 30px 20px 0 20px !important;
background-color: white;
background-color: white;
}
.main-content {
@@ -46,6 +46,7 @@ export class PendentesPage implements OnInit {
searchSubject = ''
list = []
ordinance: string = 'old'
headerName = "Pendentes"
constructor(
private processes: ProcessesService,
@@ -99,6 +100,11 @@ export class PendentesPage implements OnInit {
this.dynamicSearch();
}
changeFilterName(filterName) {
this.filterName = filterName
}
async dynamicSearch() {
if(this.showSearch && this.searchSubject) {
@@ -151,7 +151,7 @@ export class PublicationsPage implements OnInit {
this.publicationsEventFolderList = folders.filter((e)=>e.ActionType == 'Evento')
this.publicationsTravelFolderList = folders.filter((e)=>e.ActionType != 'Evento')
// ActionModel.create(folders)
ActionModel.create(folders)
await this.storage.set('actionsEvents', this.publicationsEventFolderList);
await this.storage.set('actionsViagens', this.publicationsTravelFolderList);