Usersettings

This commit is contained in:
Bastian Wagner
2025-01-24 14:11:23 +01:00
parent 2674ec0d24
commit e05b6cfc42
12 changed files with 281 additions and 5 deletions

View File

@@ -20,7 +20,7 @@ export class UserRepository extends Repository<User> {
}
findById(id: string): Promise<User> {
return this.findOne({ where: { id }, relations: ['external'] });
return this.findOne({ where: { id }, relations: ['external', 'settings'] });
}
async createUser(createUserDto: CreateUserDto): Promise<User> {

View File

@@ -6,6 +6,7 @@ import { IUser } from 'src/model/interface';
import { AuthenticatedRequest } from 'src/model/interface/authenticated-request.interface';
import { HttpErrorByCode } from '@nestjs/common/utils/http-error-by-code.util';
import { HttpStatusCode } from 'axios';
import { UserSettings } from 'src/model/entitites/user/user.settings.entity';
@UseGuards(AuthGuard)
@Controller('user')
@@ -39,4 +40,14 @@ export class UserController {
}
return this.userService.deleteUserById(id);
}
@Get('settings')
getUserSettings(@Req() req: AuthenticatedRequest) {
return req.user.settings
}
@Post('settings')
updateUserSettings(@Req() req: AuthenticatedRequest, @Body() settings: UserSettings) {
return this.userService.updateSettings(settings);
}
}

View File

@@ -1,5 +1,6 @@
import { Injectable } from '@nestjs/common';
import { User } from 'src/model/entitites';
import { UserSettings } from 'src/model/entitites/user/user.settings.entity';
import { IUser } from 'src/model/interface';
import { ActivityRepository, KeySystemRepository, RoleRepository, UserRepository, UserSettingsRepository } from 'src/model/repositories';
import { HelperService } from 'src/shared/service/system.helper.service';
@@ -62,4 +63,8 @@ export class UserService {
});
return activities;
}
updateSettings(settings: UserSettings) {
return this.userSettingsRepository.save(settings);
}
}