diff --git a/package-lock.json b/package-lock.json
index 88a50acfd..228bc2678 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -17290,8 +17290,7 @@
},
"ssri": {
"version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz",
- "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==",
+ "resolved": "",
"dev": true,
"requires": {
"figgy-pudding": "^3.5.1"
diff --git a/package.json b/package.json
index 4811311de..386204484 100644
--- a/package.json
+++ b/package.json
@@ -138,4 +138,4 @@
"url": "git+https://Kayaya@bitbucket.org/equilibriumito/gabinete-digital.git"
},
"license": "ISC"
-}
\ No newline at end of file
+}
diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts
index e4573a5ba..9a6bf1379 100644
--- a/src/app/app-routing.module.ts
+++ b/src/app/app-routing.module.ts
@@ -39,6 +39,18 @@ const routes: Routes = [
path: 'document-detail',
loadChildren: () => import('./modals/document-detail/document-detail.module').then( m => m.DocumentDetailPageModule)
},
+ {
+ path: 'edit-group',
+ loadChildren: () => import('./shared/chat/edit-group/edit-group.module').then( m => m.EditGroupPageModule)
+ },
+ {
+ path: 'pedidos',
+ loadChildren: () => import('./shared/gabinete-digital/pedidos/pedidos.module').then( m => m.PedidosPageModule)
+ },
+ {
+ path: 'despachos',
+ loadChildren: () => import('./shared/gabinete-digital/despachos/despachos.module').then( m => m.DespachosPageModule)
+ },
/* {
path: 'chat',
diff --git a/src/app/home/home-routing.module.ts b/src/app/home/home-routing.module.ts
index 2cddad43e..8a8e01dc6 100644
--- a/src/app/home/home-routing.module.ts
+++ b/src/app/home/home-routing.module.ts
@@ -229,7 +229,7 @@ const routes: Routes = [
{
path:'',
loadChildren: ()=> import('../modals/document-detail/document-detail.module').then(m => m.DocumentDetailPageModule)
- }
+ },
]
},
]
diff --git a/src/app/pages/chat/chat.module.ts b/src/app/pages/chat/chat.module.ts
index fb3ceaaeb..52cbac45d 100644
--- a/src/app/pages/chat/chat.module.ts
+++ b/src/app/pages/chat/chat.module.ts
@@ -16,6 +16,7 @@ import { ContactsPage } from 'src/app/shared/chat/messages/contacts/contacts.pag
import { NewGroupPage } from 'src/app/shared/chat/new-group/new-group.page';
import { GroupContactsPage } from 'src/app/shared/chat/group-messages/group-contacts/group-contacts.page';
import { PipesModule } from 'src/app/pipes/pipes.module';
+import { EditGroupPage } from 'src/app/shared/chat/edit-group/edit-group.page';
@NgModule({
imports: [
@@ -33,6 +34,7 @@ import { PipesModule } from 'src/app/pipes/pipes.module';
ContactsPage,
GroupMessagesPage,
NewGroupPage,
+ EditGroupPage,
GroupContactsPage,
EmptyChatPage,
],
@@ -42,6 +44,7 @@ import { PipesModule } from 'src/app/pipes/pipes.module';
ContactsPage,
GroupMessagesPage,
NewGroupPage,
+ EditGroupPage,
GroupContactsPage,
EmptyChatPage,
]
diff --git a/src/app/pages/chat/chat.page.html b/src/app/pages/chat/chat.page.html
index ce0b7defd..d67ffc9d0 100644
--- a/src/app/pages/chat/chat.page.html
+++ b/src/app/pages/chat/chat.page.html
@@ -94,16 +94,40 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+ (openGroupContacts)="openGroupContactsPage($event)"
+ (openEditGroupPage)="openEditGroupPage($event)"
+ *ngIf="showGroupMessages"
+ class="d-flex height-100 flex-column"
+ [roomId]="roomId" #messagecontainer>
+
diff --git a/src/app/pages/chat/chat.page.ts b/src/app/pages/chat/chat.page.ts
index b998aa2b3..a16a19aa6 100644
--- a/src/app/pages/chat/chat.page.ts
+++ b/src/app/pages/chat/chat.page.ts
@@ -20,6 +20,7 @@ import { NewGroupPage } from './new-group/new-group.page';
import { NewchatPage } from './newchat/newchat.page';
import { Storage } from '@ionic/storage';
import { AlertService } from 'src/app/services/alert.service';
+import { EditGroupPage } from 'src/app/shared/chat/edit-group/edit-group.page';
@Component({
selector: 'app-chat',
@@ -63,6 +64,7 @@ export class ChatPage implements OnInit {
showMessages=false;
showContacts=false;
showNewGroup=false;
+ showEditGroup=false;
showGroupMessages=false;
showGroupContacts=false;
emptyTextDescription = 'Sem conversa selecionada';
@@ -105,6 +107,7 @@ export class ChatPage implements OnInit {
this.showMessages=false;
this.showContacts=false;
this.showNewGroup=false;
+ this.showEditGroup=false;
this.showGroupMessages=false;
this.showEmptyComponent=false;
this.showGroupContacts=false;
@@ -157,6 +160,17 @@ export class ChatPage implements OnInit {
this.showNewGroup=true;
}
}
+
+ openEditGroupPage(rid) {
+ if( window.innerWidth <= 1024){
+ this.editGroup(rid);
+ }
+ else{
+ this.closeAllDesktopComponents();
+ this.showEditGroup=true;
+ }
+ }
+
openGroupMessagesPage(data) {
console.log('HERE');
@@ -252,7 +266,6 @@ export class ChatPage implements OnInit {
const modal = await this.modalController.create({
component: ContactsPage,
cssClass: 'contacts',
- backdropDismiss: false,
});
await modal.present();
modal.onDidDismiss();
@@ -261,11 +274,26 @@ export class ChatPage implements OnInit {
const modal = await this.modalController.create({
component: NewGroupPage,
cssClass: 'new-group',
- backdropDismiss: false,
});
await modal.present();
modal.onDidDismiss();
}
+
+ async editGroup(roomId){
+ const modal = await this.modalController.create({
+ component: EditGroupPage,
+ cssClass: 'edit-group',
+ componentProps: {
+ roomId: roomId,
+ },
+ });
+ await modal.present();
+ modal.onDidDismiss().then((res)=>{
+ console.log(res.data);
+ this.modalController.dismiss(res.data);
+ });
+ }
+
async openMessagesModal(roomId:any){
this.closeAllDesktopComponents();
@@ -280,7 +308,6 @@ export class ChatPage implements OnInit {
const modal = await this.modalController.create({
component: MessagesPage,
cssClass: classs,
- backdropDismiss: false,
componentProps: {
roomId: roomId,
},
@@ -301,7 +328,6 @@ export class ChatPage implements OnInit {
const modal = await this.modalController.create({
component: GroupMessagesPage,
cssClass: classs,
- backdropDismiss: false,
componentProps: {
roomId: roomId,
},
diff --git a/src/app/pages/chat/edit-group/edit-group.page.html b/src/app/pages/chat/edit-group/edit-group.page.html
index 70ef13159..ebba2fd89 100644
--- a/src/app/pages/chat/edit-group/edit-group.page.html
+++ b/src/app/pages/chat/edit-group/edit-group.page.html
@@ -3,7 +3,9 @@
-
+
Alterar assunto
diff --git a/src/app/pages/chat/edit-group/edit-group.page.ts b/src/app/pages/chat/edit-group/edit-group.page.ts
index c267038f5..4a9fd2a85 100644
--- a/src/app/pages/chat/edit-group/edit-group.page.ts
+++ b/src/app/pages/chat/edit-group/edit-group.page.ts
@@ -14,6 +14,7 @@ export class EditGroupPage implements OnInit {
selectedDuration = ['','',''];
groupName:string;
room:any;
+ roomId:string;
constructor(
private modalController: ModalController,
@@ -21,12 +22,19 @@ export class EditGroupPage implements OnInit {
private chatService: ChatService,
private navParams: NavParams,
) {
- this.room = this.navParams.get('room');
- this.groupName = this.room.name.split('-').join(' ');
+ this.roomId = this.navParams.get('roomId');
}
ngOnInit() {
- console.log(this.room);
+ this.getRoomInfo();
+ }
+
+ getRoomInfo(){
+ this.chatService.getRoomInfo(this.roomId).subscribe(room=>{
+ this.room = room['room'];
+ console.log(this.room);
+ this.groupName = this.room.name.split('-').join(' ');
+ });
}
close(){
diff --git a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.html b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.html
index 7b473c119..09dfeb3d2 100644
--- a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.html
+++ b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.html
@@ -3,7 +3,9 @@
-
+
Contactos
@@ -33,11 +35,16 @@
Contactos selecção:
-
+
+
+
+ {{user.name}}
+
+
+
+ Apagar
+
+
diff --git a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.scss b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.scss
index b6e007730..7879b0cae 100644
--- a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.scss
+++ b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.scss
@@ -93,10 +93,15 @@
.members-checkbox{
display: flex;
- margin: .5px 20px .5px 20px !important;
+ margin: 0px 20px 0px 20px !important;
overflow: auto;
align-items: center;
+ border-bottom: 1px solid #ebebeb;
+ }
+ .members-options{
+ margin: 0px 20px 0px 19px !important;
+ overflow: auto;
}
.item-divider{
@@ -114,11 +119,17 @@
align-items: center;
}
+
+ .members-checkbox ion-checkbox{
+ --border-color: #0d89d1;
+ --background-checked:#0d89d1;
+ float: left;
+ }
- .item-checkbox ion-checkbox, .members-checkbox ion-checkbox{
+ .item-checkbox ion-checkbox{
--border-color: #0d89d1;
--background-checked:#0d89d1;
- float: left;
+ float: left;
}
.item-checkbox p, .members-checkbox p{
diff --git a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.ts b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.ts
index c1fdc3618..3219a3666 100644
--- a/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.ts
+++ b/src/app/pages/chat/group-messages/group-contacts/group-contacts.page.ts
@@ -53,10 +53,47 @@ export class GroupContactsPage implements OnInit {
ngOnInit() {
this.loadUsers();
+ this.getMembers();
console.log(this.groupName);
console.log(this.isGroupCreated);
}
+ deleteMember(data:any){
+ let body = {
+ "roomId": this.room._id,
+ "userId": data._id,
+ }
+ console.log(body);
+ if(this.room.t == "p"){
+ this.chatService.removeGroupMember(body).subscribe(res=>{
+ console.log(res);
+ this.getMembers();
+ });
+ }
+ else if(this.room.t == "c"){
+ this.chatService.removeChannelMember(body).subscribe(res=>{
+ console.log(res);
+ this.getMembers();
+ });
+ }
+ }
+
+ getMembers(){
+ if(this.room.t == "p"){
+ this.chatService.getGroupMembers(this.room._id).subscribe(res=>{
+ this.members = res['members'];
+ this.loadUsers();
+ });
+ }
+ else if(this.room.t == "c"){
+ this.chatService.getChannelMembers(this.room._id).subscribe(res=>{
+ this.members = res['members'];
+ this.loadUsers();
+ });
+ }
+ }
+
+
loadUsers(){
this.options = {
headers: this.headers,
@@ -68,7 +105,6 @@ export class GroupContactsPage implements OnInit {
else{
this.contacts = res.users.filter(data => data.username != this.loggedUser.me.username);
}
-
this.users = this.contacts.sort((a,b) => {
if(a.name < b.name){
return -1;
@@ -98,8 +134,10 @@ export class GroupContactsPage implements OnInit {
return null;
}
- doRefresh(event){
-
+ doRefresh(ev){
+ this.loadUsers();
+ this.getMembers();
+ ev.target.complete();
}
async close(){
diff --git a/src/app/pages/chat/group-messages/group-messages.page.html b/src/app/pages/chat/group-messages/group-messages.page.html
index a42f3ea1f..263877ca7 100644
--- a/src/app/pages/chat/group-messages/group-messages.page.html
+++ b/src/app/pages/chat/group-messages/group-messages.page.html
@@ -48,9 +48,12 @@
- Alterou o assunto de para "{{msg.msg.split('-').join(' ')}}"
+ Alterou o assunto para "{{msg.msg.split('-').join(' ')}}"
+
+ {{leaveStatus}}
+
+
+
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }}
+
+
+ {{task.Remetente}}
+
+
+
+
+
+
+
+ {{ task.Folio }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.scss b/src/app/shared/gabinete-digital/despachos/despachos.page.scss
new file mode 100644
index 000000000..e624d0744
--- /dev/null
+++ b/src/app/shared/gabinete-digital/despachos/despachos.page.scss
@@ -0,0 +1,177 @@
+@import '~src/function.scss';
+/* CONTENT */
+:host{
+ padding: 30px 20px 0 20px !important;
+ margin: 0;
+}
+.title{
+ font-family: Roboto;
+ font-size: 25px;
+ color:#000;
+ overflow: auto;
+
+ .thetitle{
+ width: fit-content;
+ float: left;
+ }
+ .theicon{
+ width: fit-content;
+ float: right;
+ }
+ }
+.item-list-small{
+ font-size: 11px;
+ overflow: hidden;
+ }
+ .ion-item-class{
+ padding: 0;
+
+ }
+ .label-text{
+ width: 100%;
+ padding: 0;
+ margin: 0;
+ }
+//DIV
+ion-item{
+ --background: none;
+}
+.item {
+ //border-radius: 15px;
+ //box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
+ //Sborder: solid 1px #e9e9e9;
+ background-color: var(--white);
+ margin: 0 auto;
+ //padding: 10px;
+ margin-bottom: 10px;
+ overflow: hidden;
+ }
+.div-content-expediente{
+ width: 100%;
+ float: left;
+ border-left: 3px solid #dae3f3;
+ padding:5px 5px 15px 5px;
+ margin: 10px 0 10px 0;
+ background: #dae3f3;
+ border-radius: 20px;
+}
+.div-content-pendentes{
+ width: 100%;
+ float: left;
+ border-left: 3px solid #d9d9d9;
+ padding: 5px;
+}
+ .div-content-expediente h3, .div-content-pendentes h3{
+ margin: 0;
+ padding: 0;
+ font-size: 14pt;
+ width: 100%;
+ }
+ .div-icon{
+ width: 10%;
+ font-size: 20px;
+ float: left;
+ color: #808080;
+ }
+ .div-icon ion-icon{
+ display: block;
+ margin: 0 auto;
+
+ }
+ .div-content-expediente p, .div-content-pendentes p{
+ font-size: 14pt;
+ color: rgb(94, 92, 92);
+ padding: 0;
+ margin: 0;
+ }
+ .span-left{
+ /* border: 1px solid red; */
+ float: left;
+ font-size: 12px;
+ padding-left: 18px;
+ }
+ .span-right{
+ /* border: 1px solid blue; */
+ text-align: right;
+ float: right;
+ font-size: 12px;
+ padding-right: 18px;
+}
+
+/* New CSS */
+.expediente{
+ padding-top: 10px;
+}
+.exp-list-item{
+ //width: 368px;
+ overflow: auto;
+ /* border-bottom: 1px solid gray; */
+ margin: 10px auto;
+}
+.exp-top-detail{
+ width: 100%;
+ overflow: auto;
+}
+.exp-date{
+ width: auto;
+ font-family: Roboto;
+ font-size: 13px;
+ font-weight: normal;
+ font-stretch: normal;
+ font-style: normal;
+ line-height: normal;
+ letter-spacing: normal;
+ color: #797979;
+ float: left;
+}
+.exp-remetente{
+ //width: 200px;
+ font-family: Roboto;
+ font-size: 13px;
+ font-weight: normal;
+ color: #000000;
+ float: left;
+ margin-left: 16px;
+
+}
+.exp-icon{
+ width: 45px;
+ float: right;
+ font-size: 13px;
+}
+.exp-icon ion-icon{
+ font-size: 25px;
+ color: #42b9fe;
+}
+.exp-bottom-detail{
+ float: left;
+ font-family: Roboto;
+ font-size: 16px;
+ font-weight: 700;
+ color: #0d89d1;
+}
+.div-top-header{
+ width: 400px;
+ margin: 6px auto;
+ background-color: #0782c9;
+ overflow: auto;
+}
+.div-search{
+ font-size: 45px;
+ float: left;
+ margin: 0 0 0 10px
+}
+.div-logo{
+ background: transparent;
+ width: 150px;
+ margin: 2.5px 0 2.5px 71px;
+ float: left;
+}
+.div-logo img{
+ width: 100%;
+}
+.div-profile{
+ font-size: 45px;
+ float: right;
+ margin-right: 10px;
+}
\ No newline at end of file
diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts b/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts
new file mode 100644
index 000000000..efae597ec
--- /dev/null
+++ b/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts
@@ -0,0 +1,24 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+import { IonicModule } from '@ionic/angular';
+
+import { DespachosPage } from './despachos.page';
+
+describe('DespachosPage', () => {
+ let component: DespachosPage;
+ let fixture: ComponentFixture
;
+
+ beforeEach(waitForAsync(() => {
+ TestBed.configureTestingModule({
+ declarations: [ DespachosPage ],
+ imports: [IonicModule.forRoot()]
+ }).compileComponents();
+
+ fixture = TestBed.createComponent(DespachosPage);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ }));
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.ts b/src/app/shared/gabinete-digital/despachos/despachos.page.ts
new file mode 100644
index 000000000..b12d320c1
--- /dev/null
+++ b/src/app/shared/gabinete-digital/despachos/despachos.page.ts
@@ -0,0 +1,115 @@
+import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { CalendarComponent } from 'ionic2-calendar';
+
+import { DailyWorkTask } from '../../../models/dailyworktask.model';
+import { ProcessesService } from 'src/app/services/processes.service';
+import { formatDate } from '@angular/common';
+import { LoadingService } from 'src/app/services/loading.service';
+import { ModalController, NavParams } from '@ionic/angular';
+import { ExpedienteDetailPage } from 'src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page';
+import { AlertService } from 'src/app/services/alert.service';
+
+@Component({
+ selector: 'app-despachos',
+ templateUrl: './despachos.page.html',
+ styleUrls: ['./despachos.page.scss'],
+})
+export class DespachosPage implements OnInit {
+ //profile:string;
+
+ @ViewChild(CalendarComponent) myCal: CalendarComponent;
+
+ taskslist:DailyWorkTask[];
+ despachoList:DailyWorkTask[];
+ deferimentoList:DailyWorkTask[];
+ taskType: string;
+ serialNumber:string;
+
+ @Input() profile:string;
+ segment:string;
+ @Output() openExpedientDetail:EventEmitter = new EventEmitter();
+
+ constructor(
+ private processes:ProcessesService,
+ private modalController: ModalController,
+ private alertService: AlertService,
+ ) {
+ this.profile = 'mdgpr';
+ }
+
+ ngOnInit() {
+ //Inicializar segment
+ this.segment = "despachos";
+ this.LoadList();
+ }
+ segmentChanged(ev: any) {
+ this.LoadList();
+ }
+
+ notImplemented(){
+ this.alertService.presentAlert('Funcionalidade em desenvolvimento');
+ }
+
+ openExpedientDetailPage(data){
+ console.log(data);
+ this.openExpedientDetail.emit(data);
+ }
+
+ LoadList(){
+ this.processes.GetTasksList("Despacho", false).subscribe(result => {
+ console.log(result);
+
+ this.despachoList = new Array();
+ let res = result.reverse();
+ res.forEach(element => {
+ let task: DailyWorkTask = {
+ "SerialNumber": element.serialNumber,
+ "Folio": element.workflowInstanceFolio,
+ "Senders": element.originator.email,
+ "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
+ "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
+ "Remetente": element.workflowInstanceDataFields.Remetente
+ }
+ this.despachoList.push(task);
+ });
+ console.log(this.despachoList);
+ });
+ }
+
+ doRefresh(event) {
+ this.LoadList();
+
+ setTimeout(() => {
+ event.target.complete();
+ }, 2000);
+ }
+
+ async viewExpedientDetail(serialNumber:any) {
+ console.log(this.profile);
+
+ let classs;
+ if( window.innerWidth <= 800){
+ classs = 'modal'
+ } else {
+ classs = 'modal modal-desktop'
+ }
+
+ const modal = await this.modalController.create({
+ component: ExpedienteDetailPage,
+ componentProps:{
+ enterAnimation: "",
+ serialNumber: serialNumber,
+ profile: this.profile,
+ },
+ cssClass: classs,
+ });
+ await modal.present();
+ modal.onDidDismiss().then((res)=>{
+ console.log('refresh list');
+ this.LoadList();
+ });
+ }
+
+}
+
\ No newline at end of file
diff --git a/src/app/shared/gabinete-digital/expedients/expedients.page.ts b/src/app/shared/gabinete-digital/expedients/expedients.page.ts
index 3ea384556..61e175436 100644
--- a/src/app/shared/gabinete-digital/expedients/expedients.page.ts
+++ b/src/app/shared/gabinete-digital/expedients/expedients.page.ts
@@ -52,6 +52,7 @@ export class ExpedientsPage implements OnInit {
LoadList(){
this.processes.GetTasksList("Expediente", false).subscribe(result => {
+ console.log(result);
this.taskslist = new Array();
let res = result.reverse();
res.forEach(element => {
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos-routing.module.ts b/src/app/shared/gabinete-digital/pedidos/pedidos-routing.module.ts
new file mode 100644
index 000000000..27d14b94e
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos-routing.module.ts
@@ -0,0 +1,17 @@
+import { NgModule } from '@angular/core';
+import { Routes, RouterModule } from '@angular/router';
+
+import { PedidosPage } from './pedidos.page';
+
+const routes: Routes = [
+ {
+ path: '',
+ component: PedidosPage
+ }
+];
+
+@NgModule({
+ imports: [RouterModule.forChild(routes)],
+ exports: [RouterModule],
+})
+export class PedidosPageRoutingModule {}
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.module.ts b/src/app/shared/gabinete-digital/pedidos/pedidos.module.ts
new file mode 100644
index 000000000..bd2b3de89
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos.module.ts
@@ -0,0 +1,20 @@
+import { NgModule } from '@angular/core';
+import { CommonModule } from '@angular/common';
+import { FormsModule } from '@angular/forms';
+
+import { IonicModule } from '@ionic/angular';
+
+import { PedidosPageRoutingModule } from './pedidos-routing.module';
+
+import { PedidosPage } from './pedidos.page';
+
+@NgModule({
+ imports: [
+ CommonModule,
+ FormsModule,
+ IonicModule,
+ PedidosPageRoutingModule
+ ],
+ declarations: [PedidosPage]
+})
+export class PedidosPageModule {}
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.html b/src/app/shared/gabinete-digital/pedidos/pedidos.page.html
new file mode 100644
index 000000000..09539eae4
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.html
@@ -0,0 +1,116 @@
+
+
+
+
+
+ Pedidos de Parecer
+
+
+ Pedidos de Defereimento
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }}
+
+
+ {{task.Remetente}}
+
+
+
+
+
+
+
+ {{ task.Folio }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }}
+
+
+ {{task.Remetente}}
+
+
+
+
+
+
+
+ {{ task.Folio }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss b/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss
new file mode 100644
index 000000000..e624d0744
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss
@@ -0,0 +1,177 @@
+@import '~src/function.scss';
+/* CONTENT */
+:host{
+ padding: 30px 20px 0 20px !important;
+ margin: 0;
+}
+.title{
+ font-family: Roboto;
+ font-size: 25px;
+ color:#000;
+ overflow: auto;
+
+ .thetitle{
+ width: fit-content;
+ float: left;
+ }
+ .theicon{
+ width: fit-content;
+ float: right;
+ }
+ }
+.item-list-small{
+ font-size: 11px;
+ overflow: hidden;
+ }
+ .ion-item-class{
+ padding: 0;
+
+ }
+ .label-text{
+ width: 100%;
+ padding: 0;
+ margin: 0;
+ }
+//DIV
+ion-item{
+ --background: none;
+}
+.item {
+ //border-radius: 15px;
+ //box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
+ //Sborder: solid 1px #e9e9e9;
+ background-color: var(--white);
+ margin: 0 auto;
+ //padding: 10px;
+ margin-bottom: 10px;
+ overflow: hidden;
+ }
+.div-content-expediente{
+ width: 100%;
+ float: left;
+ border-left: 3px solid #dae3f3;
+ padding:5px 5px 15px 5px;
+ margin: 10px 0 10px 0;
+ background: #dae3f3;
+ border-radius: 20px;
+}
+.div-content-pendentes{
+ width: 100%;
+ float: left;
+ border-left: 3px solid #d9d9d9;
+ padding: 5px;
+}
+ .div-content-expediente h3, .div-content-pendentes h3{
+ margin: 0;
+ padding: 0;
+ font-size: 14pt;
+ width: 100%;
+ }
+ .div-icon{
+ width: 10%;
+ font-size: 20px;
+ float: left;
+ color: #808080;
+ }
+ .div-icon ion-icon{
+ display: block;
+ margin: 0 auto;
+
+ }
+ .div-content-expediente p, .div-content-pendentes p{
+ font-size: 14pt;
+ color: rgb(94, 92, 92);
+ padding: 0;
+ margin: 0;
+ }
+ .span-left{
+ /* border: 1px solid red; */
+ float: left;
+ font-size: 12px;
+ padding-left: 18px;
+ }
+ .span-right{
+ /* border: 1px solid blue; */
+ text-align: right;
+ float: right;
+ font-size: 12px;
+ padding-right: 18px;
+}
+
+/* New CSS */
+.expediente{
+ padding-top: 10px;
+}
+.exp-list-item{
+ //width: 368px;
+ overflow: auto;
+ /* border-bottom: 1px solid gray; */
+ margin: 10px auto;
+}
+.exp-top-detail{
+ width: 100%;
+ overflow: auto;
+}
+.exp-date{
+ width: auto;
+ font-family: Roboto;
+ font-size: 13px;
+ font-weight: normal;
+ font-stretch: normal;
+ font-style: normal;
+ line-height: normal;
+ letter-spacing: normal;
+ color: #797979;
+ float: left;
+}
+.exp-remetente{
+ //width: 200px;
+ font-family: Roboto;
+ font-size: 13px;
+ font-weight: normal;
+ color: #000000;
+ float: left;
+ margin-left: 16px;
+
+}
+.exp-icon{
+ width: 45px;
+ float: right;
+ font-size: 13px;
+}
+.exp-icon ion-icon{
+ font-size: 25px;
+ color: #42b9fe;
+}
+.exp-bottom-detail{
+ float: left;
+ font-family: Roboto;
+ font-size: 16px;
+ font-weight: 700;
+ color: #0d89d1;
+}
+.div-top-header{
+ width: 400px;
+ margin: 6px auto;
+ background-color: #0782c9;
+ overflow: auto;
+}
+.div-search{
+ font-size: 45px;
+ float: left;
+ margin: 0 0 0 10px
+}
+.div-logo{
+ background: transparent;
+ width: 150px;
+ margin: 2.5px 0 2.5px 71px;
+ float: left;
+}
+.div-logo img{
+ width: 100%;
+}
+.div-profile{
+ font-size: 45px;
+ float: right;
+ margin-right: 10px;
+}
\ No newline at end of file
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.spec.ts b/src/app/shared/gabinete-digital/pedidos/pedidos.page.spec.ts
new file mode 100644
index 000000000..3b94a96d9
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.spec.ts
@@ -0,0 +1,24 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+import { IonicModule } from '@ionic/angular';
+
+import { PedidosPage } from './pedidos.page';
+
+describe('PedidosPage', () => {
+ let component: PedidosPage;
+ let fixture: ComponentFixture;
+
+ beforeEach(waitForAsync(() => {
+ TestBed.configureTestingModule({
+ declarations: [ PedidosPage ],
+ imports: [IonicModule.forRoot()]
+ }).compileComponents();
+
+ fixture = TestBed.createComponent(PedidosPage);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ }));
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts b/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts
new file mode 100644
index 000000000..52a0c313e
--- /dev/null
+++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts
@@ -0,0 +1,144 @@
+import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { CalendarComponent } from 'ionic2-calendar';
+
+import { DailyWorkTask } from '../../../models/dailyworktask.model';
+import { ProcessesService } from 'src/app/services/processes.service';
+import { formatDate } from '@angular/common';
+import { LoadingService } from 'src/app/services/loading.service';
+import { ModalController, NavParams } from '@ionic/angular';
+import { ExpedienteDetailPage } from 'src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page';
+import { AlertService } from 'src/app/services/alert.service';
+
+@Component({
+ selector: 'app-pedidos',
+ templateUrl: './pedidos.page.html',
+ styleUrls: ['./pedidos.page.scss'],
+})
+export class PedidosPage implements OnInit {
+
+ //profile:string;
+
+ @ViewChild(CalendarComponent) myCal: CalendarComponent;
+
+ taskslist:DailyWorkTask[];
+ parecerList:DailyWorkTask[];
+ deferimentoList:DailyWorkTask[];
+ taskType: string;
+ serialNumber:string;
+
+ @Input() profile:string;
+ @Input() segment:string;
+ @Output() openExpedientDetail:EventEmitter = new EventEmitter();
+
+ constructor(
+ private processes:ProcessesService,
+ private modalController: ModalController,
+ private alertService: AlertService,
+ ) {
+ this.profile = 'mdgpr';
+ }
+
+ ngOnInit() {
+ //Inicializar segment
+ this.LoadList();
+ }
+ segmentChanged(ev: any) {
+ this.LoadList();
+ }
+
+ notImplemented(){
+ this.alertService.presentAlert('Funcionalidade em desenvolvimento');
+ }
+
+ openExpedientDetailPage(data){
+ console.log(data);
+ this.openExpedientDetail.emit(data);
+ }
+
+ LoadList(){
+ if(this.segment == 'parecer'){
+ this.taskType = "Pedido de Parecer";
+ this.processes.GetTasksList("Pedido de Parecer", false).subscribe(result => {
+ console.log(result);
+
+ this.parecerList = new Array();
+ let res = result.reverse();
+ res.forEach(element => {
+ let task: DailyWorkTask = {
+ "SerialNumber": element.serialNumber,
+ "Folio": element.workflowInstanceFolio,
+ "Senders": element.originator.email,
+ "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
+ "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
+ "Remetente": element.workflowInstanceDataFields.Remetente
+ }
+ this.parecerList.push(task);
+ });
+ console.log(this.parecerList);
+
+ });
+ }
+ else if(this.segment == 'deferimento'){
+ this.taskType = "Pedido de Deferimento";
+ this.processes.GetTasksList("Pedido de Deferimento", false).subscribe(result => {
+ console.log(result);
+
+ this.deferimentoList = new Array();
+ let res = result.reverse();
+ res.forEach(element => {
+ let task: DailyWorkTask = {
+ "SerialNumber": element.serialNumber,
+ "Folio": element.workflowInstanceFolio,
+ "Senders": element.originator.email,
+ "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
+ "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
+ "Remetente": element.workflowInstanceDataFields.Remetente
+ }
+ this.deferimentoList.push(task);
+ });
+ console.log(this.deferimentoList);
+
+ });
+ }
+ console.log(this.taskType);
+
+
+ }
+
+ doRefresh(event) {
+ this.LoadList();
+
+ setTimeout(() => {
+ event.target.complete();
+ }, 2000);
+ }
+
+ async viewExpedientDetail(serialNumber:any) {
+ console.log(this.profile);
+
+ let classs;
+ if( window.innerWidth <= 800){
+ classs = 'modal'
+ } else {
+ classs = 'modal modal-desktop'
+ }
+
+ const modal = await this.modalController.create({
+ component: ExpedienteDetailPage,
+ componentProps:{
+ enterAnimation: "",
+ serialNumber: serialNumber,
+ profile: this.profile,
+ },
+ cssClass: classs,
+ });
+ await modal.present();
+ modal.onDidDismiss().then((res)=>{
+ console.log('refresh list');
+ this.LoadList();
+ });
+ }
+
+}
+
\ No newline at end of file
diff --git a/src/app/shared/popover/chat-popover/chat-popover.page.ts b/src/app/shared/popover/chat-popover/chat-popover.page.ts
index 297c2af33..b3a18e6f2 100644
--- a/src/app/shared/popover/chat-popover/chat-popover.page.ts
+++ b/src/app/shared/popover/chat-popover/chat-popover.page.ts
@@ -46,12 +46,12 @@ export class ChatPopoverPage implements OnInit {
this.room = room['room'];
if(this.room.t === 'p'){
- this.chatService.closeGroup(body).subscribe(res=>{
+ this.chatService.leaveGroup(body).subscribe(res=>{
console.log(res);
});
}
else{
- this.chatService.closeChannel(body).subscribe(res=>{
+ this.chatService.leaveChannel(body).subscribe(res=>{
console.log(res);
});
}
@@ -83,7 +83,7 @@ export class ChatPopoverPage implements OnInit {
/* const modal = await this.modalController.create({
component: EditGroupPage,
componentProps: {
- //room: this.room,
+ roomId: this.roomId,
},
cssClass: 'contacts',
backdropDismiss: false
diff --git a/src/theme/variables.scss b/src/theme/variables.scss
index 66fa65889..1300d7c22 100644
--- a/src/theme/variables.scss
+++ b/src/theme/variables.scss
@@ -265,7 +265,7 @@
background: rgba(51, 51, 51, 0.3);
}
.modal, .newchat, .new-group, .contacts, .group-messages, .custom-modal{
- padding-top: 75px;
+ padding-top: 65px;
--border-radius: 25px 25px 0 0;
--border-width:0px;
}