Callback add at home page

This commit is contained in:
Eudes Inácio
2021-08-25 16:36:33 +01:00
52 changed files with 177 additions and 177 deletions
@@ -18,7 +18,7 @@ export class DocumentCounterService {
despachoStore = DespachoStore;
eventoAprovacaoStore = EventoAprovacaoStore;
pedidosStore = PedidosStore;
expedientePrStore = ExpedienteprStore;
// expedientePrStore = ExpedienteprStore;
despachoPrStore = DespachosprStore;
deplomasStore = DeplomasStore
@@ -26,14 +26,14 @@ export class DocumentCounterService {
// falta a contagem dos deplomas
get mdTotalDocument(): number {
return this.despachoStore.count + this.expedienteGbStore.count + this.pedidosStore.countdeferimento
+ this.pedidosStore.countparecer + this.expedientePrStore.count + this.despachoPrStore.count + this.pendentesStore.count
return this.despachoStore.count + /** this.expedientePrStore.count + */ this.pedidosStore.countdeferimento
+ this.pedidosStore.countparecer + this.expedienteGbStore.count + this.despachoPrStore.count + this.pendentesStore.count
+ this.eventoAprovacaoStore.count + this.deplomasStore.diplomasListCount + this.deplomasStore.countDiplomasAssinadoListCount + this.deplomasStore.deplomasReviewCount
}
get prTotalDocument(): number {
return this.despachoStore.count + this.expedienteGbStore.count + this.pedidosStore.countdeferimento
+ this.pedidosStore.countparecer + this.expedientePrStore.count + this.despachoPrStore.count + this.pendentesStore.count
return this.despachoStore.count + /** this.expedientePrStore.count + */ this.pedidosStore.countdeferimento
+ this.pedidosStore.countparecer + this.expedienteGbStore.count + this.despachoPrStore.count + this.pendentesStore.count
+ this.eventoAprovacaoStore.count + this.deplomasStore.diplomasListCount + this.deplomasStore.countDiplomasAssinadoListCount + this.deplomasStore.deplomasReviewCount
}
}
+5
View File
@@ -54,6 +54,9 @@ import { far } from '@fortawesome/free-regular-svg-icons'
import { fab } from '@fortawesome/free-brands-svg-icons'
import { ScreenOrientation } from '@ionic-native/screen-orientation/ngx';
import { PdfViewerModule } from 'ng2-pdf-viewer';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
@@ -84,6 +87,8 @@ import { ScreenOrientation } from '@ionic-native/screen-orientation/ngx';
MatSelectModule,
MatDialogModule,
//
PdfViewerModule
],
providers: [
{ provide: MAT_DATE_LOCALE, useValue: 'pt' },
+24 -7
View File
@@ -2,18 +2,21 @@
/* tslint:disable */
///<reference path="../../../plugins/cordova-plugin-mfp/typings/worklight.d.ts" />
///<reference path="../../../plugins/cordova-plugin-mfp-push/typings/mfppush.d.ts" />
import { Component, OnInit, NgZone, Inject } from '@angular/core';
import { EventsService } from '../services/events.service';
import { Component, OnInit, NgZone } from '@angular/core';
import { Event } from '../models/event.model';
import { ProcessesService } from '../services/processes.service';
import { NotificationsService } from '../services/notifications.service';
<<<<<<< HEAD
import { WebNotificationsService } from '../services/webnotifications.service';
import { ModalController, AlertController, AnimationController, Platform } from '@ionic/angular';
=======
import { AlertController, Platform } from '@ionic/angular';
>>>>>>> 07435162e12e42437c43ac894bad4be11c64e70e
import { Router, ActivatedRoute } from '@angular/router';
import { ToDayEventStorage } from '../store/to-day-event-storage.service';
import { DocumentCounterService } from 'src/app/OtherService/document-counter.service'
import { PermissionService } from '../OtherService/permission.service';
import { TotalDocumentService, TotalDocumentStore } from '../store/total-document.service';
import { TotalDocumentStore } from '../store/total-document.service';
import { connection } from '../services/socket/synchro.service';
// import { NetworkService } from '../services/network.service';
@@ -68,10 +71,12 @@ export class HomePage implements OnInit {
postEvent: any;
folderId: string;
connection = connection
constructor(private zone: NgZone,
private router: Router,
public modalCtrl: AlertController,
private notificatinsservice: NotificationsService,
private notificationsService: NotificationsService,
private platform: Platform,
private activeroute: ActivatedRoute,
private webnotification: WebNotificationsService,
@@ -99,6 +104,18 @@ export class HomePage implements OnInit {
//this.folderId = this.navParams.get('folderId');
}
this.notificationsService.registerCallback(
'Create Depacho',
() =>{
this.refreshing()
}
)
}
refreshing() {
}
ngOnInit() {
@@ -110,8 +127,8 @@ export class HomePage implements OnInit {
this.webnotification.onReceviNotificationWeb();
} else {
this.mobilefirstConnect();
this.notificatinsservice.getAndpostToken2();
this.notificatinsservice.onReceviNotification();
this.notificationsService.getAndpostToken2();
this.notificationsService.onReceviNotification();
}
}
@@ -506,7 +506,7 @@ export class CreateProcessPage implements OnInit {
taskParticipants: this.taskParticipants,
taskParticipantsCc: this.taskParticipantsCc
},
cssClass: 'modal attendee',
cssClass: 'modal attendee modal-desktop',
backdropDismiss: false
});
+1 -1
View File
@@ -129,7 +129,7 @@ export class DelegarPage implements OnInit {
taskParticipants: this.taskParticipants,
taskParticipantsCc: this.taskParticipantsCc
},
cssClass: 'modal attendee',
cssClass: 'modal attendee modal-desktop',
backdropDismiss: false
});
+1 -1
View File
@@ -167,7 +167,7 @@ export class ForwardPage implements OnInit {
taskParticipants: this.taskParticipants,
taskParticipantsCc: this.taskParticipantsCc
},
cssClass: 'modal attendee',
cssClass: 'modal attendee modal-desktop',
backdropDismiss: false
});
+2
View File
@@ -1,3 +1,4 @@
import { Attachment } from './attachment.model';
import { EventBody } from './eventbody.model';
import { EventPerson } from './eventperson.model';
@@ -31,6 +32,7 @@ export class Event{
HasAttachments: boolean;
EventRecurrence: EventRecurrence;
Name?: string
Attachments?: Attachment[];
/* public Event(){
this.EventRecurrence = new EventRecurrence();
@@ -123,7 +123,6 @@
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="{{minDate}}"
max="2025"
>
</ion-datetime>
@@ -144,7 +143,6 @@
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="{{minDate}}"
max="2025"
>
@@ -182,7 +180,6 @@
[(ngModel)]="postEvent.EventRecurrence.LastOccurrence"
displayFormat="DD MMM YYYY"
monthShortNames="Jan, Fev, Mar, Abr, Mai, Jun, Jul, Aug, Sep, Out, Nov, Dez"
min="2021"
max="2045"
>
</ion-datetime>
@@ -31,8 +31,6 @@ export class NewEventPage implements OnInit {
public showSeconds = false;
public touchUi = false;
public enableMeridian = false;
public minDate = new Date().toISOString().slice(0,10)
public endMinDate = new Date(new Date().getTime() + 15 * 60000);
public stepHour = 1;
public stepMinute = 5;
public stepSecond = 5;
@@ -81,8 +79,6 @@ export class NewEventPage implements OnInit {
this.selectedDate = this.navParams.get('eventSelectedDate');
this.taskParticipants = this.navParams.get('attendees');
console.log(this.taskParticipants);
this.postEvent.StartDate = new Date()
this.postEvent.EndDate = (new Date(new Date().getTime() + 15 * 60000))
}
@@ -1,4 +1,4 @@
<ion-header class="ion-no-border" [class.d-md-none]="isModal">
<ion-header class="ion-no-border" [class.d-md-none]="isModal" *ngIf="header">
<app-header></app-header>
</ion-header>
@@ -80,7 +80,7 @@
<div *ngIf="loadedAttachments" class="bottom-content width-100">
<h5>Documentos Anexados</h5>
<ion-list class="width-100">
<ion-item *ngFor="let attach of loadedAttachments; let i = index" class="width-100" class="ion-no-margin ion-no-padding">
<ion-item *ngFor="let attach of loadedEvent.Attachments; let i = index" class="width-100" class="ion-no-margin ion-no-padding">
<ion-label class="width-100 d-flex " >
<p class="flex-grow-1" (click)="viewDocument(attach.SourceId)">
<span class="attach-title-item d-block">{{attach.SourceName}}</span>
@@ -107,13 +107,7 @@ ion-menu{
float: left;
}
.label{
border-radius: 20px;
background: #ffb703;
float: right;
padding: 5px 13.5px 5px 13.5px;
color: #fff;
}
}
.location-detail{
@@ -298,4 +292,11 @@ ion-menu{
width: 25%;
}
}
.label{
border-radius: 20px;
background: #ffb703;
float: right;
padding: 5px 13.5px 5px 13.5px;
color: #fff;
}
@@ -1,6 +1,5 @@
import { Component, OnInit } from '@angular/core';
import { AlertController, ModalController, NavParams, PopoverController } from '@ionic/angular';
import { Attachment } from 'src/app/models/attachment.model';
import { AlertController, ModalController, PopoverController } from '@ionic/angular';
import { EventBody } from 'src/app/models/eventbody.model';
import { AttachmentsService } from 'src/app/services/attachments.service';
import { EventsService } from 'src/app/services/events.service';
@@ -9,7 +8,7 @@ import { EditEventPage } from '../edit-event/edit-event.page';
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
import { ProcessesService } from 'src/app/services/processes.service';
import { OptsExpedientePage } from 'src/app/shared/popover/opts-expediente/opts-expediente.page';
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
import { ActivatedRoute, Router } from '@angular/router';
import { ToastService } from 'src/app/services/toast.service';
import { EliminateEventPage } from 'src/app/modals/eliminate-event/eliminate-event.page';
import { Location } from '@angular/common'
@@ -26,7 +25,6 @@ export class ViewEventPage implements OnInit {
isEventEdited: boolean;
eventBody: EventBody;
loadedAttachments:any;
loadedEventAttachments: Attachment[];
pageId: string;
showLoader: boolean;
@@ -43,6 +41,7 @@ export class ViewEventPage implements OnInit {
dicIndex = 0;
isModal = false
header = true
constructor(
private modalController: ModalController,
@@ -72,6 +71,10 @@ export class ViewEventPage implements OnInit {
if(params["params"].isModal) {
this.isModal = params["params"].isModal
}
if(params["params"].header) {
this.header = params["params"].header
}
});
/* this.activatedRoute.queryParams.subscribe(params => {
@@ -86,7 +89,6 @@ export class ViewEventPage implements OnInit {
ngOnInit() {
this.loadEvent();
this.getAttachments();
window.onresize = (event) => {
@@ -178,7 +180,6 @@ export class ViewEventPage implements OnInit {
setTimeout(() => {
/* this.loadEvent(); */
this.loadEvent()
this.getAttachments();
}, 250);
this.isEventEdited = true;
}
@@ -186,22 +187,6 @@ export class ViewEventPage implements OnInit {
}
getAttachments() {
const loader = this.toastService.loading()
try {
this.attachmentsService.getAttachmentsById(this.eventId).subscribe(res=>{
this.loadedAttachments = res;
console.log(res);
});
} catch (error) {
}
finally {
loader.remove()
}
}
async editEventDetail() {
@@ -222,7 +207,6 @@ export class ViewEventPage implements OnInit {
setTimeout(() => {
/* this.loadEvent(); */
this.loadEvent()
this.getAttachments();
}, 250);
this.isEventEdited = true;
}
@@ -256,7 +240,6 @@ export class ViewEventPage implements OnInit {
setTimeout(() => {
/* this.loadEvent(); */
this.loadEvent()
this.getAttachments();
}, 250);
this.isEventEdited = true;
}
+1
View File
@@ -26,6 +26,7 @@ import { NavigationStart, NavigationEnd, Router } from '@angular/router';
import { EventPerson } from 'src/app/models/eventperson.model';
import { removeDuplicate } from 'src/plugin/removeDuplicate.js'
import { environment } from 'src/environments/environment';
import { NotificationsService } from 'src/app/services/notifications.service';
@Component({
selector: 'app-chat',
@@ -91,7 +91,7 @@ export class EditEventPage implements OnInit {
componentProps: {
eventAttendees: this.loadedEvent.Attendees
},
cssClass: 'attendee',
cssClass: 'attendee modal-desktop',
backdropDismiss: false
});
@@ -93,7 +93,7 @@ export class EventDetailModalPage implements OnInit {
componentProps: {
eventAttendees: this.loadedEvent.Attendees
},
cssClass: 'attendee',
cssClass: 'attendee modal-desktop',
backdropDismiss: false
});
@@ -91,7 +91,7 @@ export class EventDetailPage implements OnInit {
componentProps: {
eventAttendees: this.loadedEvent.Attendees
},
cssClass: 'attendee',
cssClass: 'attendee modal-desktop',
backdropDismiss: false
});
+3
View File
@@ -11,6 +11,7 @@ import { EventsPage } from './events.page';
import { HeaderNoSearchPageModule } from 'src/app/shared/headers/header-no-search/header-no-search.module';
import { HeaderPageModule } from 'src/app/shared/header/header.module';
import { PdfViewerModule } from 'ng2-pdf-viewer';
@NgModule({
imports: [
@@ -19,6 +20,8 @@ import { HeaderPageModule } from 'src/app/shared/header/header.module';
IonicModule,
EventsPageRoutingModule,
HeaderPageModule,
//
PdfViewerModule
],
declarations: [EventsPage],
schemas: [CUSTOM_ELEMENTS_SCHEMA]
+7
View File
@@ -112,4 +112,11 @@
</div>
</div>
</div>
<!-- <pdf-viewer [src]="pdfSrc"
[render-text]="true"
style="display: block;"
></pdf-viewer> -->
</ion-content>
+2 -1
View File
@@ -69,7 +69,8 @@ export class EventsPage implements OnInit {
loggeduser: User;
existingScreenOrientation: string;
pdfSrc = "https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf";
constructor(
private eventService: EventsService,
private router: Router,
@@ -302,7 +302,7 @@ export class DespachoPage implements OnInit {
async openExpedientActionsModal(taskAction: any, task: any) {
let classs;
if( window.innerWidth <= 800){
if( window.innerWidth <= 800) {
classs = 'modal modal-desktop'
} else {
classs = 'modal modal-desktop showAsideOptions'
@@ -114,15 +114,6 @@
<p class="text-center exp-card-content">{{expedientegbstore.count}} <span class="title1">Documentos</span></p>
</div>
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openExpedientesPrPage(); selectedElement = 'Expediente Presidente'" [class.active]="selectedElement == 'Expediente Presidente'" class="exp-card d-md-flex flex-column justify-center white-background">
<div class="d-flex justify-center">
<ion-icon src="assets/images/icons-expediente-presidente.svg"></ion-icon>
</div>
<p class="exp-card-title " *ngIf="loggeduser.Profile == 'MDGPR'">Expediente Presidente</p>
<p class="exp-card-title " *ngIf="loggeduser.Profile == 'PR'">Expediente</p>
<p class="text-center exp-card-content"><span class="number">{{expedienteprstore.count}} </span> <span class="title1">Documentos</span></p>
</div>
<!-- <div [class.active]="selectedElement == 'Pending'" (click)="openPendentesPage(); selectedElement='Pending'" class="exp-card d-flex flex-column justify-center" > -->
<div [class.active]="selectedElementF('Pending')" (click)="openPendentesPage(); selectedElement='Pending'" class="exp-card d-flex flex-column justify-center" >
<div class="d-flex justify-center">
@@ -95,7 +95,7 @@ export class GabineteDigitalPage implements OnInit, DoCheck {
despachoStore = DespachoStore;
eventoaprovacaostore = EventoAprovacaoStore;
pedidosstore = PedidosStore;
expedienteprstore = ExpedienteprStore;
// expedienteprstore = ExpedienteprStore;
despachoprstore = DespachosprStore;
totalDocumentStore = TotalDocumentStore
deplomasStore = DeplomasStore
@@ -112,7 +112,6 @@ export class GabineteDigitalPage implements OnInit, DoCheck {
constructor(
private processesbackend:ProcessesService,
private modalController: ModalController,
private alertService: AlertService,
private activatedRoute: ActivatedRoute,
private router: Router,
authService: AuthService,
@@ -459,11 +458,6 @@ export class GabineteDigitalPage implements OnInit, DoCheck {
this.expedientegbstore.count = this.count_exp_dailywork;
this.expedientegbstore.reset(expedientes)
let expedientes_pr = await this.processesbackend.GetTasksList("Expediente", false).toPromise();
expedientes_pr = expedientes_pr.filter(data => data.workflowInstanceDataFields.Status == "Active")
this.count_exp_pr = Object.keys(expedientes_pr).length;
this.expedienteprstore.count = this.count_exp_pr;
this.expedienteprstore.reset(expedientes_pr)
let despachos = await this.processesbackend.GetTasksList("Despacho", false).toPromise();
despachos = despachos.filter(data => data.workflowInstanceDataFields.Status == "Active")
@@ -505,14 +499,19 @@ export class GabineteDigitalPage implements OnInit, DoCheck {
let mdEventsOficial = await this.processesbackend.GetTasksList('Agenda Oficial MDGPR', false).toPromise();
let mdEventsPessoal = await this.processesbackend.GetTasksList('Agenda Pessoal MDGPR', false).toPromise();
const eventsMDGPRList = mdEventsOficial.concat(mdEventsPessoal);
this.eventoaprovacaostore.countMd = eventsMDGPRList.length
this.eventoaprovacaostore.resetmd(eventsMDGPRList);
let prEventsOficial = await this.processesbackend.GetTasksList('Agenda Oficial PR', false).toPromise();
let prEventsPessoal = await this.processesbackend.GetTasksList('Agenda Pessoal PR', false).toPromise();
const eventsPRList = prEventsOficial.concat(prEventsPessoal);
this.eventoaprovacaostore.countPr = eventsPRList.length
this.eventoaprovacaostore.resetpr(eventsPRList);
let diplomasValidar = despachospr.filter(data => data.activityInstanceName == "Revisar Diploma");
this.count_dip_pv = Object.keys(diplomasValidar).length;
this.deplomasStore.resetDiplomasReview(diplomasValidar)
@@ -5,6 +5,7 @@ import { PublicationsService } from 'src/app/services/publications.service';
import { ToastService } from 'src/app/services/toast.service';
import { ImageModalPage } from '../gallery/image-modal/image-modal.page';
import { NewPublicationPage } from '../new-publication/new-publication.page';
import { Location } from '@angular/common';
@Component({
@@ -23,8 +24,8 @@ export class PublicationDetailPage implements OnInit {
private navParams:NavParams,
private publications:PublicationsService,
private animationController: AnimationController,
private toastService: ToastService
) {
private toastService: ToastService,
private location: Location ) {
alert('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!')
@@ -56,7 +57,7 @@ export class PublicationDetailPage implements OnInit {
}, 2000);
}
getPublicationDetail(){
getPublicationDetail() {
this.showLoader = true;
console.log(this.publicationId);
/* console.log(this.folderId); */
@@ -78,17 +79,21 @@ export class PublicationDetailPage implements OnInit {
});
}
close(){
this.modalController.dismiss();
close() {
this.location.back()
}
async deletePost(){
async deletePost() {
const loader = this.toastService.loading()
try {
await this.publications.DeletePublication(this.folderId, this.publicationId).toPromise();
this.toastService.successMessage('Publicação eliminado')
if(window['app-view-publications-page-doRefresh']) {
window['app-view-publications-page-doRefresh']()
}
this.close();
} catch (error) {
this.toastService.badRequest('Publicação não eliminado')
@@ -47,6 +47,7 @@ export class ViewPublicationsPage implements OnInit {
console.log(params["params"]);
}
window['app-view-publications-page-doRefresh'] = this.doRefresh
});
}
@@ -73,7 +74,7 @@ export class ViewPublicationsPage implements OnInit {
this.getPublications();
}
doRefresh(event) {
doRefresh =(event) => {
setTimeout(() => {
this.getPublicationDetail();
this.getPublications();
+2 -1
View File
@@ -562,7 +562,8 @@ export class SearchPage implements OnInit {
component: ViewEventPage,
componentProps:{
eventId: Id,
isModal: true
isModal: true,
header: false
},
cssClass: 'modal modal-desktop',
});
+19 -1
View File
@@ -23,6 +23,11 @@ export class NotificationsService {
folderId: string;
DataArray: Array<String> = [];
callbacks: {
type: string,
funx: Function
}[] = []
constructor(
private http: HttpClient,
private storageService: StorageService,
@@ -34,7 +39,20 @@ export class NotificationsService {
private toastService: ToastService,
private zone: NgZone,
private activeroute: ActivatedRoute,
private jsonstore: JsonStore) { }
private jsonstore: JsonStore) {
this.callbacks.forEach(e=> {
if(e.type = 'Create Depacho') {
e.funx()
}
})
}
registerCallback(type: string, funx: Function ) {
this.callbacks.push({type, funx})
}
getTokenByUserIdAndId(user, userID) {
const geturl = environment.apiURL + 'notifications/user/' + userID;
+2 -1
View File
@@ -116,4 +116,5 @@ export class SynchroService {
export const connection = new SynchroService()
connection.setUrl()
connection.connect()
connection.connect()
@@ -108,7 +108,6 @@
<input matInput [ngxMatDatetimePicker]="picker1"
placeholder="Choose a date"
[(ngModel)]="postEvent.StartDate"
[min]="minDate"
[disabled]="disabled"
>
<mat-datepicker-toggle id="new-inicio" matSuffix [for]="picker1"></mat-datepicker-toggle>
@@ -140,7 +139,6 @@
<input matInput [ngxMatDatetimePicker]="fim"
placeholder="Choose a date"
[(ngModel)]="postEvent.EndDate"
[min]="endMinDate"
[disabled]="disabled"
>
<mat-datepicker-toggle id="new-fim" matSuffix [for]="fim"></mat-datepicker-toggle>
@@ -186,11 +184,11 @@
<mat-select placeholder="Selecione repetição*"
[(ngModel)]="postEvent.EventRecurrence.Type"
(ngModelChange)="onSelectedRecurringChanged($event)">
<!-- <mat-option
<mat-option
*ngFor="let recurring of recurringTypes" value="{{recurring.Code}}"
>
{{recurring.Description}}
</mat-option> -->
</mat-option>
</mat-select>
</mat-form-field>
@@ -207,8 +205,7 @@
<mat-form-field class="date-hour-picker">
<input matInput [ngxMatDatetimePicker]="occurrrence"
placeholder="Choose a date"
[formControl]="dateControlOccurrence"
[min]="endMinDate"
[(ngModel)]="postEvent.EventRecurrence.LastOccurrence"
[disabled]="disabled"
>
<mat-datepicker-toggle id="last-occurrence" matSuffix [for]="occurrrence"></mat-datepicker-toggle>
@@ -21,10 +21,9 @@ import { FormControl } from '@angular/forms';
import { NgxMatDateFormats } from '@angular-material-components/datetime-picker';
import { ThemePalette } from '@angular/material/core';
import { NgZone, ViewChild } from '@angular/core';
import { ViewChild } from '@angular/core';
import { FormGroup, Validators } from '@angular/forms';
import { NGX_MAT_DATE_FORMATS } from '@angular-material-components/datetime-picker';
import { EliminateEventPage } from 'src/app/modals/eliminate-event/eliminate-event.page';
const moment = _rollupMoment || _moment;
@@ -61,13 +60,11 @@ export class NewEventPage implements OnInit {
public showSeconds = false;
public touchUi = false;
public enableMeridian = false;
public minDate = new Date().toISOString().slice(0,10)
public endMinDate = new Date(new Date().getTime() + 15 * 60000);
public stepHour = 1;
public stepMinute = 5;
public stepSecond = 5;
public color: ThemePalette = 'primary';
recurringTypes: any;
recurringTypes = []
selectedRecurringType: any;
@Input() profile:string;
@@ -110,13 +107,9 @@ export class NewEventPage implements OnInit {
public stepMinutes = [1, 5, 10, 15, 20, 25];
public stepSeconds = [1, 5, 10, 15, 20, 25];
public dateControlOccurrence = new FormControl(moment("DD MM YYYY hh"));
showLoader = false
get dateOccurrence () {
return this.dateControlOccurrence.value
}
constructor(
private modalController: ModalController,
@@ -131,7 +124,7 @@ export class NewEventPage implements OnInit {
this.loggeduser = userService.ValidatedUser;
this.postEvent = new Event();
this.postEvent.StartDate = new Date();
this.postEvent.StartDate = new Date()
this.postEvent.EndDate = new Date(new Date().getTime() + 15 * 60000);
}
@@ -216,7 +209,6 @@ export class NewEventPage implements OnInit {
this.date = new Date(2021,9,4,5,6,7);
this.getDatepickerData()
this.injectValidation();
@@ -251,7 +243,7 @@ export class NewEventPage implements OnInit {
dateEnd: new FormControl(this.postEvent.EndDate, [
Validators.required
]),
dateOccurrence: new FormControl(this.postEvent.EventRecurrence.Type.toString() == '-1' ? ['ok']: this.dateOccurrence, [
dateOccurrence: new FormControl(this.postEvent.EventRecurrence.Type.toString() == '-1' ? ['ok']: this.postEvent.EventRecurrence.LastOccurrence, [
Validators.required
]),
participantes: new FormControl(this.taskParticipants, [
@@ -334,17 +326,6 @@ export class NewEventPage implements OnInit {
}
}
getDatepickerData() {
if (this.postEvent) {
this.postEvent.EventRecurrence.LastOccurrence = this.dateOccurrence
}
}
restoreDatepickerData() {
if (this.postEvent) {
this.dateControlOccurrence = new FormControl(moment(this.postEvent.EventRecurrence.LastOccurrence, "DD MM YYYY HH:mm"))
}
}
@@ -358,7 +339,6 @@ export class NewEventPage implements OnInit {
return false
}
this.getDatepickerData()
this.postEvent.Attendees = this.taskParticipants.concat(this.taskParticipantsCc);
@@ -483,7 +463,6 @@ export class NewEventPage implements OnInit {
}
afterSave() {
this.getDatepickerData()
this.deleteTemporaryData();
this.onAddEvent.emit(this.postEvent);
@@ -521,7 +500,6 @@ export class NewEventPage implements OnInit {
}
saveTemporaryData() {
this.getDatepickerData()
window['temp.path:/home/agenda/new-event.component.ts'] = {
postEvent: this.postEvent,
eventBody: this.eventBody,
@@ -545,7 +523,7 @@ export class NewEventPage implements OnInit {
this.segment = restoredData.segment
// restore dater for date and hours picker
this.restoreDatepickerData()
return true;
} else {
@@ -33,14 +33,16 @@
<span class="date">{{loadedEvent.Location}}</span>
<div *ngIf="loadedEvent.Organizer.Name == 'Agenda do Presidente da República' ">
<span class="label" *ngIf="loadedEvent.CalendarName == 'Oficial' " style="background-color: #99e47b;">{{loadedEvent.CalendarName}}</span>
<span class="label" *ngIf="loadedEvent.CalendarName == 'Pessoal' " style="background-color: #958bfc;">{{loadedEvent.CalendarName}}</span>
</div>
<div *ngIf="loadedEvent.Organizer.Name == 'Agenda do Ministro e Director do Gabinete do PR' ">
<span class="label" *ngIf="loadedEvent.CalendarName == 'Oficial' " style="background-color: #ffb703;">{{loadedEvent.CalendarName}}</span>
<span class="label" *ngIf="loadedEvent.CalendarName == 'Pessoal' " style="background-color: #f05d5e;">{{loadedEvent.CalendarName}}</span>
<div *ngIf="loadedEvent.Organizer">
<div *ngIf="loadedEvent.Organizer.Name == 'Agenda do Presidente da República' ">
<span class="label" *ngIf="loadedEvent.CalendarName == 'Oficial' " style="background-color: #99e47b;">{{loadedEvent.CalendarName}}</span>
<span class="label" *ngIf="loadedEvent.CalendarName == 'Pessoal' " style="background-color: #958bfc;">{{loadedEvent.CalendarName}}</span>
</div>
<div *ngIf="loadedEvent.Organizer.Name == 'Agenda do Ministro e Director do Gabinete do PR' ">
<span class="label" *ngIf="loadedEvent.CalendarName == 'Oficial' " style="background-color: #ffb703;">{{loadedEvent.CalendarName}}</span>
<span class="label" *ngIf="loadedEvent.CalendarName == 'Pessoal' " style="background-color: #f05d5e;">{{loadedEvent.CalendarName}}</span>
</div>
</div>
</div>
@@ -75,10 +77,10 @@
</div>
</div>
<div *ngIf="loadedAttachments" class="bottom-content width-100">
<div *ngIf="loadedEvent.Attachments" class="bottom-content width-100">
<h5>Documentos Anexados</h5>
<ion-list class="width-100">
<li *ngFor="let attach of loadedAttachments; let i = index" class="width-100" lines="none" class="ion-no-margin ion-no-padding pa-0">
<li *ngFor="let attach of loadedEvent.Attachments; let i = index" class="width-100" lines="none" class="ion-no-margin ion-no-padding pa-0">
<ion-label class="width-100 d-flex align-center" >
<p class="flex-grow-1" (click)="viewDocument(attach.SourceId)">
<span class="attach-title-item d-block">{{attach.SourceName}}</span>
@@ -116,7 +116,7 @@ ion-content{
float: right !important;
padding: 5px 13.5px 5px 13.5px;
color: #fff;
}
}
}
.location-detail{
@@ -2,7 +2,6 @@ import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
import { AlertController, ModalController, PopoverController } from '@ionic/angular';
import { Attachment } from 'src/app/models/attachment.model';
import { EventBody } from 'src/app/models/eventbody.model';
import { AttachmentsService } from 'src/app/services/attachments.service';
import { EventsService } from 'src/app/services/events.service';
import { Event } from 'src/app/models/event.model';
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
@@ -22,7 +21,6 @@ export class ViewEventPage implements OnInit {
isEventEdited: boolean;
eventBody: EventBody;
loadedAttachments:any;
loadedEventAttachments: Attachment[];
pageId: string;
showLoader: boolean;
@@ -44,7 +42,6 @@ export class ViewEventPage implements OnInit {
constructor(
private eventsService: EventsService,
private attachmentsService: AttachmentsService,
public alertController: AlertController,
private iab: InAppBrowser,
private processes: ProcessesService,
@@ -96,7 +93,6 @@ export class ViewEventPage implements OnInit {
this.loadedEvent = res;
this.today = new Date(res.StartDate);
this.customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]);
this.getAttachments(this.loadedEvent.EventId);
}, (error)=> {
console.log('errer', )
@@ -142,12 +138,6 @@ export class ViewEventPage implements OnInit {
}
getAttachments(eventId){
this.attachmentsService.getAttachmentsById(eventId).subscribe(res=>{
this.loadedAttachments = res;
console.log(res);
});
}
async editEvent() {
this.viewEventDetailDismiss.emit({
@@ -156,7 +146,7 @@ export class ViewEventPage implements OnInit {
})
}
viewDocument(sourceId){
viewDocument(sourceId) {
this.processes.GetDocumentUrl(sourceId, '8').subscribe(res=>{
console.log(res);
const url: string = res.replace("webTRIX.Viewer","webTRIX.Viewer.Branch1");
@@ -1,4 +1,4 @@
<ion-content class="container">
<ion-content class="options-container">
<div class="arrow-right">
<button class="btn-no-color" (click)="close()">
<ion-icon slot="end" class="arrow-right-icon" src='assets/images/icons-arrow-arrow-right.svg'></ion-icon>
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -1,4 +1,4 @@
<ion-content class="container">
<ion-content class="options-container">
<!-- <div class="buttons">
<button (click)="openAddNoteModal('Solicitar assinatura')" class="btn-cancel" shape="round" >Solicitar assinatura</button>
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -1,4 +1,4 @@
<ion-content class="container">
<ion-content class="options-container">
<div class="arrow-right" (click)="close()">
<button class="btn-no-color">
<ion-icon slot="end" class="arrow-right-icon" src='assets/images/icons-arrow-arrow-right.svg'></ion-icon>
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -1,4 +1,4 @@
<ion-content class="container">
<ion-content class="options-container">
<div class="arrow-right" (click)="close()">
<button class="btn-no-color">
<ion-icon slot="end" class="arrow-right-icon" src='assets/images/icons-arrow-arrow-right.svg'></ion-icon>
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -1,4 +1,4 @@
<ion-content class="container">
<ion-content class="options-container">
<div class="arrow-right" (click)="close()">
<button class="btn-no-color">
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -1,4 +1,4 @@
<ion-content class="container width-100 ">
<ion-content class="options-container width-100 ">
<div class="arrow-right" (click)="close()">
<button class="btn-no-color">
<ion-icon slot="end" class="arrow-right-icon" src='assets/images/icons-arrow-arrow-right.svg'></ion-icon>
@@ -1,4 +1,4 @@
.container{
.options-container{
--padding-top:20px !important;
--padding-bottom:20px !important;
--padding-start:20px !important;
@@ -54,6 +54,8 @@ export class ViewPublicationsPage implements OnInit {
this.getPublications();
this.getPublicationDetail();
window['app-view-publications-page-doRefresh'] = this.doRefresh
}
ngOnChanges(changes: any): void {
@@ -71,7 +73,7 @@ export class ViewPublicationsPage implements OnInit {
}
doRefresh(event) {
doRefresh =(event) => {
this.getPublications();
setTimeout(() => {
+1 -1
View File
@@ -13,7 +13,7 @@ export class ChatMessageService {
constructor() {
this.keyName = ('chat'+SHA1(this.constructor.name)).toString()
this.keyName = (SHA1('chat'+this.constructor.name)).toString()
setTimeout(()=> {
let restore = localstoreService.get(this.keyName, {})
+4 -4
View File
@@ -1,6 +1,6 @@
import { Injectable } from '@angular/core';
import { localstoreService } from '../localstore.service'
import { SHA1 } from 'crypto-js'
import { localstoreService } from '../localstore.service';
import { SHA1 } from 'crypto-js';
@Injectable({
providedIn: 'root'
@@ -14,9 +14,9 @@ export class ChatUserService {
constructor() {
this.keyName = ('chat'+SHA1(this.constructor.name)).toString()
this.keyName = (SHA1('chat'+this.constructor.name)).toString()
setTimeout(()=>{
setTimeout(()=> {
let restore = localstoreService.get(this.keyName, {})
this._userList = restore.userList || {}
}, 10)
+1
View File
@@ -48,6 +48,7 @@ export class DeplomasService {
}
set deplomasReviewCount(arg: number) {
this._diplomasReviewCount = arg
this.saveDiplomasReviewList()
}
get countDiplomasAssinadoListCount() {
@@ -14,8 +14,8 @@ export class EventoaprovacaoStoreService {
private keyNamemd: string;
private keyNamepr: string;
private _count = 0
_countPr = 0
_countMd = 0
private _countPr = 0
private _countMd = 0
constructor() {
+1 -15
View File
@@ -6,7 +6,7 @@ import { AES, enc, SHA1 } from 'crypto-js'
})
export class LocalstoreService {
private prefix = 'v14-'
private prefix = 'v15-'
constructor() {
@@ -60,17 +60,3 @@ export class LocalstoreService {
export const localstoreService = new LocalstoreService()
console.log( AES.encrypt( 'pode ser qualquer', 'ayrton').toString() )
// // Create WebSocket connection.
// const socket = new WebSocket('ws://localhost:8080');
// // Listen for messages
// socket.addEventListener('message', function (event) {
// console.log('Message from server ', event.data); // Message from server mobile first é fraco
// var p = Promise.resolve(event.data);
// p.then(function(v) {
// console.log(v); // mobile first é fraco
// });
// });