se agregó endpoint para borrar y traer obervaciones
This commit was merged in pull request #1.
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -7,6 +7,10 @@ import {
|
||||
UseGuards,
|
||||
Get,
|
||||
Query,
|
||||
Delete,
|
||||
HttpCode,
|
||||
HttpStatus,
|
||||
NotFoundException,
|
||||
Post,
|
||||
Res,
|
||||
Request,
|
||||
@@ -52,6 +56,16 @@ export class EquipoController {
|
||||
return this.equipoService.updateEquipo(equipoNuevo, id, req.user.id);
|
||||
}
|
||||
|
||||
@UseGuards(AuthGuard('jwt'))
|
||||
@Delete(':id')
|
||||
async deleteEquipo(@Param('id', ParseIntPipe) id_equipo: string) {
|
||||
try {
|
||||
return await this.equipoService.deleteEquipo(id_equipo);
|
||||
} catch (error) {
|
||||
throw new NotFoundException(error.message);
|
||||
}
|
||||
}
|
||||
|
||||
@UseGuards(AuthGuard('jwt'))
|
||||
@Get('usos')
|
||||
findUsos() {
|
||||
|
||||
@@ -57,6 +57,24 @@ export class EquipoService {
|
||||
private readonly perifericoRepo: Repository<Periferico>,
|
||||
) {}
|
||||
|
||||
async deleteEquipo(inventario: string): Promise<{ message: string }> {
|
||||
const equipo = await this.equipoRepository.findOne({
|
||||
where: { inventario },
|
||||
});
|
||||
|
||||
if (!equipo) {
|
||||
throw new NotFoundException(
|
||||
`No se encontró el equipo con id ${inventario}`,
|
||||
);
|
||||
}
|
||||
|
||||
await this.equipoRepository.remove(equipo);
|
||||
|
||||
return {
|
||||
message: `Equipo con inv ${inventario} eliminado correctamente`,
|
||||
};
|
||||
}
|
||||
|
||||
async buscarEquipos(filtros: any, page: number = 1, limit: number = 10) {
|
||||
const query = this.equipoRepository
|
||||
.createQueryBuilder('equipo')
|
||||
@@ -206,7 +224,9 @@ export class EquipoService {
|
||||
equipo.adscripcion.adscripcion,
|
||||
);
|
||||
|
||||
return { ...equipo, ...responsable };
|
||||
const observaciones = await this.movimiento.buscar(equipo.id_equipo);
|
||||
|
||||
return { ...equipo, ...responsable, observaciones };
|
||||
}
|
||||
|
||||
async searchResponsable(nombreAdscripcion: string) {
|
||||
|
||||
@@ -23,4 +23,20 @@ export class MovimientoService {
|
||||
|
||||
return await this.movimientoRepo.save(movimiento);
|
||||
}
|
||||
|
||||
async buscar(idEquipo: number): Promise<string> {
|
||||
const movimiento = await this.movimientoRepo.findOne({
|
||||
where: { equipo: { id_equipo: idEquipo } },
|
||||
order: { fechaMovimiento: 'DESC' },
|
||||
select: ['observaciones', 'fechaMovimiento'],
|
||||
});
|
||||
|
||||
if (!movimiento) {
|
||||
throw new NotFoundException(
|
||||
`No se encontraron movimientos para el equipo con id ${idEquipo}`,
|
||||
);
|
||||
}
|
||||
|
||||
return movimiento.observaciones;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user