chore: complete learning module
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
import { Body, Controller, Get, Param, Post } from "@nestjs/common";
|
||||
import { ApiOperation, ApiTags } from "@nestjs/swagger";
|
||||
|
||||
import { CreateLearningCategoryDto } from "./DTO/create-learning-category.dto";
|
||||
import { CreateLearningDto } from "./DTO/create-learning.dto";
|
||||
import { LearningService } from "./providers/learning.service";
|
||||
import { AuthGuards } from "../../common/decorators/auth-guard.decorator";
|
||||
import { Roles } from "../../common/decorators/roles.decorator";
|
||||
import { ParamDto } from "../../common/DTO/param.dto";
|
||||
import { RoleEnum } from "../users/enums/role.enum";
|
||||
|
||||
@ApiTags("Learning")
|
||||
@AuthGuards()
|
||||
@Controller("learnings")
|
||||
export class LearningController {
|
||||
constructor(private readonly learningService: LearningService) {}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "Create learning" })
|
||||
@Roles(RoleEnum.ADMIN)
|
||||
@Post()
|
||||
create(@Body() createDto: CreateLearningDto) {
|
||||
return this.learningService.createLearning(createDto);
|
||||
}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "Create learning category" })
|
||||
@Roles(RoleEnum.ADMIN)
|
||||
@Post("category")
|
||||
createCategory(@Body() createDto: CreateLearningCategoryDto) {
|
||||
return this.learningService.createLearningCategory(createDto);
|
||||
}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "find all learnings" })
|
||||
@Roles(RoleEnum.ADMIN, RoleEnum.USER)
|
||||
@Get()
|
||||
findAllLearnings() {
|
||||
return this.learningService.findAllLearnings();
|
||||
}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "find one learning by id" })
|
||||
@Roles(RoleEnum.ADMIN, RoleEnum.USER)
|
||||
@Get(":id")
|
||||
findOneLearning(@Param() paramDto: ParamDto) {
|
||||
return this.learningService.findOneLearning(paramDto.id);
|
||||
}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "find all learning category" })
|
||||
@Roles(RoleEnum.ADMIN, RoleEnum.USER)
|
||||
@Get("category")
|
||||
findAllCategories() {
|
||||
return this.learningService.findAllCategories();
|
||||
}
|
||||
|
||||
//************************ */
|
||||
|
||||
@ApiOperation({ summary: "find one learning category by id" })
|
||||
@Roles(RoleEnum.ADMIN, RoleEnum.USER)
|
||||
@Get("category/:id")
|
||||
findOneCategory(@Param() paramDto: ParamDto) {
|
||||
return this.learningService.findOneCategory(paramDto.id);
|
||||
}
|
||||
|
||||
//************************ */
|
||||
}
|
||||
Reference in New Issue
Block a user