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}}

- -
+ + + +

{{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
+
+ +
+
+ + + + 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; }