mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-19 21:06:06 +00:00
Merge branch 'developer' into feature/pushNotifications
This commit is contained in:
@@ -20,14 +20,14 @@
|
||||
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<h2 class="capitaliseText">{{ viewTitle }}</h2>
|
||||
<div class="drop-down">
|
||||
<!-- <div class="drop-down">
|
||||
<ion-icon slot="icon-only" class="arrow-down" src="assets/images/icons-arrow-arrow-down.svg"></ion-icon>
|
||||
<div class="drop-down-container">
|
||||
<ul>
|
||||
<li *ngFor="let month of monthList" (click)="dropDownChangeDate(month.id)" >{{ month.name }}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
<!-- Move forward one screen of the slides -->
|
||||
<div (click)="next()" class="arrow">
|
||||
<ion-icon slot="icon-only" src="assets/images/icons-calendar-arrow-right.svg"></ion-icon>
|
||||
@@ -35,9 +35,12 @@
|
||||
|
||||
</ion-row>
|
||||
<ion-row class="ion-align-items-center">
|
||||
<ion-icon class="right-icons" name="add-circle-outline"></ion-icon>
|
||||
<ion-icon class="right-icons" src="assets/images/icons-received-event.svg"></ion-icon>
|
||||
<ion-icon class="right-icons" src="assets/images/icons-add-new-event.svg" (click)="openCalModal()" ></ion-icon>
|
||||
<div class="arrow">
|
||||
<ion-icon *ngIf="profile == 'mdgpr' " (click)="changeProfile()" class="right-icons" slot="icon-only"src="assets/images/icons-profile-calendar-md.svg"></ion-icon>
|
||||
<ion-icon *ngIf="profile == 'pr' " (click)="changeProfile()" class="right-icons" slot="icon-only"src="assets/images/icons-profile-calendar-pr.svg"></ion-icon>
|
||||
</div>
|
||||
<ion-icon (click)="viewEventsToApprove()" class="right-icons" src="assets/images/icons-received-event.svg"></ion-icon>
|
||||
<ion-icon (click)="openAddEvent()" class="right-icons" src="assets/images/icons-add-new-event.svg" ></ion-icon>
|
||||
</ion-row>
|
||||
</ion-row>
|
||||
|
||||
@@ -174,6 +177,17 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Calendar currente date -->
|
||||
<ion-row class="ion-justify-content-between ion-align-items-center currente-date-timelien">
|
||||
<ion-row class="timeline-date">
|
||||
<span *ngIf="timelineIsCurrentDate()">Hoje, </span> {{ timelineDate }}
|
||||
</ion-row>
|
||||
<!-- <ion-row class="filter ion-align-items-center">
|
||||
<div class="filter-name">Todos</div>
|
||||
<ion-icon class="arrow-down" src="assets/images/icons-arrow-arrow-down.svg"></ion-icon>
|
||||
</ion-row> -->
|
||||
</ion-row>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -187,18 +201,6 @@
|
||||
</ion-refresher-content>
|
||||
</ion-refresher>
|
||||
|
||||
<!-- Calendar currente date -->
|
||||
|
||||
<ion-row class="ion-justify-content-between ion-align-items-center currente-date-timelien">
|
||||
<ion-row class="timeline-date">
|
||||
Hoje, {{ timelineDate }}
|
||||
</ion-row>
|
||||
<ion-row class="filter ion-align-items-center">
|
||||
<div class="filter-name">Todos</div>
|
||||
<ion-icon class="arrow-down" src="assets/images/icons-arrow-arrow-down.svg"></ion-icon>
|
||||
</ion-row>
|
||||
</ion-row>
|
||||
|
||||
<!-- Timeline -->
|
||||
<div *ngIf="showTimeline">
|
||||
<mwl-demo-utils-calendar-header class="timeline"
|
||||
|
||||
@@ -389,19 +389,27 @@ label{
|
||||
|
||||
|
||||
.capitaliseText{
|
||||
min-width: 159px;
|
||||
min-width: 155px;
|
||||
text-align: center;
|
||||
font-weight: normal;
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
.arrow{
|
||||
padding: 0px 6px;
|
||||
padding: 0px 0px;
|
||||
}
|
||||
|
||||
.right-icons{
|
||||
padding: 0px 4px;
|
||||
padding: 0px 9px
|
||||
}
|
||||
|
||||
|
||||
.capitaliseText{
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
|
||||
.calendar-tool-tip{
|
||||
padding: 17px 10px 0px 10px;
|
||||
}
|
||||
@@ -19,16 +19,18 @@ import {
|
||||
DAYS_OF_WEEK,
|
||||
} from 'angular-calendar';
|
||||
import { CustomDateFormatter } from './custom-date-formatter.provider';
|
||||
import { ApproveEventModalPage } from './approve-event-modal/approve-event-modal.page';
|
||||
import { EventListPage } from '../gabinete-digital/event-list/event-list.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-agenda',
|
||||
templateUrl: './agenda.page.html',
|
||||
styleUrls: ['./agenda.page.scss'],
|
||||
providers: [
|
||||
/* {
|
||||
{
|
||||
provide: CalendarDateFormatter,
|
||||
useClass: CustomDateFormatter,
|
||||
}, */
|
||||
},
|
||||
],
|
||||
})
|
||||
export class AgendaPage implements OnInit {
|
||||
@@ -97,7 +99,7 @@ export class AgendaPage implements OnInit {
|
||||
};
|
||||
|
||||
selectedDate: Date;
|
||||
eventSelectedDate: Date;
|
||||
eventSelectedDate: Date = new Date();
|
||||
eventSelectedDate2: Date;
|
||||
rangeStartDate: Date;
|
||||
rangeEndDate: Date;
|
||||
@@ -171,6 +173,9 @@ export class AgendaPage implements OnInit {
|
||||
}
|
||||
|
||||
|
||||
timelineIsCurrentDate(): Boolean {
|
||||
return formatDate(new Date(),'dd MMMM yyyy', 'pt') == formatDate(this.eventSelectedDate,'dd MMMM yyyy', 'pt');
|
||||
}
|
||||
|
||||
//Go to the next view of the calendar month/week/day
|
||||
next(){
|
||||
@@ -207,7 +212,6 @@ export class AgendaPage implements OnInit {
|
||||
} else {
|
||||
return 'calendar-event-type-'+(Object.keys(eventType))[0];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return "";
|
||||
@@ -216,8 +220,10 @@ export class AgendaPage implements OnInit {
|
||||
// Show information of the event for timeline
|
||||
eventClicked({ event }: { event: CalendarEvent }): void {
|
||||
console.log('Event clicked', event);
|
||||
|
||||
this.eventSelectedDate = event.start;
|
||||
this.router.navigate(["/home/agenda", event.id, 'agenda']);
|
||||
this.viewEventDetail(event.id);
|
||||
/* this.router.navigate(["/home/agenda", event.id, 'agenda']); */
|
||||
}
|
||||
|
||||
//Show information of the event
|
||||
@@ -226,13 +232,11 @@ export class AgendaPage implements OnInit {
|
||||
/* this.router.navigate(["/home/agenda", ev.event.EventId, 'agenda']); */
|
||||
}
|
||||
|
||||
|
||||
onCurrentChanged = (ev: Date) => {
|
||||
// timeline change date
|
||||
this.timelineDate = formatDate(ev,'dd MMMM yyyy', 'pt');
|
||||
this.viewDate = new Date(formatDate(ev,'yyyy-MM-dd', 'pt'));
|
||||
// calendar change date
|
||||
console.log('!!this!!')
|
||||
this.eventSelectedDate = new Date(ev);
|
||||
};
|
||||
|
||||
@@ -252,7 +256,6 @@ export class AgendaPage implements OnInit {
|
||||
onRangeChanged (ev: { startTime: Date, endTime: Date }) {
|
||||
this.rangeStartDate = ev.startTime;
|
||||
this.rangeEndDate = ev.endTime;
|
||||
console.log('!!!')
|
||||
|
||||
this.loadRangeEvents(this.rangeStartDate, this.rangeEndDate);
|
||||
};
|
||||
@@ -290,14 +293,14 @@ export class AgendaPage implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
timeLineTemplate(startTime: string, eventlocation: string, eventDiscription: any, calendarName: string): string{
|
||||
timeLineTemplate(startTime: string, eventlocation: string, eventDiscription: any, calendarName: string, subject: string): string{
|
||||
return `
|
||||
<div class="timeline-box timeline-box-${calendarName}">
|
||||
<div>
|
||||
<span class="timeline-start-time">${startTime}</span><span class="timeline-location">${eventlocation}</span>
|
||||
</div>
|
||||
<div class="timeline-event-discription">
|
||||
${eventDiscription.Text}
|
||||
${subject}
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
@@ -335,11 +338,12 @@ export class AgendaPage implements OnInit {
|
||||
calendarName: element.CalendarName
|
||||
});
|
||||
|
||||
// timeline start
|
||||
const startHours = formatDate(new Date(element.StartDate), 'HH', 'pt');
|
||||
const EndHours = formatDate(new Date(element.EndDate), 'HH', 'pt');
|
||||
|
||||
this.events.push({
|
||||
title: this.timeLineTemplate(startHours, element.Location, element.Body, element.CalendarName),
|
||||
title: this.timeLineTemplate(startHours, element.Location, element.Body, element.CalendarName, element.Subject),
|
||||
start: setHours(setMinutes(new Date(element.StartDate), 0), parseInt(startHours)),
|
||||
end: setHours(setMinutes(new Date(element.EndDate), 0), parseInt(EndHours)),
|
||||
color: {
|
||||
@@ -348,6 +352,7 @@ export class AgendaPage implements OnInit {
|
||||
},
|
||||
id: element.EventId
|
||||
});
|
||||
// timeline end
|
||||
|
||||
});
|
||||
|
||||
@@ -370,12 +375,34 @@ export class AgendaPage implements OnInit {
|
||||
startTime: new Date(element.StartDate),
|
||||
endTime: new Date(element.EndDate),
|
||||
allDay: false,
|
||||
event: element
|
||||
event: element,
|
||||
calendarName: element.CalendarName
|
||||
});
|
||||
|
||||
// timeline start
|
||||
const startHours = formatDate(new Date(element.StartDate), 'HH', 'pt');
|
||||
const EndHours = formatDate(new Date(element.EndDate), 'HH', 'pt');
|
||||
|
||||
this.events.push({
|
||||
|
||||
title: this.timeLineTemplate(startHours, element.Location, element.Body, element.CalendarName, element.Subject),
|
||||
start: setHours(setMinutes(new Date(element.StartDate), 0), parseInt(startHours)),
|
||||
end: setHours(setMinutes(new Date(element.EndDate), 0), parseInt(EndHours)),
|
||||
color: {
|
||||
primary: 'white',
|
||||
secondary: 'white'
|
||||
},
|
||||
id: element.EventId
|
||||
});
|
||||
// timeline end
|
||||
|
||||
});
|
||||
|
||||
this.myCal.update();
|
||||
this.myCal.loadEvents();
|
||||
this.showLoader = false;
|
||||
this.showTimeline = true;
|
||||
|
||||
});
|
||||
}
|
||||
break;
|
||||
@@ -536,6 +563,18 @@ export class AgendaPage implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
async viewEventsToApprove(){
|
||||
const modal = await this.modalCtrl.create({
|
||||
component: EventListPage,
|
||||
componentProps:{
|
||||
},
|
||||
cssClass: 'modal',
|
||||
backdropDismiss: false
|
||||
});
|
||||
await modal.present();
|
||||
modal.onDidDismiss();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
<ion-icon slot="start" src="assets/images/icons-calendar.svg"></ion-icon>
|
||||
</div>
|
||||
<div class="ion-input-class">
|
||||
<ion-select placeholder="Selecione agenda"
|
||||
<ion-select disabled placeholder="Selecione agenda"
|
||||
selectedText="{{postEvent.CalendarName}}"
|
||||
[(ngModel)]="postEvent.CalendarName"
|
||||
interface="action-sheet" Cancel-text="Cancelar"
|
||||
|
||||
@@ -58,7 +58,8 @@
|
||||
<ion-list>
|
||||
<h3>Documentos Anexados</h3>
|
||||
<ion-item class="ion-no-margin ion-no-padding">
|
||||
<ion-label *ngFor="let attach of loadedAttachments">
|
||||
<ion-label *ngFor="let attach of loadedAttachments"
|
||||
(click)="viewDocument()">
|
||||
<p class="attach-title-item">{{attach.SourceName}}</p>
|
||||
<p><span class="span-left">{{attach.Stakeholders}}</span><span class="span-right">{{ attach.CreateDate | date: 'dd-MM-yy' }}</span></p>
|
||||
</ion-label>
|
||||
|
||||
@@ -7,6 +7,7 @@ import { AttachmentsService } from 'src/app/services/attachments.service';
|
||||
import { EventsService } from 'src/app/services/events.service';
|
||||
import { Event } from '../../../models/event.model';
|
||||
import { EditEventPage } from '../edit-event/edit-event.page';
|
||||
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
|
||||
|
||||
@Component({
|
||||
selector: 'app-view-event',
|
||||
@@ -39,6 +40,7 @@ export class ViewEventPage implements OnInit {
|
||||
private eventsService: EventsService,
|
||||
private attachmentsService: AttachmentsService,
|
||||
public alertController: AlertController,
|
||||
private iab: InAppBrowser,
|
||||
)
|
||||
{
|
||||
this.profile = this.navParams.get('profile');
|
||||
@@ -118,6 +120,11 @@ export class ViewEventPage implements OnInit {
|
||||
}
|
||||
});
|
||||
}
|
||||
viewDocument(){
|
||||
const url: string = this.loadedAttachments.DocumentURL.replace("webTRIX.Viewer","webTRIX.Viewer.Branch1");
|
||||
const browser = this.iab.create(url,"_blank");
|
||||
browser.show();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -75,7 +75,9 @@
|
||||
<div class="content">
|
||||
<ul>
|
||||
<li *ngFor = "let task of taskslist"
|
||||
[routerLink]="['/home/gabinete-digital/expediente',task.SerialNumber]">
|
||||
(click)="viewExpedientDetail(task.SerialNumber)">
|
||||
<!-- [routerLink]="['/home/gabinete-digital/expediente',task.SerialNumber]" -->
|
||||
>
|
||||
<div class="d-flex">
|
||||
<div class="schedule-date">
|
||||
<div class="time-end">{{task.CreateDate | date: 'd/M/yy'}}</div>
|
||||
|
||||
@@ -16,6 +16,7 @@ import { ProcessesService } from '../../services/processes.service';
|
||||
import { DailyWorkTask } from '../../models/dailyworktask.model';
|
||||
import { ViewEventPage } from '../agenda/view-event/view-event.page';
|
||||
import { ExpedientePage } from '../gabinete-digital/expediente/expediente.page';
|
||||
import { ExpedienteDetailPage } from '../gabinete-digital/expediente/expediente-detail/expediente-detail.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-events',
|
||||
@@ -317,11 +318,11 @@ export class EventsPage implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
async viewExpedient(serialNumber:any) {
|
||||
async viewExpedientDetail(serialNumber:any) {
|
||||
console.log(this.profile);
|
||||
|
||||
const modal = await this.modalController.create({
|
||||
component: ExpedientePage,
|
||||
component: ExpedienteDetailPage,
|
||||
componentProps:{
|
||||
serialNumber: serialNumber,
|
||||
profile: this.profile,
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@
|
||||
<ion-datetime
|
||||
placeholder="Início"
|
||||
[(ngModel)]="postData.StartDate"
|
||||
displayFormat="D H:mm"
|
||||
displayFormat="D MMM YYYY H:mm"
|
||||
minuteValues="0,15,30,45"
|
||||
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"
|
||||
min="2018"
|
||||
|
||||
+2
@@ -7,12 +7,14 @@ import { IonicModule } from '@ionic/angular';
|
||||
import { ExpedienteDetailPageRoutingModule } from './expediente-detail-routing.module';
|
||||
|
||||
import { ExpedienteDetailPage } from './expediente-detail.page';
|
||||
import { SharedModule } from 'src/app/shared/shared.module';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
FormsModule,
|
||||
IonicModule,
|
||||
SharedModule,
|
||||
ExpedienteDetailPageRoutingModule
|
||||
],
|
||||
declarations: [ExpedienteDetailPage]
|
||||
|
||||
+25
-18
@@ -1,17 +1,21 @@
|
||||
<ion-header>
|
||||
<ion-toolbar class="bg-blue">
|
||||
<div class="div-top-header">
|
||||
<div class="div-search">
|
||||
<ion-icon src='assets/images/icons-search.svg'></ion-icon>
|
||||
<ion-header class="ion-no-border">
|
||||
<ion-toolbar class="header-toolbar">
|
||||
<div class="main-header">
|
||||
<div class="title-content">
|
||||
<app-btn-modal-dismiss></app-btn-modal-dismiss>
|
||||
<div class="middle">
|
||||
<ion-label class="title">Detalhes do Expediente</ion-label>
|
||||
</div>
|
||||
<div class="div-icon">
|
||||
<ion-menu-button autoHide="false">
|
||||
<ion-icon name="ellipsis-vertical-outline"></ion-icon>
|
||||
</ion-menu-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="div-logo">
|
||||
<img src='assets/images/logo-no-bg.png' alt='logo'>
|
||||
</div>
|
||||
<div class="div-profile">
|
||||
<ion-icon src='assets/images/icons-profile.svg'></ion-icon>
|
||||
</div>
|
||||
</div>
|
||||
</ion-toolbar>
|
||||
</ion-toolbar>
|
||||
</ion-header>
|
||||
<!-- <ion-header>
|
||||
<ion-toolbar class="bg-blue">
|
||||
<ion-buttons slot="start">
|
||||
<ion-back-button defaultHref="/expediente"></ion-back-button>
|
||||
@@ -23,7 +27,7 @@
|
||||
</ion-menu-button>
|
||||
</ion-buttons>
|
||||
</ion-toolbar>
|
||||
</ion-header>
|
||||
</ion-header> -->
|
||||
|
||||
<ion-menu autoHide="false" side="end" content-id="main-content">
|
||||
<ion-header>
|
||||
@@ -80,7 +84,7 @@
|
||||
<ion-label position="stacked">Data</ion-label>
|
||||
<ion-input disabled="true" value=''>{{ task.CreateDate | date: 'dd-MM-yy | hh:mm'}}</ion-input>
|
||||
</ion-item>
|
||||
<ion-button class="btn-ok-no-width" fill="clear" color="#fff" (click)="viewDocument()" shape="round" expand="block">
|
||||
<ion-button (click)="viewDocument()" class="btn-ok-no-width" fill="clear" color="#fff" shape="round" expand="block">
|
||||
<ion-icon name="attach" slot="start"></ion-icon>
|
||||
Ver documento
|
||||
</ion-button>
|
||||
@@ -121,9 +125,12 @@
|
||||
<ion-list>
|
||||
<div *ngIf="eventsList">
|
||||
<ion-item-sliding>
|
||||
<ion-item class="Rectangle" lines="none"
|
||||
*ngFor="let event of eventsList"
|
||||
[routerLink]="['/home/events', event.EventId, 'events']">
|
||||
<ion-item
|
||||
class="Rectangle" lines="none"
|
||||
*ngFor="let event of eventsList"
|
||||
(click)="viewEventDetail(event.EventId)"
|
||||
>
|
||||
<!-- [routerLink]="['/home/events', event.EventId, 'events']" -->
|
||||
<div class="content-{{profile}}-{{event.CalendarName}}">
|
||||
<div class="approve-event-time">
|
||||
<p>{{event.StartDate | date: 'hh:mm'}}</p>
|
||||
|
||||
+79
@@ -1,3 +1,82 @@
|
||||
@import '~src/function.scss';
|
||||
.header-toolbar{
|
||||
--background:transparent;
|
||||
--opacity: 1;
|
||||
|
||||
.main-header{
|
||||
width: 100%; /* 400px */
|
||||
height: 100%;
|
||||
font-family: Roboto;
|
||||
border-top-left-radius: 25px;
|
||||
border-top-right-radius: 25px;
|
||||
background-color: #fff;
|
||||
overflow:hidden;
|
||||
padding: 30px 20px 0px 20px;
|
||||
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;
|
||||
}
|
||||
.div-icon{
|
||||
width: 40px;
|
||||
float: right;
|
||||
font-size: 35px;
|
||||
overflow: auto;
|
||||
padding: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
ion-item-group{
|
||||
margin: 15px;
|
||||
}
|
||||
|
||||
+34
-8
@@ -7,10 +7,11 @@ import { DailyWorkTask } from '../../../../models/dailyworktask.model';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { formatDate } from '@angular/common';
|
||||
import { Event } from '../../../../models/event.model';
|
||||
import { MenuController, ModalController } from '@ionic/angular';
|
||||
import { MenuController, ModalController, NavParams } from '@ionic/angular';
|
||||
import { AlertService } from 'src/app/services/alert.service';
|
||||
import { ExpedientTaskModalPage } from '../expedient-task-modal/expedient-task-modal.page';
|
||||
import { BookMeetingModalPage } from '../book-meeting-modal/book-meeting-modal.page';
|
||||
import { ViewEventPage } from 'src/app/pages/agenda/view-event/view-event.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-expediente-detail',
|
||||
@@ -19,6 +20,12 @@ import { BookMeetingModalPage } from '../book-meeting-modal/book-meeting-modal.p
|
||||
})
|
||||
export class ExpedienteDetailPage implements OnInit {
|
||||
|
||||
task: any;
|
||||
fulltask:any;
|
||||
eventsList: Event[];
|
||||
serialnumber:string;
|
||||
profile: string;
|
||||
|
||||
constructor(private activateRoute: ActivatedRoute,
|
||||
private processes:ProcessesService,
|
||||
private iab: InAppBrowser,
|
||||
@@ -27,13 +34,11 @@ export class ExpedienteDetailPage implements OnInit {
|
||||
private menu: MenuController,
|
||||
private router:Router,
|
||||
private modalController: ModalController,
|
||||
private alertService: AlertService) { }
|
||||
|
||||
task: any;
|
||||
fulltask:any;
|
||||
eventsList: Event[];
|
||||
serialnumber:string;
|
||||
profile: string;
|
||||
private navParams: NavParams,
|
||||
private alertService: AlertService) {
|
||||
this,this.serialnumber = this.navParams.get('serialNumber');
|
||||
this,this.profile = this.navParams.get('profile');
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.profile = "mdgpr";
|
||||
@@ -45,6 +50,8 @@ export class ExpedienteDetailPage implements OnInit {
|
||||
this.LoadTaskDetail(this.serialnumber);
|
||||
this.LoadRelatedEvents(this.serialnumber);
|
||||
});
|
||||
this.LoadTaskDetail(this.serialnumber);
|
||||
this.LoadRelatedEvents(this.serialnumber);
|
||||
}
|
||||
|
||||
|
||||
@@ -127,4 +134,23 @@ export class ExpedienteDetailPage implements OnInit {
|
||||
await modal.present();
|
||||
modal.onDidDismiss();
|
||||
}
|
||||
|
||||
async viewEventDetail(eventId:any) {
|
||||
console.log(this.profile);
|
||||
|
||||
const modal = await this.modalController.create({
|
||||
component: ViewEventPage,
|
||||
componentProps:{
|
||||
eventId: eventId,
|
||||
profile: this.profile,
|
||||
},
|
||||
cssClass: 'modal',
|
||||
backdropDismiss: false
|
||||
});
|
||||
await modal.present();
|
||||
modal.onDidDismiss().then((res)=>{
|
||||
if(res){
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,12 +7,14 @@ import { IonicModule } from '@ionic/angular';
|
||||
import { ExpedientePageRoutingModule } from './expediente-routing.module';
|
||||
|
||||
import { ExpedientePage } from './expediente.page';
|
||||
import { SharedModule } from 'src/app/shared/shared.module';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
FormsModule,
|
||||
IonicModule,
|
||||
SharedModule,
|
||||
ExpedientePageRoutingModule
|
||||
],
|
||||
declarations: [ExpedientePage],
|
||||
|
||||
@@ -1,22 +1,13 @@
|
||||
<ion-header>
|
||||
<ion-toolbar class="bg-blue">
|
||||
<div class="div-top-header">
|
||||
<div class="div-search">
|
||||
<ion-icon src='assets/images/icons-search.svg'></ion-icon>
|
||||
<ion-header class="ion-no-border">
|
||||
<ion-toolbar class="header-toolbar">
|
||||
<div class="main-header">
|
||||
<div class="title-content">
|
||||
<app-btn-modal-dismiss></app-btn-modal-dismiss>
|
||||
<div class="middle">
|
||||
<ion-label class="title">Gabinete Digital</ion-label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="div-logo">
|
||||
<img src='assets/images/logo-no-bg.png' alt='logo'>
|
||||
</div>
|
||||
<div class="div-profile">
|
||||
<ion-icon src='assets/images/icons-profile.svg'></ion-icon>
|
||||
</div>
|
||||
</div>
|
||||
</ion-toolbar>
|
||||
<ion-toolbar class="bg-blue">
|
||||
<ion-buttons slot="start">
|
||||
<ion-back-button defaultHref="/gabinete-digital"></ion-back-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Gabinete Digital</ion-title>
|
||||
</ion-toolbar>
|
||||
<ion-toolbar>
|
||||
<ion-segment [(ngModel)]="segment">
|
||||
@@ -55,8 +46,13 @@
|
||||
</div>
|
||||
</ion-item> -->
|
||||
|
||||
<ion-item class="expediente" lines="none" *ngFor = "let task of taskslist"
|
||||
[routerLink]="['/home/gabinete-digital/expediente',task.SerialNumber]">
|
||||
<ion-item
|
||||
class="expediente"
|
||||
lines="none"
|
||||
*ngFor = "let task of taskslist"
|
||||
(click)="viewExpedientDetail(task.SerialNumber)"
|
||||
>
|
||||
<!-- [routerLink]="['/home/gabinete-digital/expediente',task.SerialNumber]" -->
|
||||
<div class="Rectangle">
|
||||
<div class="exp-top-detail">
|
||||
<div class="exp-date">
|
||||
|
||||
@@ -1,3 +1,82 @@
|
||||
@import '~src/function.scss';
|
||||
.header-toolbar{
|
||||
--background:transparent;
|
||||
--opacity: 1;
|
||||
|
||||
.main-header{
|
||||
width: 100%; /* 400px */
|
||||
height: 100%;
|
||||
font-family: Roboto;
|
||||
border-top-left-radius: 25px;
|
||||
border-top-right-radius: 25px;
|
||||
background-color: #fff;
|
||||
overflow:hidden;
|
||||
padding: 30px 20px 0px 20px;
|
||||
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;
|
||||
}
|
||||
.div-icon{
|
||||
width: 40px;
|
||||
float: right;
|
||||
font-size: 35px;
|
||||
overflow: auto;
|
||||
padding: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
/* CONTENT */
|
||||
.item-list-small{
|
||||
font-size: 11px;
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||
import { Router } from '@angular/router';
|
||||
import { ModalController, NavParams } from '@ionic/angular';
|
||||
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 './expediente-detail/expediente-detail.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-expediente',
|
||||
@@ -16,6 +17,7 @@ import { LoadingService } from 'src/app/services/loading.service';
|
||||
export class ExpedientePage implements OnInit {
|
||||
|
||||
segment:string;
|
||||
profile:string;
|
||||
|
||||
@ViewChild(CalendarComponent) myCal: CalendarComponent;
|
||||
|
||||
@@ -23,10 +25,11 @@ export class ExpedientePage implements OnInit {
|
||||
serialNumber:string;
|
||||
|
||||
constructor(
|
||||
private modalCtrl: ModalController,
|
||||
private processes:ProcessesService,
|
||||
private modalController: ModalController,
|
||||
private navParams: NavParams,
|
||||
private processes:ProcessesService) {
|
||||
this.serialNumber = this.navParams.get('serialNumber');
|
||||
) {
|
||||
this.profile = this.navParams.get('profile');
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
@@ -61,5 +64,23 @@ export class ExpedientePage implements OnInit {
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
async viewExpedientDetail(serialNumber:any) {
|
||||
console.log(this.profile);
|
||||
|
||||
const modal = await this.modalController.create({
|
||||
component: ExpedienteDetailPage,
|
||||
componentProps:{
|
||||
serialNumber: serialNumber,
|
||||
profile: this.profile,
|
||||
},
|
||||
cssClass: 'modal',
|
||||
backdropDismiss: false
|
||||
});
|
||||
await modal.present();
|
||||
modal.onDidDismiss().then((res)=>{
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -49,7 +49,9 @@
|
||||
<p>{{count_ev_md+count_ev_pr}} Documentos</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="exp-card" [routerLink]="['/home/gabinete-digital/expediente']">
|
||||
<div class="exp-card"
|
||||
(click)="openExpedientList()"
|
||||
>
|
||||
<div class="exp-card-icon">
|
||||
<ion-icon src="assets/images/icons-correspondencia.svg"></ion-icon>
|
||||
</div>
|
||||
|
||||
@@ -80,7 +80,7 @@ ion-content{
|
||||
.title-content{
|
||||
width: 360px;
|
||||
margin: 0px auto;
|
||||
overflow: auto;
|
||||
overflow: hidden;
|
||||
padding: 0 !important;
|
||||
background: #ecf8ff;
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import { AlertService } from 'src/app/services/alert.service';
|
||||
import { EventsService } from 'src/app/services/events.service';
|
||||
import { ModalController } from '@ionic/angular';
|
||||
import { EventListPage } from './event-list/event-list.page';
|
||||
import { ExpedientePage } from './expediente/expediente.page';
|
||||
|
||||
@Component({
|
||||
selector: 'app-gabinete-digital',
|
||||
@@ -14,6 +15,7 @@ export class GabineteDigitalPage implements OnInit {
|
||||
|
||||
segment:string;
|
||||
showLoader: boolean;
|
||||
public profile:string;
|
||||
|
||||
constructor(
|
||||
private processesbackend:ProcessesService,
|
||||
@@ -41,6 +43,8 @@ export class GabineteDigitalPage implements OnInit {
|
||||
count_ev_md=0;
|
||||
|
||||
ngOnInit() {
|
||||
//Initialize profile as mdgpr
|
||||
this.profile = "mdgpr";
|
||||
this.LoadCounts();
|
||||
/* this.eventService.getAllMdEvents.subscribe(res=>{
|
||||
console.log(res);
|
||||
@@ -100,4 +104,17 @@ this.processesbackend.GetActionsList().subscribe(res=>{
|
||||
modal.onDidDismiss();
|
||||
}
|
||||
|
||||
async openExpedientList(){
|
||||
const modal = await this.modalController.create({
|
||||
component: ExpedientePage,
|
||||
componentProps:{
|
||||
profile: this.profile,
|
||||
},
|
||||
cssClass: 'modal',
|
||||
backdropDismiss: false
|
||||
});
|
||||
await modal.present();
|
||||
modal.onDidDismiss();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -31,8 +31,6 @@ export class PublicationsPage implements OnInit {
|
||||
months: string[];
|
||||
days:string[];
|
||||
|
||||
|
||||
|
||||
constructor(
|
||||
private router: Router,
|
||||
private modalController: ModalController,
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 7H18V8H7V7Z" fill="white"/>
|
||||
<path d="M10.5 9C11.3284 9 12 8.32843 12 7.5C12 6.67157 11.3284 6 10.5 6C9.67157 6 9 6.67157 9 7.5C9 8.32843 9.67157 9 10.5 9Z" fill="white"/>
|
||||
<path d="M17.5 35C27.165 35 35 27.165 35 17.5C35 7.83502 27.165 0 17.5 0C7.83502 0 0 7.83502 0 17.5C0 27.165 7.83502 35 17.5 35Z" fill="white"/>
|
||||
<path d="M9.46143 10.9141L13.4126 20.7754L17.3638 10.9141H19.4307V23H17.8369V18.2935L17.9863 13.2134L14.0186 23H12.7983L8.83887 13.2383L8.99658 18.2935V23H7.40283V10.9141H9.46143ZM22.2446 23V10.9141H25.6562C26.7077 10.9141 27.6374 11.1465 28.4453 11.6113C29.2533 12.0762 29.8758 12.7375 30.313 13.5952C30.7557 14.453 30.9798 15.438 30.9854 16.5503V17.3223C30.9854 18.4622 30.764 19.4611 30.3213 20.3188C29.8841 21.1766 29.256 21.8351 28.437 22.2944C27.6235 22.7537 26.6745 22.9889 25.5898 23H22.2446ZM23.8384 12.2256V21.6968H25.5151C26.7437 21.6968 27.6982 21.3149 28.3789 20.5513C29.0651 19.7876 29.4082 18.7002 29.4082 17.2891V16.5835C29.4082 15.2111 29.0845 14.1458 28.437 13.3877C27.7951 12.624 26.882 12.2367 25.6978 12.2256H23.8384Z" fill="black"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,6 @@
|
||||
<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 7H18V8H7V7Z" fill="white"/>
|
||||
<path d="M10.5 9C11.3284 9 12 8.32843 12 7.5C12 6.67157 11.3284 6 10.5 6C9.67157 6 9 6.67157 9 7.5C9 8.32843 9.67157 9 10.5 9Z" fill="white"/>
|
||||
<path d="M17.5 35C27.165 35 35 27.165 35 17.5C35 7.83502 27.165 0 17.5 0C7.83502 0 0 7.83502 0 17.5C0 27.165 7.83502 35 17.5 35Z" fill="#F05D5E"/>
|
||||
<path d="M9.99658 19.2686V24H8.40283V11.9141H12.8604C14.1829 11.9141 15.2178 12.2516 15.9648 12.9268C16.7174 13.6019 17.0938 14.4956 17.0938 15.6079C17.0938 16.7811 16.7257 17.6859 15.9897 18.3223C15.2593 18.9531 14.2106 19.2686 12.8438 19.2686H9.99658ZM9.99658 17.9653H12.8604C13.7126 17.9653 14.3656 17.7661 14.8193 17.3677C15.2731 16.9637 15.5 16.3826 15.5 15.6245C15.5 14.9051 15.2731 14.3296 14.8193 13.8979C14.3656 13.4663 13.743 13.2422 12.9517 13.2256H9.99658V17.9653ZM23.5601 19.1108H20.7212V24H19.1191V11.9141H23.1201C24.4814 11.9141 25.5273 12.224 26.2578 12.8438C26.9938 13.4635 27.3618 14.3656 27.3618 15.5498C27.3618 16.3024 27.1571 16.9582 26.7476 17.5171C26.3436 18.076 25.7791 18.4938 25.0542 18.7705L27.8931 23.9004V24H26.1831L23.5601 19.1108ZM20.7212 17.8076H23.1699C23.9613 17.8076 24.5894 17.6029 25.0542 17.1934C25.5246 16.7839 25.7598 16.236 25.7598 15.5498C25.7598 14.8027 25.5356 14.23 25.0874 13.8315C24.6447 13.4331 24.0028 13.2311 23.1616 13.2256H20.7212V17.8076Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -40,6 +40,7 @@ td.monthview-current{
|
||||
/* display: flex; */
|
||||
height: 100%;
|
||||
div {
|
||||
padding-left: 7px;
|
||||
border-radius: 28px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
@@ -67,6 +68,7 @@ td.monthview-selected {
|
||||
}
|
||||
|
||||
.calendar-event-type
|
||||
|
||||
/* Timeline */
|
||||
|
||||
.cal-hour-segment {
|
||||
|
||||
Reference in New Issue
Block a user