import { Injectable } from '@angular/core'; import { HttpClient, HttpParams } from '@angular/common/http'; import { environment } from '../../../environments/environment'; @Injectable({ providedIn: 'root', }) export class PermissionManagementService { constructor(private http: HttpClient) { } getPermissionsForUser(username: string, sort: string = 'name', ignoreStart: boolean = true) { let params = new HttpParams() .set('sort', sort) .set('ignoreStart', ignoreStart.toString()); return this.http.get(environment.apiUrl + "/permissions/manage/" + username, { params }); } getAllPermissionsForUser(username: string, sort: string = 'name') { let params = new HttpParams().set('sort', sort); return this.http.get(environment.apiUrl + "/permissions/manage/" + username + "/all", { params }); } createPermission(permission: any) { return this.http.post(environment.apiUrl + "/permissions/manage", permission); } createMultiple(permissionList: any[]) { return this.http.post(environment.apiUrl + "/permissions/manage/multiple", permissionList); } updatePermission(permission: any) { return this.http.patch(environment.apiUrl + "/permissions/manage", permission); } deletePermission(permission: any) { return this.http.delete(environment.apiUrl + "/permissions/manage", { body: permission }); } }