Subir carpetas con las nuevas tablas

This commit is contained in:
santiago
2025-04-01 15:07:11 -06:00
parent 1520825ad3
commit fbd753d27e
45 changed files with 1452 additions and 0 deletions
@@ -0,0 +1,57 @@
import { Body, Controller, Delete, Get, Param, ParseIntPipe, Patch, Post } from '@nestjs/common';
import { AdministradorService } from './administrador.service';
import { Administrador } from './administrador.entity';
import { CreateAdministradorDto } from './dto/create-administrador.dto';
import { UpdateAdministradorDto } from './dto/update.administrador.dto';
import { ApiTags, ApiOperation, ApiResponse, ApiParam, ApiBody } from '@nestjs/swagger';
@ApiTags('Administradores') // Agrupa los endpoints en Swagger
@Controller('administrador')
export class AdministradorController {
constructor(private administradorService: AdministradorService) {}
@Get()
@ApiOperation({ summary: 'Obtener todos los administradores' })
@ApiResponse({ status: 200, description: 'Lista de administradores obtenida correctamente.' })
getAdministradores(): Promise<Administrador[]> {
return this.administradorService.getAdministradores();
}
@Get(':id')
@ApiOperation({ summary: 'Obtener un administrador por ID' })
@ApiParam({ name: 'id', description: 'ID del administrador', example: 1 })
@ApiResponse({ status: 200, description: 'Administrador obtenido correctamente.' })
@ApiResponse({ status: 404, description: 'Administrador no encontrado.' })
getAdministrador(@Param('id', ParseIntPipe) id: number) {
return this.administradorService.getAdministrador(id)
}
@Post()
@ApiOperation({ summary: 'Registrar un nuevo administrador' })
@ApiBody({
description: 'Datos del administrador a registrar',
schema: {
type: 'object',
properties: {
id_tipo_user: { type: 'integer', example: 1 }
}
}
})
@ApiResponse({ status: 201, description: 'Administrador registrado exitosamente.' })
@ApiResponse({ status: 400, description: 'Datos inválidos.' })
createAdministrador(@Body() newAdministrador: CreateAdministradorDto) {
return this.administradorService.createAdministrador(newAdministrador)
}
@Delete(':id')
deleteAdministrador(@Param('id', ParseIntPipe) id: number) {
return this.administradorService.deleteAdministrador(id)
}
@Patch(':id')
updateAdministrador(@Param('id', ParseIntPipe) id: number, @Body() administrador: UpdateAdministradorDto) {
return this.administradorService.updateAdministrador(id, administrador)
}
}