mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-21 05:45:50 +00:00
Merge branch 'developer' of bitbucket.org:equilibriumito/gabinete-digital into feature/event-aprove
This commit is contained in:
Generated
+47
-23
@@ -165,6 +165,25 @@
|
|||||||
"debug": "4"
|
"debug": "4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"postcss": {
|
||||||
|
"version": "8.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.4.tgz",
|
||||||
|
"integrity": "sha512-kRFftRoExRVXZlwUuay9iC824qmXPcQQVzAjbCCgjpXnkdMCJYBu2gTwAaFBzv8ewND6O8xFb3aELmEkh9zTzg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"colorette": "^1.2.1",
|
||||||
|
"nanoid": "^3.1.20",
|
||||||
|
"source-map": "^0.6.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"source-map": {
|
||||||
|
"version": "0.6.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
|
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"rxjs": {
|
"rxjs": {
|
||||||
"version": "6.6.3",
|
"version": "6.6.3",
|
||||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz",
|
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz",
|
||||||
@@ -8585,9 +8604,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"engine.io-client": {
|
"engine.io-client": {
|
||||||
"version": "3.5.0",
|
"version": "3.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.2.tgz",
|
||||||
"integrity": "sha512-12wPRfMrugVw/DNyJk34GQ5vIVArEcVMXWugQGGuw2XxUSztFNmJggZmv8IZlLyEdnpO1QB9LkcjeWewO2vxtA==",
|
"integrity": "sha512-QEqIp+gJ/kMHeUun7f5Vv3bteRHppHH/FMBQX/esFj/fuYfjyUKWGMo3VCvIP/V8bE9KcjHmRZrhIz2Z9oNsDA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"component-emitter": "~1.3.0",
|
"component-emitter": "~1.3.0",
|
||||||
"component-inherit": "0.0.3",
|
"component-inherit": "0.0.3",
|
||||||
@@ -8598,7 +8617,7 @@
|
|||||||
"parseqs": "0.0.6",
|
"parseqs": "0.0.6",
|
||||||
"parseuri": "0.0.6",
|
"parseuri": "0.0.6",
|
||||||
"ws": "~7.4.2",
|
"ws": "~7.4.2",
|
||||||
"xmlhttprequest-ssl": "~1.5.4",
|
"xmlhttprequest-ssl": "~1.6.2",
|
||||||
"yeast": "0.1.2"
|
"yeast": "0.1.2"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -12288,9 +12307,9 @@
|
|||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"nanoid": {
|
"nanoid": {
|
||||||
"version": "3.1.20",
|
"version": "3.1.23",
|
||||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz",
|
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz",
|
||||||
"integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==",
|
"integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"nanomatch": {
|
"nanomatch": {
|
||||||
@@ -13430,16 +13449,22 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "8.2.4",
|
"version": "8.2.15",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.15.tgz",
|
||||||
"integrity": "sha512-kRFftRoExRVXZlwUuay9iC824qmXPcQQVzAjbCCgjpXnkdMCJYBu2gTwAaFBzv8ewND6O8xFb3aELmEkh9zTzg==",
|
"integrity": "sha512-2zO3b26eJD/8rb106Qu2o7Qgg52ND5HPjcyQiK2B98O388h43A448LCslC0dI2P97wCAQRJsFvwTRcXxTKds+Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"colorette": "^1.2.1",
|
"colorette": "^1.2.2",
|
||||||
"nanoid": "^3.1.20",
|
"nanoid": "^3.1.23",
|
||||||
"source-map": "^0.6.1"
|
"source-map": "^0.6.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"colorette": {
|
||||||
|
"version": "1.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
|
||||||
|
"integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"source-map": {
|
"source-map": {
|
||||||
"version": "0.6.1",
|
"version": "0.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
@@ -17948,9 +17973,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"underscore": {
|
"underscore": {
|
||||||
"version": "1.12.0",
|
"version": "1.13.1",
|
||||||
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz",
|
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz",
|
||||||
"integrity": "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==",
|
"integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"unicode-canonical-property-names-ecmascript": {
|
"unicode-canonical-property-names-ecmascript": {
|
||||||
@@ -18802,8 +18827,7 @@
|
|||||||
},
|
},
|
||||||
"ssri": {
|
"ssri": {
|
||||||
"version": "6.0.1",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz",
|
"resolved": "",
|
||||||
"integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==",
|
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"figgy-pudding": "^3.5.1"
|
"figgy-pudding": "^3.5.1"
|
||||||
@@ -19429,9 +19453,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ws": {
|
"ws": {
|
||||||
"version": "7.4.3",
|
"version": "7.4.5",
|
||||||
"resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz",
|
||||||
"integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA=="
|
"integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g=="
|
||||||
},
|
},
|
||||||
"xcode": {
|
"xcode": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
@@ -19480,9 +19504,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"xmlhttprequest-ssl": {
|
"xmlhttprequest-ssl": {
|
||||||
"version": "1.5.5",
|
"version": "1.6.3",
|
||||||
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz",
|
||||||
"integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4="
|
"integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q=="
|
||||||
},
|
},
|
||||||
"xtend": {
|
"xtend": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
"socket.io-client": "^2.3.0",
|
"socket.io-client": "^2.3.0",
|
||||||
"tslib": "^2.0.0",
|
"tslib": "^2.0.0",
|
||||||
"wordcloud": "^1.1.2",
|
"wordcloud": "^1.1.2",
|
||||||
|
"ws": "^7.4.5",
|
||||||
"zone.js": "~0.10.2"
|
"zone.js": "~0.10.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
@@ -216,7 +216,9 @@ export class CreateProcessPage implements OnInit {
|
|||||||
"ActionTypeId": 104,
|
"ActionTypeId": 104,
|
||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewUserComent": '',
|
"ReviewUserComent": '',
|
||||||
}
|
},
|
||||||
|
"AttachmentList" :null,
|
||||||
|
|
||||||
}
|
}
|
||||||
this.processes.CompleteTask(body);
|
this.processes.CompleteTask(body);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,6 +72,16 @@ export class ChatPage implements OnInit {
|
|||||||
@Output() getRoomInfo;
|
@Output() getRoomInfo;
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
|
Websockets variables
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
SERVER_URL = 'wss://www.tabularium.pt/websocket';
|
||||||
|
ws:any;
|
||||||
|
|
||||||
|
/* Fim websockets variables*/
|
||||||
constructor(
|
constructor(
|
||||||
private http:HttpClient,
|
private http:HttpClient,
|
||||||
private chatService: ChatService,
|
private chatService: ChatService,
|
||||||
@@ -100,9 +110,47 @@ export class ChatPage implements OnInit {
|
|||||||
})
|
})
|
||||||
|
|
||||||
console.log(this.roomId);
|
console.log(this.roomId);
|
||||||
|
this.connect();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* websocket functions */
|
||||||
|
connect() {
|
||||||
|
this.ws = new WebSocket(this.SERVER_URL, []);
|
||||||
|
console.log(this.ws);
|
||||||
|
|
||||||
|
/* this.ws.onmessage = handleMessageReceived;
|
||||||
|
this.ws.onerror = handleError; */
|
||||||
|
}
|
||||||
|
handleMessageReceived(data) {
|
||||||
|
// Simply call logMessage(), passing the received data.
|
||||||
|
/* logMessage(data.data); */
|
||||||
|
}
|
||||||
|
handleConnected(data) {
|
||||||
|
// Create a log message which explains what has happened and includes
|
||||||
|
// the url we have connected too.
|
||||||
|
var logMsg = 'Connected to server: ' + data.target.url;
|
||||||
|
// Add the message to the log.
|
||||||
|
/* logMessage(logMsg) */
|
||||||
|
}
|
||||||
|
handleError(err) {
|
||||||
|
// Print the error to the console so we can debug it.
|
||||||
|
console.log("Error: ", err);
|
||||||
|
}
|
||||||
|
logMessage(msg) {
|
||||||
|
// $apply() ensures that the elements on the page are updated
|
||||||
|
// with the new message.
|
||||||
|
/* $scope.$apply(function() { */
|
||||||
|
//Append out new message to our message log. The \n means new line.
|
||||||
|
/* $scope.messageLog = $scope.messageLog + msg + "\n"; */
|
||||||
|
// Update the scrolling (defined below).
|
||||||
|
/*updateScrolling();*/
|
||||||
|
/* S */
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Fim websockets functions */
|
||||||
|
|
||||||
closeAllDesktopComponents() {
|
closeAllDesktopComponents() {
|
||||||
this.showMessages=false;
|
this.showMessages=false;
|
||||||
this.showContacts=false;
|
this.showContacts=false;
|
||||||
|
|||||||
@@ -160,7 +160,8 @@ export class DespachoPage implements OnInit {
|
|||||||
"ActionTypeId": 104,
|
"ActionTypeId": 104,
|
||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewUserComent": note,
|
"ReviewUserComent": note,
|
||||||
}
|
},
|
||||||
|
"AttachmentList" :null,
|
||||||
}
|
}
|
||||||
this.processes.CompleteTask(body);
|
this.processes.CompleteTask(body);
|
||||||
this.close();
|
this.close();
|
||||||
|
|||||||
@@ -1,9 +1,124 @@
|
|||||||
<ion-header>
|
|
||||||
<ion-toolbar>
|
|
||||||
<ion-title>diploma</ion-title>
|
|
||||||
</ion-toolbar>
|
|
||||||
</ion-header>
|
|
||||||
|
|
||||||
<ion-content>
|
<ion-content>
|
||||||
|
<div class="main-content d-flex height-100">
|
||||||
|
<div class="content d-flex flex-column" *ngIf="task">
|
||||||
|
<div class="main-header">
|
||||||
|
<div class="title-content">
|
||||||
|
<app-btn-modal-dismiss></app-btn-modal-dismiss>
|
||||||
|
<div class="middle">
|
||||||
|
<ion-label class="title">{{ task.Folio}}</ion-label>
|
||||||
|
</div>
|
||||||
|
<div class="div-icon" (click)="openOptions()">
|
||||||
|
<!-- <ion-menu-button autoHide="false">
|
||||||
|
<ion-icon name="ellipsis-vertical-outline"></ion-icon>
|
||||||
|
</ion-menu-button> -->
|
||||||
|
<ion-icon class="font-25 cursor-pointer" name="ellipsis-vertical-outline"></ion-icon>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="upper-content">
|
||||||
|
<div class="content-details">
|
||||||
|
<ion-label>
|
||||||
|
<p><span class="date">{{customDate}}</span><span class="label">{{ task.WorkflowName }}</span></p>
|
||||||
|
<p><span class="color-red">{{ task.DeadlineType }}</span></p>
|
||||||
|
</ion-label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="line"></div>
|
||||||
|
<div class="middle-content">
|
||||||
|
<h5 *ngIf="intervenientes">Intervenientes</h5>
|
||||||
|
<ion-item class="ion-no-margin ion-no-padding">
|
||||||
|
<ion-label>
|
||||||
|
<div *ngFor="let interveniente of intervenientes">
|
||||||
|
<p>{{interveniente.Name}}</p>
|
||||||
|
</div>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
<div *ngIf="cc.length > 0">
|
||||||
|
<h5>Com conhecimento</h5>
|
||||||
|
<ion-item class="ion-no-margin ion-no-padding">
|
||||||
|
<ion-label>
|
||||||
|
<div *ngFor="let c of cc">
|
||||||
|
<p>{{c.Name}}</p>
|
||||||
|
</div>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="task.Note">
|
||||||
|
<h5>Detalhes</h5>
|
||||||
|
<ion-item class="ion-no-margin ion-no-padding">
|
||||||
|
<p [innerHTML]="task.Note"></p>
|
||||||
|
</ion-item>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom-content width-100">
|
||||||
|
<ion-list>
|
||||||
|
<h5>Documentos Anexados</h5>
|
||||||
|
<ion-item *ngFor="let attachment of attachments" class="ion-no-margin ion-no-padding">
|
||||||
|
<ion-label
|
||||||
|
(click)="viewDocument(attachment.DocId)">
|
||||||
|
<p *ngIf="attachment.Assunto" class="attach-title-item">{{ attachment.Assunto }}<span class="span-right color-red btn-size"><ion-icon hidden name="close"></ion-icon></span></p>
|
||||||
|
<p *ngIf="!attachment.Assunto" class="attach-title-item">{{ attachment.DocNumber }}<span class="span-right color-red btn-size"><ion-icon hidden name="close"></ion-icon></span></p>
|
||||||
|
<p><span class="span-left">{{attachment.Sender}}</span><span class="span-right">{{ attachment.DocDate | date: 'dd/MM/yy' }}</span></p>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
</ion-list>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div *ngIf="task" class="aside-right flex-column height-100">
|
||||||
|
<div class="buttons">
|
||||||
|
<button (click)="openAddNoteModal()" class="btn-cancel" shape="round" >Executado</button>
|
||||||
|
<button (click)="openDelegarModal(task)" class="btn-cancel" shape="round" >Delegar</button>
|
||||||
|
<div class="solid"></div>
|
||||||
|
<button (click)="openExpedientActionsModal('0',fulltask)" class="btn-ok" shape="round" >Efectuar Despacho</button>
|
||||||
|
<button (click)="openExpedientActionsModal('1',fulltask)" class="btn-cancel" shape="round" >Solicitar Parecer</button>
|
||||||
|
<button (click)="openBookMeetingModal(task)" class="btn-cancel" shape="round" >Marcar Reunião</button>
|
||||||
|
<div class="solid"></div>
|
||||||
|
<button (click)="sendExpedienteToPending()" class="btn-cancel" shape="round" >Enviar para Pendentes</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div *ngIf="!task">
|
||||||
|
<ion-list>
|
||||||
|
<ion-list-header>
|
||||||
|
<ion-label>
|
||||||
|
<ion-skeleton-text animated style="width: 50%"></ion-skeleton-text>
|
||||||
|
</ion-label>
|
||||||
|
</ion-list-header>
|
||||||
|
<ion-item>
|
||||||
|
<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>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
<ion-item>
|
||||||
|
<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>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
<ion-item>
|
||||||
|
<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>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
<ion-button color="medium" shape="round" expand="block">
|
||||||
|
<!-- <ion-icon color="medium" name="attach" slot="start"></ion-icon> -->
|
||||||
|
<ion-skeleton-text animated style="width: 50%"></ion-skeleton-text>
|
||||||
|
</ion-button>
|
||||||
|
</ion-list>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</ion-content>
|
</ion-content>
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,236 @@
|
|||||||
|
@import '~src/function.scss';
|
||||||
|
.content{
|
||||||
|
padding: 30px 20px 0 20px !important;
|
||||||
|
margin: 0;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.color-red{
|
||||||
|
font-weight: 500;
|
||||||
|
color:#d30a0a !important;
|
||||||
|
}
|
||||||
|
.btn-size{
|
||||||
|
font-size: 18px !important;
|
||||||
|
}
|
||||||
|
.main-header{
|
||||||
|
font-family: Roboto;
|
||||||
|
border-top-left-radius: 25px;
|
||||||
|
border-top-right-radius: 25px;
|
||||||
|
background-color: #fff;
|
||||||
|
overflow:auto;
|
||||||
|
color:#000;
|
||||||
|
transform: translate3d(0, 1px, 0);
|
||||||
|
.header-top{
|
||||||
|
width: 360px;
|
||||||
|
margin: 0px auto;
|
||||||
|
overflow: auto;
|
||||||
|
padding: 0 !important;
|
||||||
|
background: #fff;
|
||||||
|
.middle{
|
||||||
|
padding: 0!important;
|
||||||
|
float: left;
|
||||||
|
width: 280px;
|
||||||
|
margin: 2.5px 0 0 5px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
.right{
|
||||||
|
padding: 0!important;
|
||||||
|
float: right;
|
||||||
|
font-size: 25px;
|
||||||
|
color: #0782c9;
|
||||||
|
margin: 5px 0 0 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.header-bottom{
|
||||||
|
width: 310px;
|
||||||
|
overflow: auto;
|
||||||
|
margin: 0 auto;
|
||||||
|
|
||||||
|
.header-bottom-icon{
|
||||||
|
width: 30px;
|
||||||
|
font-size: 25px;
|
||||||
|
float: left;
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
.header-bottom-contacts{
|
||||||
|
width: 275px;
|
||||||
|
font-size: 15px;
|
||||||
|
color: #797979;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
float: left;
|
||||||
|
padding: 5px;
|
||||||
|
margin: 1px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.title{
|
||||||
|
font-size: 25px;
|
||||||
|
overflow: auto;
|
||||||
|
float: left;
|
||||||
|
padding-top: 4px;
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
.div-icon{
|
||||||
|
width: 40px;
|
||||||
|
float: right;
|
||||||
|
font-size: 35px;
|
||||||
|
overflow: auto;
|
||||||
|
padding: 1px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ion-item-group{
|
||||||
|
margin: 15px;
|
||||||
|
}
|
||||||
|
ion-button{
|
||||||
|
display: block;
|
||||||
|
width: 80%;
|
||||||
|
margin: 20px auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.upper-content{
|
||||||
|
font-family: Roboto;
|
||||||
|
margin-left: 41px;
|
||||||
|
overflow: auto;
|
||||||
|
font-size: 18px;
|
||||||
|
|
||||||
|
.label{
|
||||||
|
border-radius: 20px;
|
||||||
|
background: #ffb703;
|
||||||
|
float: right;
|
||||||
|
padding: 5px 13.5px 5px 13.5px;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-calendar-type ion-button{
|
||||||
|
height: 25px;
|
||||||
|
}
|
||||||
|
.content-details{
|
||||||
|
font-size: 17px;
|
||||||
|
.date{
|
||||||
|
color: #797979;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.middle-conten{
|
||||||
|
.middle-content p{
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bottom-content{
|
||||||
|
//width: 360px;
|
||||||
|
margin: 0 auto;
|
||||||
|
|
||||||
|
.bottom-content h3{
|
||||||
|
font-size: 16px;
|
||||||
|
margin: 0 0 0 10px;
|
||||||
|
}
|
||||||
|
.attach-document{
|
||||||
|
font-size: 15px;
|
||||||
|
color: #0d89d1;
|
||||||
|
margin: 5px 5px 5px 10px;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.attach-icon{
|
||||||
|
width: 37px;
|
||||||
|
font-size: 35px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.attach-title-item{
|
||||||
|
font-size: 18px;
|
||||||
|
width: 100%;
|
||||||
|
color:#0d89d1;
|
||||||
|
padding-bottom: 5px;
|
||||||
|
}
|
||||||
|
/* SPAN */
|
||||||
|
.span-left{
|
||||||
|
float: left;
|
||||||
|
font-size: 15x;
|
||||||
|
}
|
||||||
|
.span-right{
|
||||||
|
text-align: right;
|
||||||
|
float: right;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.aside-right{
|
||||||
|
padding: 30px 20px 0 20px !important;
|
||||||
|
|
||||||
|
.arrow-right{
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
|
||||||
|
.arrow-right-icon{
|
||||||
|
width: 37px;
|
||||||
|
float: right;
|
||||||
|
font-size: 35px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.buttons{
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
|
.btn-ok, .btn-cancel, .btn-delete{
|
||||||
|
height: auto !important;
|
||||||
|
font-size: 16px !important;
|
||||||
|
font-weight: 600 !important;
|
||||||
|
width: 100% !important;
|
||||||
|
margin-bottom: 10px !important;
|
||||||
|
padding: 15px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.solid {
|
||||||
|
display: block;
|
||||||
|
width: 90%;
|
||||||
|
border-top: 1px solid #ebebeb;
|
||||||
|
margin: 0 auto !important;
|
||||||
|
margin-bottom: 10px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 800px) {
|
||||||
|
.content{
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
.aside-right{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media only screen and (min-width: 801px) {
|
||||||
|
.div-icon{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.content{
|
||||||
|
width: 65%;
|
||||||
|
border-right: 1px solid #d8d8d8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.aside-right{
|
||||||
|
width: 35%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (min-width: 1024px){
|
||||||
|
.content{
|
||||||
|
width: 70%;
|
||||||
|
}
|
||||||
|
.aside-right{
|
||||||
|
width: 30%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (min-width: 1140px){
|
||||||
|
.content{
|
||||||
|
width: 75%;
|
||||||
|
}
|
||||||
|
.aside-right{
|
||||||
|
width: 25%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,4 +1,12 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
import { ModalController, NavParams, PopoverController } from '@ionic/angular';
|
||||||
|
import { AddNotePage } from 'src/app/modals/add-note/add-note.page';
|
||||||
|
import { CreateProcessPage } from 'src/app/modals/create-process/create-process.page';
|
||||||
|
import { DelegarPage } from 'src/app/modals/delegar/delegar.page';
|
||||||
|
import { ProcessesService } from 'src/app/services/processes.service';
|
||||||
|
import { OptsExpedientePage } from 'src/app/shared/popover/opts-expediente/opts-expediente.page';
|
||||||
|
import { momentG } from 'src/plugin/momentG';
|
||||||
|
import { BookMeetingModalPage } from '../../expediente/book-meeting-modal/book-meeting-modal.page';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-diploma',
|
selector: 'app-diploma',
|
||||||
@@ -7,9 +15,194 @@ import { Component, OnInit } from '@angular/core';
|
|||||||
})
|
})
|
||||||
export class DiplomaPage implements OnInit {
|
export class DiplomaPage implements OnInit {
|
||||||
|
|
||||||
constructor() { }
|
months = ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"];
|
||||||
|
days = ["Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"];
|
||||||
|
|
||||||
|
serialnumber: string;
|
||||||
|
profile: string;
|
||||||
|
task: any
|
||||||
|
fulltask: any
|
||||||
|
intervenientes: any;
|
||||||
|
cc: any;
|
||||||
|
attachments:any;
|
||||||
|
customDate: any
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
private navParams: NavParams,
|
||||||
|
private processes: ProcessesService,
|
||||||
|
public popoverController: PopoverController,
|
||||||
|
private modalController: ModalController,
|
||||||
|
) {
|
||||||
|
this.serialnumber = this.navParams.get('serialNumber');
|
||||||
|
this.profile = this.navParams.get('profile');
|
||||||
|
|
||||||
|
this.LoadTaskDetail(this.serialnumber);
|
||||||
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async openOptions(taskAction?: any) {
|
||||||
|
const popover = await this.popoverController.create({
|
||||||
|
component: OptsExpedientePage,
|
||||||
|
cssClass: 'exp-options',
|
||||||
|
componentProps: {
|
||||||
|
task: this.task,
|
||||||
|
fulltask: this.fulltask,
|
||||||
|
taskAction:taskAction,
|
||||||
|
showEnviarPendentes: false
|
||||||
|
},
|
||||||
|
translucent: true
|
||||||
|
});
|
||||||
|
return await popover.present();
|
||||||
|
}
|
||||||
|
|
||||||
|
async LoadTaskDetail(serial: string) {
|
||||||
|
|
||||||
|
this.processes.GetTask(serial).subscribe(res => {
|
||||||
|
this.task = {
|
||||||
|
"SerialNumber": res.serialNumber,
|
||||||
|
"Folio": res.workflowInstanceDataFields.Subject,
|
||||||
|
"Senders": res.originator.email,
|
||||||
|
"CreateDate": momentG(new Date(res.taskStartDate),'yyyy-MM-dd HH:mm:ss'),
|
||||||
|
"DocumentURL": res.workflowInstanceDataFields.ViewerRequest,
|
||||||
|
"Remetente": res.workflowInstanceDataFields.Sender,
|
||||||
|
"Note": res.workflowInstanceDataFields.Note,
|
||||||
|
"FolderId": res.workflowInstanceDataFields.FolderID,
|
||||||
|
"FsId": '361',
|
||||||
|
"DocId": res.workflowInstanceDataFields.DispatchDocId,
|
||||||
|
"WorkflowName": res.workflowDisplayName,
|
||||||
|
"DeadlineType": res.workflowInstanceDataFields.DeadlineType,
|
||||||
|
}
|
||||||
|
|
||||||
|
this.fulltask = res;
|
||||||
|
console.log(this.task);
|
||||||
|
|
||||||
|
console.log('GetTask', res);
|
||||||
|
|
||||||
|
let thedate = new Date(this.task.CreateDate);
|
||||||
|
this.customDate = this.days[thedate.getDay()]+ ", " + thedate.getDate() +" de " + ( this.months[thedate.getMonth()]);
|
||||||
|
|
||||||
|
this.processes.GetTaskParticipants(this.task.FolderId).subscribe(users=>{
|
||||||
|
this.intervenientes = users.filter(user=>{
|
||||||
|
return user.Type == 'I';
|
||||||
|
});
|
||||||
|
this.cc = users.filter(user=>{
|
||||||
|
return user.Type == 'CC';
|
||||||
|
});
|
||||||
|
console.log(users);
|
||||||
|
|
||||||
|
});
|
||||||
|
this.getDocumentDetails(this.task.FolderId, '361');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
getDocumentDetails(forlderId:string, applicationId:string) {
|
||||||
|
this.processes.GetDocumentDetails(forlderId,applicationId).subscribe(res=>{
|
||||||
|
this.attachments = res.Documents;
|
||||||
|
console.log(res['Documents']);
|
||||||
|
console.log(this.attachments);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async openAddNoteModal() {
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: AddNotePage,
|
||||||
|
componentProps:{
|
||||||
|
},
|
||||||
|
cssClass: 'emend-message-modal',
|
||||||
|
backdropDismiss: false
|
||||||
|
});
|
||||||
|
|
||||||
|
await modal.present();
|
||||||
|
|
||||||
|
modal.onDidDismiss().then(res => {
|
||||||
|
//this.executado(res.data);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async openDelegarModal(task: any) {
|
||||||
|
let classs;
|
||||||
|
if( window.innerWidth <= 800){
|
||||||
|
classs = 'book-meeting-modal modal modal-desktop'
|
||||||
|
} else {
|
||||||
|
classs = 'modal modal-desktop showAsideOptions'
|
||||||
|
}
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: DelegarPage,
|
||||||
|
componentProps: {
|
||||||
|
task: this.task,
|
||||||
|
},
|
||||||
|
cssClass: classs,
|
||||||
|
backdropDismiss: false
|
||||||
|
});
|
||||||
|
await modal.present();
|
||||||
|
modal.onDidDismiss();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async openExpedientActionsModal(taskAction: any, task: any) {
|
||||||
|
//this.modalController.dismiss();
|
||||||
|
let classs;
|
||||||
|
if( window.innerWidth <= 800){
|
||||||
|
classs = 'modal modal-desktop'
|
||||||
|
} else {
|
||||||
|
classs = 'modal modal-desktop showAsideOptions'
|
||||||
|
}
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: CreateProcessPage,
|
||||||
|
componentProps: {
|
||||||
|
taskAction: taskAction,
|
||||||
|
task: task,
|
||||||
|
profile: this.profile,
|
||||||
|
},
|
||||||
|
cssClass: classs,
|
||||||
|
});
|
||||||
|
await modal.present();
|
||||||
|
modal.onDidDismiss().then(res=>{
|
||||||
|
console.log(res['data']);
|
||||||
|
if(res['data']=='openDiscart'){
|
||||||
|
console.log('open discart');
|
||||||
|
|
||||||
|
// this.distartExpedientModal();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async openBookMeetingModal(task: any) {
|
||||||
|
let classs;
|
||||||
|
if( window.innerWidth <= 800){
|
||||||
|
classs = 'book-meeting-modal modal modal-desktop'
|
||||||
|
} else {
|
||||||
|
classs = 'modal modal-desktop showAsideOptions'
|
||||||
|
}
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: BookMeetingModalPage,
|
||||||
|
componentProps: {
|
||||||
|
task: this.task,
|
||||||
|
},
|
||||||
|
cssClass: classs,
|
||||||
|
backdropDismiss: false
|
||||||
|
});
|
||||||
|
await modal.present();
|
||||||
|
modal.onDidDismiss();
|
||||||
|
}
|
||||||
|
|
||||||
|
sendExpedienteToPending(){
|
||||||
|
this.processes.SetTaskToPending(this.serialnumber).subscribe(res=>{
|
||||||
|
console.log(res);
|
||||||
|
this.close();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
close(){
|
||||||
|
this.modalController.dismiss();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
<ion-icon src="assets/images/icons-expediente-presidente.svg"></ion-icon>
|
<ion-icon src="assets/images/icons-expediente-presidente.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<p class="text-center exp-card-title ">Expediente Presidente</p>
|
<p class="text-center exp-card-title ">Expediente Presidente</p>
|
||||||
<p class="text-center exp-card-content"><span class="number">{{count_exp_pr}}</span> <span class="title1">Documentos</span></p>
|
<p class="text-center exp-card-content"><span class="number">-</span> <span class="title1">Documentos</span></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="exp-card d-md-flex d-none flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
|
<div (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="exp-card d-md-flex d-none flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
<ion-icon src="assets/images/icons-expediente-diploma.svg"></ion-icon>
|
<ion-icon src="assets/images/icons-expediente-diploma.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<p class="text-center exp-card-title ">Diplomas por Validar</p>
|
<p class="text-center exp-card-title ">Diplomas por Validar</p>
|
||||||
<p class="text-center exp-card-content"><span class="number">-</span> <span class="title1">Documentos</span> </p>
|
<p class="text-center exp-card-content"><span class="number">{{count_dip_pv}}</span> <span class="title1">Documentos</span> </p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div (click)="openDiplomasPage('assinados'); selectedElement='DiplomasAssinados'" [class.active]="selectedElement == 'DiplomasAssinados'" class="exp-card d-flex flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
|
<div (click)="openDiplomasPage('assinados'); selectedElement='DiplomasAssinados'" [class.active]="selectedElement == 'DiplomasAssinados'" class="exp-card d-flex flex-column justify-center" *ngIf="loggeduser.Profile == 'MDGPR'">
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
count_exp_pp : string;
|
count_exp_pp : string;
|
||||||
count_exp_pd : string;
|
count_exp_pd : string;
|
||||||
count_dip_apr : string;
|
count_dip_apr : string;
|
||||||
count_dip_pv : string;
|
count_dip_pv=0;
|
||||||
count_de_pr = 0;
|
count_de_pr = 0;
|
||||||
count_ev_pr=0;
|
count_ev_pr=0;
|
||||||
count_ev_md=0;
|
count_ev_md=0;
|
||||||
@@ -170,19 +170,19 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
let pendentes = despachos.concat(pareceres, deferimentos, expedientes).reverse().filter(data => data.workflowInstanceDataFields.Status == "Pending");
|
let pendentes = despachos.concat(pareceres, deferimentos, expedientes).reverse().filter(data => data.workflowInstanceDataFields.Status == "Pending");
|
||||||
this.count_total_pending = Object.keys(pendentes).length;
|
this.count_total_pending = Object.keys(pendentes).length;
|
||||||
|
|
||||||
this.processesbackend.GetTasksList("Despacho do Presidente da República", false).subscribe(e=>{
|
let diplomas = await this.processesbackend.GetTasksList("Despacho do Presidente da República", false).toPromise();
|
||||||
this.count_de_pr = Object.keys(e).length
|
|
||||||
});
|
let despachosPr = diplomas.filter(data => data.workflowInstanceDataFields.Status == "Active");
|
||||||
|
this.count_de_pr = Object.keys(despachosPr).length;
|
||||||
|
|
||||||
|
let diplomasValidar = diplomas.filter(data => data.workflowInstanceDataFields.Status == "Revising");
|
||||||
|
this.count_dip_pv = Object.keys(diplomasValidar).length;
|
||||||
|
|
||||||
this.processesbackend.GetTasksList("Expediente", false).subscribe(result => {
|
this.processesbackend.GetTasksList("Expediente", false).subscribe(result => {
|
||||||
let res = result.reverse().filter(data => data.workflowInstanceDataFields.Status == "Active");
|
let res = result.reverse().filter(data => data.workflowInstanceDataFields.Status == "Active");
|
||||||
this.count_exp_pr = Object.keys(res).length
|
this.count_exp_pr = Object.keys(res).length
|
||||||
});
|
});
|
||||||
|
|
||||||
this.processesbackend.GetTasksList("Despacho do Presidente da República", false).subscribe(res =>{
|
|
||||||
this.showLoader = false;
|
|
||||||
this.count_de_pr = Object.keys(res).length;
|
|
||||||
});
|
|
||||||
this.processesbackend.GetToApprovedEvents('PR','true').subscribe(res=>{
|
this.processesbackend.GetToApprovedEvents('PR','true').subscribe(res=>{
|
||||||
this.count_ev_pr = res;
|
this.count_ev_pr = res;
|
||||||
});
|
});
|
||||||
@@ -190,10 +190,11 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
this.count_ev_md = res;
|
this.count_ev_md = res;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
this.showLoader = false;
|
||||||
|
|
||||||
this.count_exp_pp = "-";
|
this.count_exp_pp = "-";
|
||||||
this.count_exp_pd = "-";
|
this.count_exp_pd = "-";
|
||||||
this.count_dip_apr = "-";
|
this.count_dip_apr = "-";
|
||||||
this.count_dip_pv = "-";
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="main-content d-flex height-100">
|
<div class="main-content d-flex height-100">
|
||||||
<div class="content d-flex flex-column" *ngIf="task">
|
<div class="content d-flex flex-column" *ngIf="task">
|
||||||
<div class="main-header ">
|
<div class="main-header ">
|
||||||
<div class="title-content d-flex justify-space-between align-center">
|
<div class="title-content d-flex justify-space-between ">
|
||||||
<div class="font-30 cursor-pointer" (click)="goBack()" defaultHref="#">
|
<div class="font-30 cursor-pointer" (click)="goBack()" defaultHref="#">
|
||||||
<ion-icon slot="end" src='assets/images/icons-arrow-arrow-left.svg'></ion-icon>
|
<ion-icon slot="end" src='assets/images/icons-arrow-arrow-left.svg'></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
@@ -15,9 +15,9 @@
|
|||||||
<ion-label class="title">{{ task.Folio}}</ion-label>
|
<ion-label class="title">{{ task.Folio}}</ion-label>
|
||||||
</div>
|
</div>
|
||||||
<div class="div-icon">
|
<div class="div-icon">
|
||||||
<ion-menu-button autoHide="false">
|
<div autoHide="false" class="d-flex">
|
||||||
<ion-icon name="ellipsis-vertical-outline"></ion-icon>
|
<ion-icon class="font-30" name="ellipsis-vertical-outline"></ion-icon>
|
||||||
</ion-menu-button>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -187,7 +187,8 @@ export class PedidoPage implements OnInit {
|
|||||||
"ActionTypeId": 95,
|
"ActionTypeId": 95,
|
||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewerUseComment": '',
|
"ReviewerUseComment": '',
|
||||||
}
|
},
|
||||||
|
"AttachmentList" :null,
|
||||||
}
|
}
|
||||||
this.processes.CompleteTask(body);
|
this.processes.CompleteTask(body);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<ion-header class="ion-no-border">
|
<ion-header>
|
||||||
<app-btn-modal-dismiss></app-btn-modal-dismiss>
|
<app-btn-modal-dismiss></app-btn-modal-dismiss>
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<div class="thetitle"><ion-label >Pendentes</ion-label></div>
|
<div class="thetitle"><ion-label >Pendentes</ion-label></div>
|
||||||
|
|||||||
@@ -81,10 +81,10 @@ segmentChanged(ev: any) {
|
|||||||
this.loading = true;
|
this.loading = true;
|
||||||
|
|
||||||
let result = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
|
let result = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
|
||||||
|
let despachosPr = result.reverse().filter(data => data.workflowInstanceDataFields.Status == "Active");
|
||||||
|
console.log(despachosPr);
|
||||||
|
|
||||||
console.log(result);
|
despachosPr.forEach( (element, index) => {
|
||||||
|
|
||||||
result.forEach( (element, index) => {
|
|
||||||
|
|
||||||
let task = {
|
let task = {
|
||||||
"SerialNumber": element.serialNumber,
|
"SerialNumber": element.serialNumber,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<ion-header class="ion-no-border">
|
<ion-header>
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<div class="thetitle"><ion-label >Despachos</ion-label></div>
|
<div class="thetitle"><ion-label >Despachos</ion-label></div>
|
||||||
<div class="theicon">
|
<div class="theicon">
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<ion-toolbar>
|
<!-- <ion-toolbar>
|
||||||
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)">
|
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)">
|
||||||
<ion-segment-button value="validar">
|
<ion-segment-button value="validar">
|
||||||
Diplomas por validar
|
Diplomas por validar
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
Diplomas assinados PR
|
Diplomas assinados PR
|
||||||
</ion-segment-button>
|
</ion-segment-button>
|
||||||
</ion-segment>
|
</ion-segment>
|
||||||
</ion-toolbar>
|
</ion-toolbar> -->
|
||||||
</ion-header>
|
</ion-header>
|
||||||
<ion-content>
|
<ion-content>
|
||||||
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
|
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
|
||||||
|
|||||||
@@ -28,12 +28,13 @@ constructor(
|
|||||||
private alertService: AlertService,
|
private alertService: AlertService,
|
||||||
) {
|
) {
|
||||||
this.profile = 'mdgpr';
|
this.profile = 'mdgpr';
|
||||||
|
this.segment = 'validar'
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
//Inicializar segment
|
//Inicializar segment
|
||||||
this.segment = 'validar';
|
this.segment = 'validar';
|
||||||
// this.LoadList();
|
this.LoadList();
|
||||||
}
|
}
|
||||||
segmentChanged(ev: any) {
|
segmentChanged(ev: any) {
|
||||||
this.LoadList();
|
this.LoadList();
|
||||||
@@ -44,8 +45,11 @@ notImplemented(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
async LoadList(){
|
async LoadList(){
|
||||||
this.diplomasList = new Array();
|
|
||||||
|
|
||||||
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
|
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
|
||||||
|
this.diplomasList = new Array();
|
||||||
|
|
||||||
console.log(diplomas);
|
console.log(diplomas);
|
||||||
switch (this.segment) {
|
switch (this.segment) {
|
||||||
case 'validar':
|
case 'validar':
|
||||||
@@ -97,7 +101,7 @@ async LoadList(){
|
|||||||
doRefresh(event) {
|
doRefresh(event) {
|
||||||
this.LoadList();
|
this.LoadList();
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
event.target.complete();
|
//event.target.complete();
|
||||||
}, 2000);
|
}, 2000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -120,5 +124,4 @@ async viewPedidoDetail(serialNumber:any) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<ion-header class="ion-no-border">
|
<ion-header>
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<div class="thetitle"><ion-label >Pedidos</ion-label></div>
|
<div class="thetitle"><ion-label >Pedidos</ion-label></div>
|
||||||
<div class="theicon">
|
<div class="theicon">
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<ion-header class="ion-no-border">
|
<ion-header>
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<div class="thetitle"><ion-label >Pendentes</ion-label></div>
|
<div class="thetitle"><ion-label >Pendentes</ion-label></div>
|
||||||
<div class="theicon">
|
<div class="theicon">
|
||||||
|
|||||||
Reference in New Issue
Block a user