institucion día documentación
This commit is contained in:
@@ -1,20 +1,23 @@
|
||||
import { Body, Controller, Get, Put, Query } from '@nestjs/common';
|
||||
import { ApiBody, ApiOperation, ApiQuery, ApiTags } from '@nestjs/swagger';
|
||||
import { InstitucionDiaService } from './institucion-dia.service';
|
||||
import { IdInstitucionDto } from '../dto/id-institucion.dto';
|
||||
import { InstitucionDiaUpdateDto } from './dto/institucion-dia-update.dto';
|
||||
import {ApiTags} from '@nestjs/swagger'
|
||||
|
||||
@Controller('institucion-dia')
|
||||
// @ApiTags('institucion-dia')
|
||||
@ApiTags('institucion-dia')
|
||||
export class InstitucionDiaController {
|
||||
constructor(private institucionDiaService: InstitucionDiaService) {}
|
||||
|
||||
@Get()
|
||||
get() {
|
||||
return this.institucionDiaService.findAll();
|
||||
}
|
||||
|
||||
@Get('dias')
|
||||
@ApiOperation({
|
||||
description: 'Endpoint que retorna todos los días de una institución.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
})
|
||||
dias(@Query() query: IdInstitucionDto) {
|
||||
return this.institucionDiaService.findAllByIdInstitucion(
|
||||
parseInt(query.id_institucion),
|
||||
@@ -22,6 +25,23 @@ export class InstitucionDiaController {
|
||||
}
|
||||
|
||||
@Put()
|
||||
@ApiOperation({
|
||||
description: 'Endpoint que actualiza la información de un día.',
|
||||
})
|
||||
@ApiBody({
|
||||
description:
|
||||
'Todas las variables a excepción de id_institucion_dia son opcionales.',
|
||||
examples: {
|
||||
ejemplo: {
|
||||
value: {
|
||||
id_institucion_dia: 217,
|
||||
activo: true,
|
||||
hora_inicio: '09:00',
|
||||
hora_fin: '17:45',
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
update(@Body() body: InstitucionDiaUpdateDto) {
|
||||
return this.institucionDiaService.update(body);
|
||||
}
|
||||
|
||||
@@ -7,24 +7,18 @@ import { InstitucionService } from '../institucion/institucion.service';
|
||||
export class InstitucionDiaService {
|
||||
constructor(
|
||||
@InjectRepository(InstitucionDia)
|
||||
private repositoryInstitucionDia: Repository<InstitucionDia>,
|
||||
private repository: Repository<InstitucionDia>,
|
||||
private institucionService: InstitucionService,
|
||||
) {}
|
||||
|
||||
findAll() {
|
||||
return this.repositoryInstitucionDia.find();
|
||||
}
|
||||
|
||||
findAllByIdInstitucion(id_institucion: number) {
|
||||
return this.institucionService
|
||||
.findById(id_institucion)
|
||||
.then((institucion) =>
|
||||
this.repositoryInstitucionDia.find({ institucion }),
|
||||
);
|
||||
.then((institucion) => this.repository.find({ institucion }));
|
||||
}
|
||||
|
||||
findById(id_institucion_dia: number) {
|
||||
return this.repositoryInstitucionDia
|
||||
return this.repository
|
||||
.findOne({ id_institucion_dia })
|
||||
.then((institucionDia) => {
|
||||
if (!institucionDia) throw new Error('No existe esta institucion dia.');
|
||||
@@ -36,7 +30,7 @@ export class InstitucionDiaService {
|
||||
return this.findById(attrs.id_institucion_dia)
|
||||
.then((institucionDia) => {
|
||||
Object.assign(institucionDia, attrs);
|
||||
return this.repositoryInstitucionDia.save(institucionDia);
|
||||
return this.repository.save(institucionDia);
|
||||
})
|
||||
.then((_) => ({
|
||||
message: 'Se actualió correctamente la institucion infracción.',
|
||||
|
||||
@@ -22,9 +22,9 @@ export class InstitucionController {
|
||||
description: 'Endpoint que retorna la información de una institución.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
description: 'Id de la institución.',
|
||||
})
|
||||
institucion(@Query() query: IdInstitucionDto) {
|
||||
return this.institucionService.findById(parseInt(query.id_institucion));
|
||||
|
||||
Reference in New Issue
Block a user