log into professors

This commit is contained in:
TheManus88
2024-07-29 19:18:06 -06:00
parent 28aba967b1
commit 61ffbc195b
2 changed files with 117 additions and 79 deletions
+49 -22
View File
@@ -1,48 +1,75 @@
import { Body, Controller, Delete, Get, Param, ParseIntPipe, Post, Put, Query,UseGuards } from '@nestjs/common';
import { ProfesorService } from './profesor.service';
import { profesorDto } from './dto/profesorDto.dto';
import {Roles} from '../permissions/roles.decorator'
import {RolesGuard} from '../permissions/roles.guard'
import {Role} from '../permissions/role.enum'
import {
Body,
Controller,
Delete,
Get,
Logger,
Param,
ParseIntPipe,
Post,
Put,
Query,
UseGuards
} from "@nestjs/common";
import { ProfesorService } from "./profesor.service";
import { profesorDto } from "./dto/profesorDto.dto";
import { Roles } from "../permissions/roles.decorator";
import { RolesGuard } from "../permissions/roles.guard";
import { Role } from "../permissions/role.enum";
@Controller('profesor')
@Controller("profesor")
@UseGuards(RolesGuard)
export class ProfesorController {
constructor(private profesorService: ProfesorService) {}
constructor(private profesorService: ProfesorService) {
}
@Post()
@Roles(Role.Responsable,Role.Admin)
@Roles(Role.Responsable, Role.Admin)
async register(@Body() data: profesorDto) {
Logger.debug("register profesor");
return this.profesorService.register(data);
}
@Get()
findAll() {
Logger.debug("findAllProfesors");
return this.profesorService.findAll();
}
@Get('page')
findAllPaginated(@Query('page') page: number = 1, @Query('limit') limit: number = 10, @Query() filters: any) {
page = page < 1 ? 1 : page;
limit = limit > 10 || limit < 1 ? 10 : limit;
@Get("page")
findAllPaginated(@Query("page") page: number = 1, @Query("limit") limit: number = 10, @Query() filters: any) {
try {
Logger.debug("Page Profesors");
page = page < 1 ? 1 : page;
limit = limit > 10 || limit < 1 ? 10 : limit;
return this.profesorService.findAllPaginated(page, limit, filters);
} catch (err) {
Logger.error("profesor controller ", err.error);
return [];
}
return this.profesorService.findAllPaginated(page, limit, filters);
}
@Put(':id_profesor')
@Roles(Role.Responsable,Role.Admin)
async modify(@Param('id_profesor', ParseIntPipe) id_profesor: number, @Body() data: profesorDto) {
@Put(":id_profesor")
@Roles(Role.Responsable, Role.Admin)
async modify(@Param("id_profesor", ParseIntPipe) id_profesor: number, @Body() data: profesorDto) {
Logger.debug("put Profesors by id");
return this.profesorService.modify(id_profesor, data);
}
@Delete(':id_profesor')
@Roles(Role.Responsable,Role.Admin)
async remove(@Param('id_profesor', ParseIntPipe) id_profesor: number) {
@Delete(":id_profesor")
@Roles(Role.Responsable, Role.Admin)
async remove(@Param("id_profesor", ParseIntPipe) id_profesor: number) {
Logger.debug("delete Profesors by id");
return this.profesorService.remove(id_profesor);
}
@Get(':id_profesor')
async profile(@Param('id_profesor', ParseIntPipe) id_profesor: number) {
@Get(":id_profesor")
async profile(@Param("id_profesor", ParseIntPipe) id_profesor: number) {
Logger.debug("get Profesors by id");
return this.profesorService.profile(id_profesor);
}