This commit is contained in:
Peter Maquiran
2022-04-02 09:40:09 +01:00
parent 53c59e7a43
commit e69392ce58
19 changed files with 786 additions and 213 deletions
+23 -6
View File
@@ -97,9 +97,26 @@ export class AuthService {
session.Profile = 'PR'
} else if(session.RoleID == 100000011) {
session.Profile = 'MDGPR'
} else if(session.RoleID == 99999872) {
session.Profile = 'Consultant'
}
else{
session.Profile = this.initialsService.getInitials(session.FullName);
else if(session.RoleID == 99999873) {
session.Profile = 'Assistant'
}
else if(session.RoleID == 99999874) {
session.Profile = 'Department boss'
}
else if(session.RoleID == 99999875) {
session.Profile = 'Director'
}
else if(session.RoleID == 99999876) {
session.Profile = 'Deputy Director'
}
else if(session.RoleID == 99999885) {
session.Profile = 'Secretariat'
}
else if(session.RoleID == 99999886) {
session.Profile = 'General secretary'
}
session.Password = user.password
@@ -131,7 +148,7 @@ export class AuthService {
let responseChat = await this.httpService.post('login', postData).toPromise();
if(responseChat) {
console.log('Login to Rocket chat OK', responseChat);
this.ValidatedUserChat = responseChat;
localStorage.setItem('userChat', JSON.stringify(responseChat));
this.storageService.store(AuthConnstants.AUTH, responseChat);
@@ -211,7 +228,7 @@ export class AuthService {
this.NfService.downloadFileMsg = async (message: MessageService, room?: RoomService) => {
console.log('FILE TYPE', message.file.type)
// console.log('FILE TYPE', message.file.type)
let downloadFile = "";
if (message.file.type == "application/img") {
const event: any = await this.AttachmentsService.downloadFile(message.file.guid).toPromise();
@@ -220,7 +237,7 @@ export class AuthService {
if (event.type === HttpEventType.DownloadProgress) {
//this.downloadProgess = Math.round((100 * event.loaded) / event.total);
console.log('FILE TYPE 33', message.file.type)
// console.log('FILE TYPE 33', message.file.type)
return true
} else if (event.type === HttpEventType.Response) {
downloadFile = 'data:image/jpeg;base64,' + btoa(new Uint8Array(event.body).reduce((data, byte) => data + String.fromCharCode(byte), ''));
@@ -232,7 +249,7 @@ export class AuthService {
}
await this.storage.set(message.file.guid, downloadFile).then(() => {
console.log('IMAGE SAVED')
// console.log('IMAGE SAVED')
});
return true
}
+214 -29
View File
@@ -28,9 +28,21 @@ export class EventsService {
headersMdOficial: HttpHeaders;
headersMdPessoal: HttpHeaders;
headerOwnOficial: HttpHeaders;
headersOwnPessoal: HttpHeaders;
headerSharedOficial: HttpHeaders;
headerSharedPessoal: HttpHeaders;
headersSharedOficial: HttpHeaders;
headersSharedPessoal: HttpHeaders;
hasSharedCalendar = false
hasOwnCalendar = false
calendarOwnerIds = []
constructor(
private http: HttpClient,
public user: AuthService,
@@ -51,6 +63,13 @@ export class EventsService {
this.headersSharedPessoal = new HttpHeaders();
this.headerOwnOficial= new HttpHeaders();
this.headersOwnPessoal= new HttpHeaders();
this.headerSharedOficial= new HttpHeaders();
this.headerSharedPessoal= new HttpHeaders();
this.setHeader()
this.changeProfileService.registerCallback(() => {
this.loggeduser = this.user.ValidatedUser;
@@ -61,10 +80,23 @@ export class EventsService {
setHeader() {
this.hasSharedCalendar = false
this.hasOwnCalendar = false
this.calendarOwnerIds = []
if (this.loggeduser) {
if (this.loggeduser.Profile == 'MDGPR') {
this.loggeduser.OwnerCalendars.forEach(calendar => {
if(!this.calendarOwnerIds.includes(calendar.OwnerUserId)) {
this.calendarOwnerIds.push(calendar.OwnerUserId)
}
this.hasOwnCalendar = true
if (calendar.CalendarName == 'Oficial') {
this.headersMdOficial = this.headersMdOficial.set('Authorization', this.loggeduser.BasicAuthKey);
this.headersMdOficial = this.headersMdOficial.set('CalendarId', calendar.CalendarId);
@@ -79,6 +111,13 @@ export class EventsService {
});
this.loggeduser.SharedCalendars.forEach(sharedCalendar => {
if(!this.calendarOwnerIds.includes(sharedCalendar.OwnerUserId)) {
this.calendarOwnerIds.push(sharedCalendar.OwnerUserId)
}
this.hasSharedCalendar = true
if (sharedCalendar.CalendarName == 'Oficial') {
this.headersSharedOficial = this.headersSharedOficial.set('Authorization', this.loggeduser.BasicAuthKey);
this.headersSharedOficial = this.headersSharedOficial.set('CalendarId', sharedCalendar.CalendarId);
@@ -94,6 +133,13 @@ export class EventsService {
else if (this.loggeduser.Profile == 'PR') {
this.loggeduser.OwnerCalendars.forEach(calendar => {
if(!this.calendarOwnerIds.includes(calendar.OwnerUserId)) {
this.calendarOwnerIds.push(calendar.OwnerUserId)
}
this.hasOwnCalendar = true
if (calendar.CalendarName == 'Oficial') {
this.headersPrOficial = this.headersPrOficial.set('Authorization', this.loggeduser.BasicAuthKey);
this.headersPrOficial = this.headersPrOficial.set('CalendarId', calendar.CalendarId);
@@ -106,6 +152,52 @@ export class EventsService {
}
});
} else {
this.loggeduser.OwnerCalendars.forEach(calendar => {
if(!this.calendarOwnerIds.includes(calendar.OwnerUserId)) {
this.calendarOwnerIds.push(calendar.OwnerUserId)
}
this.hasOwnCalendar = true
if (calendar.CalendarName == 'Oficial') {
this.headerOwnOficial = this.headerOwnOficial.set('Authorization', this.loggeduser.BasicAuthKey);
this.headerOwnOficial = this.headerOwnOficial.set('CalendarId', calendar.CalendarId);
this.headerOwnOficial = this.headerOwnOficial.set('CalendarRoleId', calendar.CalendarRoleId);
}
else if (calendar.CalendarName == 'Pessoal') {
this.headersOwnPessoal.set('Authorization', this.loggeduser.BasicAuthKey);
this.headersOwnPessoal.set('CalendarId', calendar.CalendarId);
this.headersOwnPessoal.set('CalendarRoleId', calendar.CalendarRoleId);
}
});
for (let sharedCalendar of this.loggeduser.SharedCalendars) {
if(!this.calendarOwnerIds.includes(sharedCalendar.OwnerUserId)) {
this.calendarOwnerIds.push(sharedCalendar.OwnerUserId)
}
this.hasSharedCalendar = true
if (sharedCalendar.CalendarName == 'Oficial') {
this.headerSharedOficial = this.headerSharedOficial.set('Authorization', 'Basic '+sharedCalendar.CalendarToken);
this.headerSharedOficial = this.headerSharedOficial.set('CalendarId', sharedCalendar.CalendarId);
this.headerSharedOficial = this.headerSharedOficial.set('CalendarRoleId', sharedCalendar.CalendarRoleId);
}
else if (sharedCalendar.CalendarName == 'Pessoal') {
this.headerSharedPessoal = this.headerSharedPessoal.set('Authorization', 'Basic '+sharedCalendar.CalendarToken);
this.headerSharedPessoal = this.headerSharedPessoal.set('CalendarId', sharedCalendar.CalendarId);
this.headerSharedPessoal = this.headerSharedPessoal.set('CalendarRoleId', sharedCalendar.CalendarRoleId);
}
}
console.log(this.loggeduser.SharedCalendars)
}
this.headers = new HttpHeaders();
@@ -113,20 +205,6 @@ export class EventsService {
}
}
/* getAllEvents(startdate:string, enddate:string): Observable<Event[]>{
const geturl = environment.apiURL + 'calendar/GetAllEvents';
let params = new HttpParams();
params = params.set("StartDate", startdate);
params = params.set("EndDate", enddate);
let options = {
headers: this.headers,
params: params
};
return this.http.get<Event[]>(`${geturl}`, options);
} */
getAllPrOficialEvents(startdate: string, enddate: string): Observable<EventList[]> {
let geturl = environment.apiURL + 'calendar/pr';
@@ -208,6 +286,93 @@ export class EventsService {
});
}
async getAllOwnEvents(startdate: string, enddate: string) {
let ownO = await this.getAllOwnOficialEvents(startdate, enddate).toPromise();
let ownP = await this.getAllOwnPessoalEvents(startdate, enddate).toPromise();
const resFinal = ownO.concat(ownP);
return new Promise(resolve => {
return resolve(resFinal)
});
}
getAllOwnOficialEvents(startdate: string, enddate: string): Observable<EventList[]> {
let geturl = environment.apiURL + 'calendar/GetEvents';
let params = new HttpParams();
params = params.set("StartDate", startdate);
params = params.set("EndDate", enddate);
let options = {
headers: this.headerOwnOficial,
params: params
};
return this.http.get<EventList[]>(`${geturl}`, options);
}
getAllOwnPessoalEvents(startdate: string, enddate: string): any {
let geturl = environment.apiURL + 'calendar/GetEvents';
let params = new HttpParams();
params = params.set("StartDate", startdate);
params = params.set("EndDate", enddate);
let options = {
headers: this.headersOwnPessoal,
params: params
};
return this.http.get<any>(`${geturl}`, options)
}
async genericGetAllSharedEvents(startdate: string, enddate: string) {
let prO = await this.genericGetAllSharedOficialEvents(startdate, enddate).toPromise();
let prP = await this.genericGetAllSharedPessoalEvents(startdate, enddate).toPromise();
const resFinal = prO.concat(prP);
return new Promise(resolve => {
return resolve(resFinal)
});
}
genericGetAllSharedOficialEvents(startdate: string, enddate: string): Observable<Event[]> {
let geturl = environment.apiURL + 'calendar/GetEvents';
geturl = geturl.replace('/V4/', '/V5/')
let params = new HttpParams();
params = params.set("StartDate", startdate);
params = params.set("EndDate", enddate);
let options = {
headers: this.headerSharedOficial,
params: params
};
return this.http.get<Event[]>(`${geturl}`, options);
}
genericGetAllSharedPessoalEvents(startdate: string, enddate: string): Observable<Event[]> {
let geturl = environment.apiURL + 'calendar/GetEvents';
geturl = geturl.replace('/V4/', '/V5/')
let params = new HttpParams();
params = params.set("StartDate", startdate);
params = params.set("EndDate", enddate);
let options = {
headers: this.headerSharedPessoal,
params: params
};
return this.http.get<Event[]>(`${geturl}`, options);
}
async getAllSharedEvents(startdate: string, enddate: string) {
let prO = await this.getAllSharedOficialEvents(startdate, enddate).toPromise();
let prP = await this.getAllSharedPessoalEvents(startdate, enddate).toPromise();
@@ -328,6 +493,8 @@ export class EventsService {
}
else if (this.loggeduser.Profile == 'PR') {
this.headers = this.headersPrOficial;
} else {
this.headers = this.headerOwnOficial
}
}
else {
@@ -337,6 +504,9 @@ export class EventsService {
else if (this.loggeduser.Profile == 'PR') {
this.headers = this.headersPrPessoal;
}
else {
this.headers = this.headersOwnPessoal
}
}
let options = {
@@ -361,21 +531,6 @@ export class EventsService {
return this.http.post<any>(`${puturl}`, body, options);
}
/* postEvent(event:Event, calendarName:string, sharedagenda:string)
{
const puturl = environment.apiURL + 'calendar/' + ((sharedagenda != '') ? sharedagenda : 'PostEvent');
let params = new HttpParams();
params = params.set("CalendarName", calendarName);
let options = {
headers: this.headers,
params: params
};
return this.http.post<Event>(`${puturl}`, event, options)
} */
postEventMd(event: Event, calendarName: string) {
const puturl = environment.apiURL + 'calendar/md';
let params = new HttpParams();
@@ -432,6 +587,36 @@ export class EventsService {
return this.http.post<string>(`${puturl}`, event, options)
}
postEventGeneric(event: Event, calendarName: string) {
const puturl = environment.apiURL + 'Calendar/PostEvent';
let params = new HttpParams();
params = params.set("CalendarName", calendarName);
let options: any;
switch (calendarName) {
case 'Oficial':
options = {
headers: this.headerSharedOficial,
params: params
};
break;
case 'Pessoal':
options = {
headers: this.headerSharedPessoal,
params: params
};
break;
}
return this.http.post<string>(`${puturl}`, event, options)
}
deleteEvent(eventid: string, eventDeleteType: number, calendarName: string) {
let arrayReq = [];
let Object = {
+1 -1
View File
@@ -25,7 +25,7 @@ export class PermissionService {
}
for(let permission of (this.SessionStore.user.UserPermissions || [])) {
for(let permission of ([...(this.SessionStore.user.UserPermissions || [] ), 530] || [])) {
if (args.includes(permission)) {
return true;
}