Merge branch 'developer' of bitbucket.org:equilibriumito/gabinete-digital into developer

This commit is contained in:
Peter Maquiran
2021-07-13 13:41:37 +01:00
14 changed files with 282 additions and 271 deletions
@@ -23,7 +23,7 @@ export class EditEventPage implements OnInit {
validateFrom = false
public endMinDate = new Date(new Date().getTime() + 15 * 60000);
public minDate = new Date().toISOString().slice(0,10)
postEvent: Event;
isRecurring:string;
isEventEdited: boolean;
@@ -45,7 +45,7 @@ export class EditEventPage implements OnInit {
taskParticipantsCc: any = [];
adding: "intervenient" | "CC" = "intervenient";
showAttendees = false;
@@ -94,9 +94,9 @@ export class EditEventPage implements OnInit {
else {
this.isRecurring = "Repete";
}
this.getAttachments(this.postEvent.EventId);
}
ngOnInit() {
@@ -114,9 +114,9 @@ export class EditEventPage implements OnInit {
setTimeout(() => {
this.selectedRecurringType = this.postEvent.EventRecurrence.Type.toString();
}, 500);
}
close() {
this.modalController.dismiss();
}
@@ -168,17 +168,17 @@ export class EditEventPage implements OnInit {
IsRecurring: new FormControl(this.postEvent.IsRecurring, [
Validators.required
]),
// participantes: new FormControl(this.taskParticipantsCc.concat(this.taskParticipants), [
// Validators.required
// ]),
})
}
save() {
this.injectValidation()
this.runValidation()
@@ -186,13 +186,13 @@ export class EditEventPage implements OnInit {
if(this.selectedRecurringType != '-1'){
this.postEvent.EventRecurrence.Type = this.selectedRecurringType;
}
this.postEvent.Attendees = this.taskParticipants.concat(this.taskParticipantsCc)
try{
console.log(this.postEvent);
this.postEvent.EventRecurrence.Type = this.selectedRecurringType;
/* this.eventsService.editEvent(this.postEvent, 2, 3).subscribe(async () => {
this.eventsService.editEvent(this.postEvent, 2, 3).subscribe(async () => {
if(this.initCalendarName != this.postEvent.CalendarName){
let body = {
"EventId": this.postEvent.EventId,
@@ -205,7 +205,7 @@ export class EditEventPage implements OnInit {
}, error => {
this.toastService.badRequest()
}); */
});
this.isEventEdited = true;
this.goBack();
@@ -222,10 +222,10 @@ export class EditEventPage implements OnInit {
saveDocument() {
this.loadedEventAttachments.forEach((e)=>{
const id: any = e.Id
const remove = e['remove']
if ( id == 'add') {
//data.selected
const DocumentToSave = {
@@ -270,7 +270,7 @@ export class EditEventPage implements OnInit {
await modal.present();
modal.onDidDismiss().then((data) => {
if(data){
data = data['data'];
@@ -290,7 +290,7 @@ export class EditEventPage implements OnInit {
this.taskParticipants = data;
this.postEvent.Attendees = data;
}
setIntervenientCC(data){
this.taskParticipantsCc = data;
}
@@ -310,25 +310,25 @@ export class EditEventPage implements OnInit {
this.taskParticipantsCc = taskParticipantsCc;
}
getAttachments(eventId: string){
this.attachmentsService.getAttachmentsById(eventId).subscribe(res=>{
this.loadedEventAttachments = res;
console.log('res', res);
console.log('res', res);
});
}
deleteAttachment(attachmentID: string, index) {
const id: any = this.loadedEventAttachments[index].Id
if(id == 'add') {
this.loadedEventAttachments = this.loadedEventAttachments.filter((e,i)=> i!=index)
} else {
this.loadedEventAttachments[index]['remove'] = true
}
}
async getDoc() {
@@ -368,4 +368,4 @@ export class EditEventPage implements OnInit {
})
}
}
}
@@ -14,7 +14,7 @@ import { DiscartExpedientModalPage } from 'src/app/pages/gabinete-digital/discar
import { AuthService } from 'src/app/services/auth.service';
import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page';
import { NavigationExtras, Router } from '@angular/router';
import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
@Component({
selector: 'app-despachos',
@@ -51,14 +51,25 @@ export class DespachosPage implements OnInit {
private alertService: AlertService,
private authService: AuthService,
private router: Router,
) {
) {
this.profile = 'mdgpr';
}
ngOnInit() {
//Inicializar segment
this.segment = "despachos";
this.LoadList();
const pathname = window.location.pathname;
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.refreshing();
}
});
}
async refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
segmentChanged(ev: any) {
@@ -71,13 +82,13 @@ export class DespachosPage implements OnInit {
}
async LoadList() {
let result = await this.processes.GetTasksList("Despacho", false).toPromise();
//let despachos = result.reverse().filter(data => data.activityInstanceName == "Despacho (Paralelo)");
this.despachoList = new Array();
await result.forEach( (element, index) => {
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
@@ -99,7 +110,7 @@ export class DespachosPage implements OnInit {
this.despachoList = this.sortArrayISODate(this.despachoList).reverse()
this.despachoList.forEach( (element, index) => {
// let aplicationId = element.workflowInstanceDataFields.SourceSecFsID;
let FolderID = element['FolderID'];
@@ -139,5 +150,5 @@ export class DespachosPage implements OnInit {
goToList() {
this.router.navigate(['/home/gabinete-digital/despachos']);
}
}
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router';
import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model';
import { ProcessesService } from 'src/app/services/processes.service';
import { formatDate } from '@angular/common';
@@ -18,10 +18,10 @@ export class DiplomasAssinarPage implements OnInit {
showLoader: boolean;
totalDocs:any;
serialNumber:string;
@Input() profile:string;
@Input() segment:string;
constructor(
private processes:ProcessesService,
private modalController: ModalController,
@@ -29,11 +29,16 @@ export class DiplomasAssinarPage implements OnInit {
private router: Router,
) {
}
ngOnInit() {
this.LoadList();
const pathname = window.location.pathname;
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.refreshing();
}
});
}
goToDiploma(serialNumber:any){
let navigationExtras: NavigationExtras = {
queryParams: {
@@ -42,16 +47,22 @@ export class DiplomasAssinarPage implements OnInit {
};
this.router.navigate(['/home/gabinete-digital/diplomas-assinar/diploma-assinar'], navigationExtras);
}
async refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
event.target.complete();
}, 2000);
}
async LoadList(){
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
this.diplomasList = new Array();
let diplomasAssinar = diplomas.reverse().filter(data => data.activityInstanceName == "Assinar Diploma");
@@ -94,7 +105,7 @@ export class DiplomasAssinarPage implements OnInit {
});
this.showLoader = false;
}
goBack() {
this.router.navigate(['/home/gabinete-digital']);
// window.history.back()
@@ -33,19 +33,16 @@ export class ExpedientePage implements OnInit {
private processes:ProcessesService,
private modalController: ModalController,
private alertService: AlertService,
private router: Router,
) {
private router: Router,
) {
this.profile = 'mdgpr';
}
ngOnInit() {
this.LoadList();
const pathname = window.location.pathname
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.LoadList();
this.refreshing();
}
});
}
@@ -83,6 +80,12 @@ export class ExpedientePage implements OnInit {
});
}
async refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
@@ -99,4 +102,3 @@ export class ExpedientePage implements OnInit {
}
}
@@ -33,16 +33,15 @@ export class ExpedientesPrPage implements OnInit {
private modalController: ModalController,
private alertService: AlertService,
private authService: AuthService,
private router: Router,
) {
private router: Router,
) {
this.loggeduser = authService.ValidatedUser;
this.LoadList();
}
ngOnInit() {
const pathname = window.location.pathname
const pathname = window.location.pathname;
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.refreshing();
@@ -78,7 +77,7 @@ export class ExpedientesPrPage implements OnInit {
console.log(this.taskslist);
this.showLoader = false;
});
break;
case 'PR':
this.processes.GetTasksList("Expediente do Presidente", false).subscribe(result => {
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar';
import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model';
@@ -24,7 +24,7 @@ export class PedidosPage implements OnInit {
taskslist:DailyWorkTask[];
parecerList:any[];
fulltask:any;
parecerListResult:tasksList[] = [];
deferimentoListResult:tasksList[] = [];
@@ -36,29 +36,30 @@ export class PedidosPage implements OnInit {
@Output() openExpedientDetail:EventEmitter<any> = new EventEmitter<any>();
constructor(
private router: Router,
private router: Router,
private processes:ProcessesService,
private modalController: ModalController,
private alertService: AlertService,
private activatedRoute: ActivatedRoute,
) {
}
ngOnInit() {
//Inicializar segment
) {
//Inicializar segment
this.segment = 'parecer';
this.activatedRoute.queryParams.subscribe(params => {
if(params['deferimento'] == 'true') {
this.segment = 'deferimento';
} else if (params['parecer'] == 'true') {
this.segment = 'parecer';
}
this.LoadList();
});
this.LoadList();
}
ngOnInit() {
const pathname = window.location.pathname;
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.refreshing();
}
});
}
goBack() {
@@ -123,15 +124,15 @@ export class PedidosPage implements OnInit {
}
this.parecerList.push(task);
});
}
else if(this.segment == 'deferimento') {
this.taskType = "Pedido de Deferimento";
this.processes.GetTasksList("Pedido de Deferimento", false).subscribe(result => {
this.taskslist = result;
console.log(result);
this.deferimentoList = new Array();
let res = result.reverse();
res.forEach(element => {
@@ -153,11 +154,17 @@ export class PedidosPage implements OnInit {
}
this.deferimentoList.push(task);
});
});
}
}
refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
@@ -167,4 +174,3 @@ export class PedidosPage implements OnInit {
}
@@ -26,12 +26,12 @@
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher>
<div *ngIf="pendentesList" class="width-100">
<div *ngIf="pendentesList.length >= 1" class="width-100">
<div >
<ion-list>
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of pendentesList"
(click)="viewTaskDetails(task.SerialNumber, task.WorkflowName)"
>
@@ -43,7 +43,7 @@
</div>
<div class="exp-icon">
<ion-icon src="assets/images/icons-expediente-attachment.svg"></ion-icon>
<label>{{task.DocumentsQty}}</label>
<label *ngIf="task.DocumentsQty != 0">{{task.DocumentsQty}}</label>
</div>
</div>
<div class="exp-bottom-detail">
@@ -53,7 +53,7 @@
</div>
<div class="exp-middle-detail">
<div class="exp-workflow">
<span class="label">{{task.WorkflowName}}</span>
<span class="label">{{task.activityInstanceName}}</span>
</div>
<div class="exp-date">
<ion-label>{{ task.CreateDate | date: 'dd-MM-yy' }}</ion-label>
@@ -62,10 +62,10 @@
</div>
</div>
</ion-list>
</div>
</div>
<div *ngIf="!pendentesList">
<div *ngIf="pendentesList.length < 1">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -21,24 +21,25 @@ export class PendentesPage implements OnInit {
serialNumber:string;
totalDocs:any;
showLoader: boolean;
@Input() profile:string;
segment:string;
@Output() openExpedientDetail:EventEmitter<any> = new EventEmitter<any>();
constructor(
private processes:ProcessesService,
private alertService: AlertService,
private router: Router,
private activatedRoute: ActivatedRoute,
) {
){
this.pendentesList = new Array();
this.profile = 'mdgpr';
}
ngOnInit() {
//Inicializar segment
this.segment = "despachos";
const pathname = window.location.pathname
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
@@ -46,7 +47,7 @@ export class PendentesPage implements OnInit {
}
});
}
segmentChanged(ev: any) {
this.refreshing();
}
@@ -54,88 +55,65 @@ export class PendentesPage implements OnInit {
goBack() {
this.router.navigate(['/home/gabinete-digital']);
}
notImplemented(){
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
openExpedientDetailPage(data){
this.openExpedientDetail.emit(data);
}
async LoadList(){
this.showLoader = true;
this.pendentesList = new Array();
let pendentes = await this.processes.GetPendingTasks(false).toPromise();
let despachos = await this.processes.GetTasksList("Despacho", false).toPromise();
let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise();
let deferimentos = await this.processes.GetTasksList("Pedido de Deferimento", false).toPromise();
let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise();
let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", false).toPromise();
let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).reverse().filter(data => data.workflowInstanceDataFields.Status == "Pending");
console.log(pendentes);
pendentes.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
}
this.pendentesList.push(task);
this.pendentesList = removeDuplicate( this.pendentesList)
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
}
this.pendentesList.push(task);
this.pendentesList = removeDuplicate( this.pendentesList)
});
this.pendentesList = this.sortArrayISODate(this.pendentesList);
});
this.showLoader = false;
}
sortArrayISODate(myArray: any){
return myArray.sort(function(a, b) {
return (a.CreateDate < b.CreateDate) ? -1 : ((a.CreateDate > b.CreateDate) ? 1 : 0);
});
}
async refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
event.target.complete();
}, 2000);
}
async viewTaskDetails(serialNumber:string, workflowName:string) {
if(workflowName == 'Despacho'){
this.router.navigate(['/home/gabinete-digital/despachos',serialNumber,'gabinete-digital']);
@@ -146,9 +124,8 @@ export class PendentesPage implements OnInit {
else if(workflowName == 'Expediente'){
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
}
}
}
+73 -59
View File
@@ -15,7 +15,7 @@ export class ProcessesService {
loggeduser: User;
headers: HttpHeaders;
constructor(private http: HttpClient, user: AuthService) {
constructor(private http: HttpClient, user: AuthService) {
this.loggeduser = user.ValidatedUser;
this.headers = new HttpHeaders();
this.headers = this.headers.set('Authorization', this.loggeduser.BasicAuthKey);
@@ -28,10 +28,10 @@ export class ProcessesService {
params = params.set("ProcessName", processname);
params = params.set("OnlyCount", onlycount.toString());
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
@@ -42,10 +42,10 @@ export class ProcessesService {
let params = new HttpParams();
params = params.set("serialNumber", serialnumber);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -54,18 +54,32 @@ export class ProcessesService {
let params = new HttpParams();
params = params.set("serialNumber", serialNumber);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.post<any>(`${geturl}`,'', options);
}
GetPendingTasks(onlyCount: boolean){
const geturl = environment.apiURL + 'Tasks/ListPending';
let params = new HttpParams();
params = params.set("onlyCount", onlyCount.toString());
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
DelegateTask(body:any){
const geturl = environment.apiURL + 'Tasks/DelegateTask';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options);
@@ -76,10 +90,10 @@ export class ProcessesService {
let params = new HttpParams();
params = params.set("folderId", folderId);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -90,10 +104,10 @@ export class ProcessesService {
let params = new HttpParams();
params = params.set("serialNumber", serialnumber);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -102,7 +116,7 @@ export class ProcessesService {
{
const geturl = environment.apiURL + 'tasks/GetMDOficialTasks';
let options = {
headers: this.headers,
headers: this.headers,
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -111,7 +125,7 @@ export class ProcessesService {
{
const geturl = environment.apiURL + 'tasks/GetMDPersonalTasks';
let options = {
headers: this.headers,
headers: this.headers,
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -123,18 +137,18 @@ export class ProcessesService {
params = params.set("categoryname", categoryname);
params = params.set("onlyCount", count);
let options = {
headers: this.headers,
params: params,
let options = {
headers: this.headers,
params: params,
};
return this.http.get<any>(`${geturl}`, options);
}
PostTaskAction(body:any){
const geturl = environment.apiURL + 'Tasks/Complete';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -142,8 +156,8 @@ export class ProcessesService {
CompleteTask(body:any){
const geturl = environment.apiURL + 'Tasks/CompleteTask';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -151,8 +165,8 @@ export class ProcessesService {
CompleteParecerPrTask(body:any){
const geturl = environment.apiURL + 'Tasks/CompleteTaskParecerPr';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -163,10 +177,10 @@ export class ProcessesService {
let params = new HttpParams();
params = params.set("FolderId", FolderId);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.post<any>(`${geturl}`,'', options);
}
@@ -177,17 +191,17 @@ export class ProcessesService {
params = params.set("DocId", DocId);
params = params.set("applicationid", FsId);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
postDespatcho(body:any) {
const geturl = environment.apiURL + 'Processes/CreateDispatch';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -195,7 +209,7 @@ export class ProcessesService {
postDespatchoPr(body:any) {
const geturl = environment.apiURL + 'Processes/CreateDispatchPR';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -203,7 +217,7 @@ export class ProcessesService {
postParecer(body:any){
const geturl = environment.apiURL + 'Processes/CreateParecer';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -211,7 +225,7 @@ export class ProcessesService {
postParecerPr(body:any){
const geturl = environment.apiURL + 'Processes/CreateParecerPR';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -219,7 +233,7 @@ export class ProcessesService {
postDeferimento(body:any){
const geturl = environment.apiURL + 'Processes/CreateDeferimento';
let options = {
let options = {
headers: this.headers,
};
return this.http.post<any>(`${geturl}`, body, options)
@@ -228,32 +242,32 @@ export class ProcessesService {
GetActionsList(){
const geturl = environment.apiURL + 'presidentialActions';
let options = {
headers: this.headers,
let options = {
headers: this.headers,
};
console.log(options);
return this.http.get<any>(`${geturl}`, options);
}
GetSubjectType(){
const geturl = environment.apiURL + 'ecm/SubjectType';
let options = {
headers: this.headers,
let options = {
headers: this.headers,
};
return this.http.get<any>(`${geturl}`, options);
}
GetDocumentDetails(DocId:string, FsId:string){
const geturl = environment.apiURL + 'search/documents';
let params = new HttpParams();
params = params.set("docId", DocId);
params = params.set("applicationId", FsId);
let options = {
headers: this.headers,
params: params
let options = {
headers: this.headers,
params: params
};
return this.http.get<any>(`${geturl}`, options);
}
@@ -127,7 +127,6 @@
[showSeconds]="showSeconds"
[stepHour]="stepHour" [stepMinute]="stepMinute"
[stepSecond]="stepSecond"
[min]="endMinDate"
[touchUi]="touchUi">
</ngx-mat-datetime-picker>
</mat-form-field>
@@ -198,7 +197,6 @@
<input matInput [ngxMatDatetimePicker]="occurrrence"
placeholder="Choose a date"
[formControl]="dateControlOccurrence"
[min]="endMinDate"
[disabled]="disabled"
>
<mat-datepicker-toggle id="last-occurrence" matSuffix [for]="occurrrence"></mat-datepicker-toggle>
@@ -20,7 +20,7 @@ import * as moment from 'moment';
})
export class EditEventPage implements OnInit {
stEvent: Event;
isRecurring:string;
isEventEdited: boolean;
@@ -213,9 +213,9 @@ export class EditEventPage implements OnInit {
dateEnd: new FormControl(this.dateEnd, [
Validators.required
]),
/* IsRecurring: new FormControl(this.postEvent.IsRecurring, [
dateOccurrence: new FormControl(this.dateOccurrence, [
Validators.required
]), */
]),
participantes: new FormControl(this.taskParticipants, [
Validators.required
]),
@@ -226,6 +226,28 @@ export class EditEventPage implements OnInit {
})
}
openInicio() {
let input: any = document.querySelector('#new-inicio')
if(input) {
console.log(input)
input.click()
}
}
openFim() {
let input: any = document.querySelector('#new-fim')
if(input) {
input.click()
}
}
openLastOccurrence() {
let input: any = document.querySelector('#last-occurrence')
if(input) {
input.click()
}
}
async save() {
@@ -374,7 +374,7 @@ export class NewEventPage implements OnInit {
this.postEvent.HasAttachments = true;
}
if(this.selectedRecurringType != '-1'){
/* this.postEvent.EventRecurrence.Type = this.selectedRecurringType; */
this.postEvent.EventRecurrence.Type = this.selectedRecurringType;
}
if(this.loggeduser.Profile == 'MDGPR') {
@@ -17,11 +17,11 @@
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher>
<div *ngIf="pendentesList.length >= 1" class="width-100 overflow-y-auto height-100">
<ion-list>
<ion-item
class="expediente ion-no-padding cursor-pointer"
<ion-item
class="expediente ion-no-padding cursor-pointer"
*ngFor = "let task of pendentesList"
(click)="viewTaskDetails(task.SerialNumber, task.WorkflowName)"
>
@@ -39,7 +39,7 @@
</div>
<div class="exp-icon">
<ion-icon src="assets/images/icons-expediente-attachment.svg"></ion-icon>
<label>{{task.DocumentsQty}}</label>
<label *ngIf="task.DocumentsQty != 0">{{task.DocumentsQty}}</label>
</div>
</div>
<div class="exp-bottom-detail">
@@ -50,7 +50,7 @@
</ion-list>
</div>
<div *ngIf="pendentesList.length < 1">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -1,16 +1,12 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { NavigationEnd, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar';
import { removeDuplicate } from 'src/plugin/removeDuplicate.js'
import { DailyWorkTask } from '../../../models/dailyworktask.model';
import { ProcessesService } from 'src/app/services/processes.service';
import { formatDate } from '@angular/common';
import { ModalController, NavParams } from '@ionic/angular';
import { ModalController } from '@ionic/angular';
import { AlertService } from 'src/app/services/alert.service';
import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page';
import { AuthService } from 'src/app/services/auth.service';
import { PedidoPage } from 'src/app/pages/gabinete-digital/pedidos/pedido/pedido.page';
import { ExpedienteDetailPage } from 'src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page';
@Component({
@@ -26,96 +22,72 @@ export class PendentesPage implements OnInit {
serialNumber:string;
totalDocs:any;
showLoader: boolean;
@Input() profile:string;
segment:string;
@Output() openExpedientDetail:EventEmitter<any> = new EventEmitter<any>();
constructor(
private processes:ProcessesService,
private modalController: ModalController,
private alertService: AlertService,
private authService: AuthService,
private router: Router,
) {
) {
this.pendentesList = new Array();
this.profile = 'mdgpr';
}
ngOnInit() {
//Inicializar segment
this.segment = "despachos";
this.LoadList();
const pathname = window.location.pathname
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
this.LoadList();
}
});
}
segmentChanged(ev: any) {
this.LoadList();
}
openExpedientDetailPage(data){
console.log(data);
this.openExpedientDetail.emit(data);
}
async LoadList(){
this.showLoader = true;
this.pendentesList = [];
let despachos = await this.processes.GetTasksList("Despacho", false).toPromise();
let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise();
let deferimentos = await this.processes.GetTasksList("Pedido de Deferimento", false).toPromise();
let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise();
let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", false).toPromise();
this.pendentesList = new Array();
let pendentes = await this.processes.GetPendingTasks(false).toPromise();
let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).filter(data => data.workflowInstanceDataFields.Status == "Pending");
pendentes.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": new Date(element.taskStartDate),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Sender,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
}
this.pendentesList.push(task);
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": new Date(element.taskStartDate),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.pendentesList.push(task);
});
this.pendentesList = removeDuplicate( this.pendentesList)
this.pendentesList = this.sortArrayISODate(this.pendentesList);
});
this.pendentesList = this.sortArrayISODate(this.pendentesList).reverse();
this.showLoader = false;
}
@@ -125,11 +97,11 @@ export class PendentesPage implements OnInit {
});
}
doRefresh() {
this.LoadList();
}
async viewTaskDetails(serialNumber:string, workflowName:string) {
console.log(this.profile);
if(workflowName == 'Despacho'){
@@ -142,6 +114,5 @@ export class PendentesPage implements OnInit {
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
}
}
}