merge made with peter branch

This commit is contained in:
Eudes Inácio
2024-06-18 12:26:54 +01:00
33 changed files with 438 additions and 217 deletions
@@ -13,6 +13,9 @@ import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
import { TaskService } from 'src/app/services/task.service'
import { AgendaDataRepositoryService } from 'src/app/services/Repositorys/Agenda/agenda-data-repository.service';
import { EventToApproveDetails } from 'src/app/models/entiry/agenda/eventToApproveDetails';
import { EventsService } from 'src/app/services/events.service';
import { isHttpError } from 'src/app/services/http.service';
import { TracingType, XTracerAsync } from 'src/app/services/monitoring/opentelemetry/tracer';
@Component({
selector: 'app-approve-event',
@@ -53,7 +56,9 @@ export class ApproveEventPage implements OnInit {
public ThemeService: ThemeService,
private httpErroHandle: HttpErrorHandle,
public TaskService: TaskService,
private agendaDataRepository: AgendaDataRepositoryService
private agendaDataRepository: AgendaDataRepositoryService,
public EventsService: EventsService,
private httpErrorHandle: HttpErrorHandle,
) {
// Event to approve list
@@ -77,19 +82,33 @@ export class ApproveEventPage implements OnInit {
this.modalController.dismiss();
}
async getTask() {
@XTracerAsync({name:'ApproveEventPage/getTask', log: false, bugPrint: true})
async getTask(tracing?: TracingType) {
const res = await this.agendaDataRepository.getEventToApproveById(this.serialNumber)
const res = await this.agendaDataRepository.getEventToApproveById(this.serialNumber, tracing)
if (res.isOk()) {
this.loadedEvent = res.value;
console.log('attachment', res.value)
this.loadedAttachments = this.loadedEvent.Attachments
this.today = new Date(res.value.workflowInstanceDataFields.StartDate);
//
this.customDate = this.days[this.today.getDay()] + ", " + this.today.getDate() + " de " + (this.months[this.today.getMonth()]);
tracing.setAttribute('outcome', 'success')
} else {
console.log(res.error.status)
tracing.setAttribute('eventId', this.serialNumber)
if(!isHttpError(res.error)) {
this.toastService._badRequest('Pedimos desculpa mas não foi possível executar a acção. Por favor, contacte o apoio técnico. #133')
console.log(res.error)
} else if (isHttpError(res.error)) {
if(res.error.status == 404) {
this.toastService._badRequest('Este evento já não existe')
} else {
this.httpErrorHandle.httpStatusHandle(res.error)
}
}
}
}
@@ -52,10 +52,14 @@
(click)="openApproveModal(event.serialNumber, event)"
>
<div class="event-{{color}}-{{event.workflowInstanceDataFields.Agenda}} width-100">
<div class="approve-event-time">
<div *ngIf="!event.workflowInstanceDataFields.IsAllDayEvent" class="approve-event-time">
<p>{{event.workflowInstanceDataFields.StartDate | date: 'HH:mm'}}</p>
<p>{{event.workflowInstanceDataFields.EndDate | date: 'HH:mm'}}</p>
</div>
<div *ngIf="event.workflowInstanceDataFields.IsAllDayEvent" class="approve-event-time">
<p>Todo</p>
<p>o dia</p>
</div>
<div class="approve-event-detail">
<h3>{{event.workflowInstanceDataFields.Subject}}</h3>
<p *ngIf="toDateString(event.workflowInstanceDataFields.StartDate) != toDateString(event.workflowInstanceDataFields.EndDate)">{{event.workflowInstanceDataFields.StartDate | date: 'd/M/yy' }} - {{ event.workflowInstanceDataFields.EndDate | date: 'dd/M/yy'}} | {{event.workflowInstanceDataFields.Location}}</p>
@@ -146,7 +146,7 @@ export class EventListPage implements OnInit {
let allEvents = await this.AgendaDataRepositoryService.eventToApproveList({
userId,
status: EEventFilterStatus.Pending
})
}, tracing)
if(allEvents.isOk()) {
tracing.setAttribute('outcome', 'success')
@@ -44,7 +44,7 @@
</div>
<mat-select [(value)]="selectedUserCalendars" (selectionChange)="changeAgenda();changeSegmentCalendar()">
<mat-select [(value)]="selectedUserCalendar" (selectionChange)="changeAgenda();changeSegmentCalendar()">
<mat-option *ngFor="let calendars of calendarData" value="{{calendars.wxUserId}}">
@@ -148,7 +148,6 @@ export class NewEventPage implements OnInit {
selectedUserCalendar:any;
SessionStore = SessionStore
hasChangeCalendar = false
selectedUserCalendars
constructor(
private modalController: ModalController,
public eventService: EventsService,
@@ -188,7 +187,7 @@ export class NewEventPage implements OnInit {
)
this.setCalendarByDefault(true)
}
@@ -218,6 +217,7 @@ export class NewEventPage implements OnInit {
}
ngOnInit() {
this.setCalendarByDefault(true)
console.log(' INTERVENIENTES', this.taskParticipants)
this.changeProfileService.registerCallback(() => {
this.initializeData()
@@ -1041,7 +1041,8 @@ export class NewEventPage implements OnInit {
allDayCheck: this.allDayCheck,
segment: this.segment,
CalendarName: this.CalendarName,
documents: this.documents
documents: this.documents,
selectedUserCalendar: this.selectedUserCalendar
}
}
@@ -1061,6 +1062,7 @@ export class NewEventPage implements OnInit {
this.segment = restoredData.segment
this.CalendarName = restoredData.CalendarName
this.documents = restoredData.documents
this.selectedUserCalendar = restoredData.selectedUserCalendar
// restore dater for date and hours picker
@@ -20,6 +20,8 @@ import { EventController } from 'src/app/controller/event'
import { DateService } from 'src/app/services/date.service';
import { AgendaDataRepositoryService } from 'src/app/services/Repositorys/Agenda/agenda-data-repository.service';
import { SearchList_v2 } from 'src/app/models/search-document';
import { TracingType, XTracerAsync } from 'src/app/services/monitoring/opentelemetry/tracer';
import { isHttpError } from 'src/app/services/http.service';
@Component({
selector: 'app-view-event',
@@ -68,7 +70,7 @@ export class ViewEventPage implements OnInit {
private httpErrorHandle: HttpErrorHandle,
private router: Router,
private dateService: DateService,
private agendaDataRepository: AgendaDataRepositoryService
private agendaDataRepository: AgendaDataRepositoryService,
) {
this.isEventEdited = false;
this.loadedEvent = new Event();
@@ -124,29 +126,47 @@ export class ViewEventPage implements OnInit {
setTimeZone() {
this.TimeZoneString = this.loadedEvent.TimeZone
}
async loadEvent() {
@XTracerAsync({name:'ViewEventPage/loadEvent', log: false, bugPrint: true})
async loadEvent(tracing?: TracingType) {
let res = await this.agendaDataRepository.getEventById(this.eventId)
let res = await this.agendaDataRepository.getEventById(this.eventId, tracing)
if(res.isOk()) {
console.log('Loaded Event', res.value)
console.log('newAttahcmentList', res.value.Attachments)
tracing.setAttribute('outcome', 'success')
/* let changeDate = this.dateService.fixDate(res.value as any) as any */
this.loadedEvent = res.value as any;
this.setTimeZone()
} else {
tracing.setAttribute('eventId', this.eventId)
if(!isHttpError(res.error)) {
this.toastService._badRequest('Pedimos desculpa mas não foi possível executar a acção. Por favor, contacte o apoio técnico. #133')
console.log(res.error)
} else if (isHttpError(res.error)) {
if(res.error.status == 404) {
this.toastService._badRequest('Este evento já não existe')
} else {
this.httpErrorHandle.httpStatusHandle(res.error)
}
}
tracing.setAttribute('outcome', 'failed')
tracing.bugFlag()
this.viewEventDetailDismiss.emit({
type: 'close'
})
console.log(res.error)
}
}
deleteYesOrNo() {
if (this.loadedEvent.IsRecurring) {
if (this.loadedEvent.IsRecurring) {
this.alertController.create({
header: 'Eliminar evento?',
message: 'Este evento tem recorrência, deseja eliminar a Sequência de eventos?',
@@ -200,7 +220,7 @@ export class ViewEventPage implements OnInit {
res.present();
});
}
}
deleteEvent_v2(deleteAll) {