Implementierung des Imports von Benutzern und Gruppen aus Active Directory im Angular-Frontend.

This commit is contained in:
Developer 02
2024-03-11 15:31:36 +01:00
parent df9bc33795
commit 2e26342be6
292 changed files with 599 additions and 221 deletions

View File

@@ -1,7 +1,9 @@
import { Injectable, Inject } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { HttpClient, HttpParams } from '@angular/common/http';
import { DirUser } from '../models/user-management.api.models';
import { ApiService } from './user-management.api.service';
import { Observable } from 'rxjs/internal/Observable';
import { ApiResponseModel } from '../models/api.response.model';
@Injectable({
providedIn: 'root'
@@ -10,4 +12,13 @@ export class DirUserService extends ApiService<DirUser> {
constructor(http: HttpClient, @Inject('DIR_USER_URL') private userUri: string) {
super(http, userUri);
}
override getAll(groupName?: string): Observable<ApiResponseModel<DirUser[]>> {
let params = new HttpParams();
if (groupName) {
params = params.set('groupName', groupName);
}
return this.http.get<ApiResponseModel<DirUser[]>>(this.baseUrl, { params });
}
}

View File

@@ -0,0 +1,23 @@
import { HttpClient, HttpParams } from '@angular/common/http';
import { Observable } from 'rxjs';
import { ApiResponseModel } from '../models/api.response.model';
import { Inject, Injectable } from '@angular/core';
import { DirUser } from '../models/user-management.api.models';
@Injectable({
providedIn: 'root'
})
export class DirService {
constructor(private http: HttpClient, @Inject('DIR_URL') private baseUrl: string) {
this.http = http;
}
getUser(groupName: string): Observable<ApiResponseModel<DirUser[]>> {
let params = new HttpParams();
if (groupName) {
params = params.set('groupName', groupName);
}
return this.http.get<ApiResponseModel<DirUser[]>>(this.baseUrl, { params });
}
}

View File

@@ -21,12 +21,12 @@ export class GroupOfUserService extends ApiService<GroupOfUser> {
override getAll(withUser: boolean = false, withGroup: boolean = false): Observable<ApiResponseModel<GroupOfUser[]>> {
let params = new HttpParams();
if (withUser) {
params = params.set('withUser', 'true');
params = params.set('withUser', withUser);
}
if (withGroup) {
params = params.set('withGroup', 'true');
params = params.set('withGroup', withGroup);
}
return this.http.get<ApiResponseModel<GroupOfUser[]>>(`${this.baseUrl}`, { params });
return this.http.get<ApiResponseModel<GroupOfUser[]>>(this.baseUrl, { params });
}
}

View File

@@ -12,7 +12,7 @@ export class GroupService extends ApiService<Group> {
super(http, userUri);
}
createByAd(createModel: DirGroup): Observable<DirGroup> {
return this.http.post<DirGroup>(`${this.baseUrl}/byAd`, createModel);
createByDir(createModel: DirGroup): Observable<DirGroup> {
return this.http.post<DirGroup>(`${this.baseUrl}/byDir`, createModel);
}
}

View File

@@ -1,6 +1,6 @@
import { Injectable, Inject } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { User } from '../models/user-management.api.models';
import { DirUser, User } from '../models/user-management.api.models';
import { ApiService } from './user-management.api.service';
import { Observable } from 'rxjs';
import { ApiResponseModel } from '../models/api.response.model';
@@ -22,4 +22,9 @@ export class UserService extends ApiService<User> {
const url = `${this.baseUrl}/ByGroupId/${groupId}?assigned=${assigned}`;
return this.http.get<ApiResponseModel<User[]>>(url);
}
createByDir(createModel: DirUser): Observable<DirUser> {
console.log(createModel)
return this.http.post<DirUser>(`${this.baseUrl}/byDir`, createModel);
}
}