Add fileName property to models and update related components for file handling

This commit is contained in:
liosha84
2025-08-09 22:22:02 +03:00
parent ca73cf31df
commit d45fd83593
64 changed files with 1644 additions and 433 deletions
@@ -14,7 +14,7 @@ export class AdminModuleService {
}
updateUserRoles(id: any,data: User): Observable<any> {
return this.http.put(`${this.baseUrl}/users/${id}`, data);
updateUserRoles(fileName: any,data: User): Observable<any> {
return this.http.put(`${this.baseUrl}/users/${fileName}`, data);
}
}
@@ -1,14 +1,11 @@
import {Component, CUSTOM_ELEMENTS_SCHEMA, inject, OnInit} from '@angular/core';
import {Router, RouterOutlet} from "@angular/router";
import {DOCUMENT} from '@angular/common';
import { ScrollPanelModule } from 'primeng/scrollpanel';
import {MenuItem} from 'primeng/api';
import {SideBarAdminComponent} from '../side-bar-admin.component/side-bar-admin.component';
@Component({
selector: 'app-admin.component',
imports: [
RouterOutlet,
ScrollPanelModule,
SideBarAdminComponent
],
schemas:[CUSTOM_ELEMENTS_SCHEMA],
@@ -19,9 +16,7 @@ export class AdminComponent implements OnInit {
private document = inject<Document>(DOCUMENT);
height = 0;
items: MenuItem[] | undefined;
constructor(private router: Router) {
constructor(private router: Router) {
this.height = 0
}
@@ -66,30 +61,7 @@ export class AdminComponent implements OnInit {
else
this.height = 0;
this.items = [
{
label: 'Admin',
icon: 'pi pi-palette',
command: () => {
this.router.navigate(['/main/admin/welcome']);
},
items: [
{
label: 'Settings',
icon: 'pi pi-eraser',
// route: '/main/admin/settings'
command: () => {
this.router.navigate(['/main/admin/settings']);
}
},
{
label: 'System',
icon: 'pi pi-heart',
route: '/main/admin/system'
}
]
}
];
}
}
@@ -1,15 +1,13 @@
import {CUSTOM_ELEMENTS_SCHEMA, NgModule} from '@angular/core';
import {mainRouting} from '../main-module/main.routing';
import {MainComponent} from '../main-module/main.component/main.component';
import {RouterModule} from '@angular/router';
import {AdminComponent} from './admin.component/admin.component';
import {adminRouting} from './admin.routing';
import { ScrollPanelModule } from 'primeng/scrollpanel';
@NgModule({
declarations: [
],
imports: [adminRouting, AdminComponent,ScrollPanelModule],
imports: [adminRouting, AdminComponent],
exports: [RouterModule],
schemas:[CUSTOM_ELEMENTS_SCHEMA]
})
@@ -85,7 +85,7 @@ export class UsersComponent {
}
saveUserRoles(user:User){
this.adminService.updateUserRoles(user.id, user).subscribe(
this.adminService.updateUserRoles(user.fileName, user).subscribe(
(data:any) => {
console.log(data);
user.isEdit = false
@@ -98,13 +98,13 @@ export class UsersComponent {
isChecked(element: User, role: Role) {
let userRoles: Role[] = element.roles;
return element.roles.some((r:Role) => r.id === role.id);
return element.roles.some((r:Role) => r.fileName === role.fileName);
}
onValChange(element:User, role: Role) {
let userRoles: Role[] = element.roles;
if (this.isChecked(element, role)) {
userRoles = userRoles.filter((r:Role) => r.id !== role.id);
userRoles = userRoles.filter((r:Role) => r.fileName !== role.fileName);
}else {
userRoles.push(role);
}