merge and add new features

This commit is contained in:
Peter Maquiran
2023-04-17 14:11:30 +01:00
28 changed files with 330 additions and 77 deletions
+58 -3
View File
@@ -1,12 +1,38 @@
import { Injectable } from '@angular/core';
import { momentG } from 'src/plugin/momentG';
import { ExpedienteGdStore } from 'src/app/store/expedientegd-store.service';
import { DeplomasStore } from 'src/app/store/deplomas.service';
import { PendentesStore } from 'src/app/store/pendestes-store.service';
import { DespachoStore } from 'src/app/store/despacho-store.service';
import { TotalDocumentStore } from 'src/app/store/total-document.service';
import { DespachosprStore } from 'src/app/store/despachospr-store.service';
import { EventoAprovacaoStore } from 'src/app/store/eventoaprovacao-store.service';
import { PedidosStore } from 'src/app/store/pedidos-store.service';
@Injectable({
providedIn: 'root'
})
export class TaskService {
read = 0
unread = 0
deadline = 0
new = 0
overdueTasks = 0
expedientegbstore = ExpedienteGdStore;
pendentesstore = PendentesStore;
despachoStore = DespachoStore;
eventoaprovacaostore = EventoAprovacaoStore;
pedidosstore = PedidosStore;
despachoprstore = DespachosprStore;
totalDocumentStore = TotalDocumentStore
deplomasStore = DeplomasStore
AllProcess = []
constructor() { }
deadlineIsToday(isoDateString:string) {
@@ -17,10 +43,13 @@ export class TaskService {
return momentG(new Date(), 'dd MMMM yyyy') == momentG(new Date(isoDateString), 'dd MMMM yyyy')
}
overdueTask(isoDateString:string) {
return (new Date()).getTime() < (new Date(isoDateString)).getTime()
}
lessThen24Hours(isoDateString:string) {
if(!isoDateString) {
console.log('no created date')
return true
}
@@ -33,7 +62,6 @@ export class TaskService {
}
filter(item, attribute) {
if(attribute == 'Para hoje') {
return this.deadlineIsToday(item.TaskStartDate || item.taskStartDate)
} else if (attribute == 'Novos') {
@@ -41,7 +69,9 @@ export class TaskService {
} else if (attribute == 'Lidos') {
return item.TaskStatus == 'Open' || item.taskStatus == 'Open'
} else if (attribute == 'Não lidos') {
return item.TaskStatus != 'Open' && item.taskStatus != 'Open'
return !(item.TaskStatus == 'Open' || item.taskStatus == 'Open')
} else if (attribute == 'OverdueTasks') {
return this.overdueTask(item.Deadline || item.deadline)
}
return true
}
@@ -50,4 +80,29 @@ export class TaskService {
seen(item) {
return item.TaskStatus == 'Open' || item.taskStatus == 'Open'
}
updateAllProcess = () => {
this.AllProcess = this.sortArrayISODate(this.despachoprstore.list.concat(this.deplomasStore.diplomasAssinadoList as any).concat(this.deplomasStore.diplomasParaAssinarList as any).concat(this.deplomasStore.DiplomaGerarList as any)
.concat(this.eventoaprovacaostore.contactList as any).concat(this.expedientegbstore.list as any).concat(this.despachoStore.list as any).concat(this.pedidosstore.listparecer as any).concat(this.pedidosstore.listdeferimento as any)
.concat(this.pendentesstore.list as any)).reverse()
}
sortArrayISODate(myArray: any): any[] {
// return myArray.sort(function (a, b) {
// return (a.CreateDate || a.taskStartDate < b.CreateDate || b.taskStartDate) ? -1 : ((a.CreateDate || a.taskStartDate > b.CreateDate || b.taskStartDate) ? 1 : 0);
// });
return myArray.sort((a,b) => Date.parse(b.CreateDate || b.taskStartDate || b.TaskStartDate) - Date.parse(a.CreateDate || a.taskStartDate || a.TaskStartDate))
}
updateCount() {
this.updateAllProcess()
this.read = this.AllProcess.filter((item) => this.filter(item,'Lidos')).length
this.unread = this.AllProcess.filter((item) => this.filter(item,'Não lidos')).length
this.deadline = this.AllProcess.filter((task) => this.deadlineIsToday(task.Deadline || task.deadline)).length
this.new = this.AllProcess.filter((task) => this.lessThen24Hours(task.TaskStartDate || task.taskStartDate)).length
this.overdueTasks = this.AllProcess.filter((task) => this.overdueTask(task.Deadline || task.deadline)).length
}
}