feat: set theme for junior users

This commit is contained in:
Abdalhamid Alhamad
2024-12-10 09:23:30 +03:00
parent c2f63ccc72
commit 7ed37c30e1
30 changed files with 302 additions and 14 deletions

View File

@ -7,8 +7,8 @@ import { ApiDataPageResponse, ApiDataResponse } from '~/core/decorators';
import { PageOptionsRequestDto } from '~/core/dtos';
import { CustomParseUUIDPipe } from '~/core/pipes';
import { ResponseFactory } from '~/core/utils';
import { CreateJuniorRequestDto } from '../dtos/request';
import { JuniorResponseDto } from '../dtos/response';
import { CreateJuniorRequestDto, SetThemeRequestDto } from '../dtos/request';
import { JuniorResponseDto, ThemeResponseDto } from '../dtos/response';
import { JuniorService } from '../services';
@Controller('juniors')
@ -53,4 +53,12 @@ export class JuniorController {
return ResponseFactory.data(new JuniorResponseDto(junior));
}
@Post('set-theme')
@UseGuards(AccessTokenGuard)
@ApiDataResponse(JuniorResponseDto)
async setTheme(@Body() body: SetThemeRequestDto, @AuthenticatedUser() user: IJwtPayload) {
const theme = await this.juniorService.setTheme(body, user.sub);
return ResponseFactory.data(new ThemeResponseDto(theme));
}
}