todos los gets
This commit is contained in:
@@ -40,7 +40,7 @@ export class CarritoController {
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo carrito que se queire usar como filtro.',
|
||||
description: 'Id del tipo carrito que se quiere usar como filtro.',
|
||||
name: 'id_tipo_carrito',
|
||||
type: 'string',
|
||||
required: false,
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import { Body, Controller, Delete, Post } from '@nestjs/common';
|
||||
import { ApiBody, ApiOperation } from '@nestjs/swagger';
|
||||
import { ApiBody, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { EquipoProgramaService } from './equipo-programa.service';
|
||||
import { EquipoProgramaCreateDto } from './dto/equipo-programa-create.dto';
|
||||
import { EquipoProgramaDeleteDto } from './dto/equipo-programa-delete.dto';
|
||||
@Controller('equipo-programa')
|
||||
@ApiTags('equipo-programa')
|
||||
export class EquipoProgramaController {
|
||||
constructor(private equipoProgramaService: EquipoProgramaService) {}
|
||||
|
||||
|
||||
@@ -42,37 +42,37 @@ export class EquipoController {
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Carrito que se queire usar como filtro.',
|
||||
description: 'Carrito que se quiere usar como filtro.',
|
||||
name: 'carrito',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Equipo que se queire usar como filtro.',
|
||||
description: 'Equipo que se quiere usar como filtro.',
|
||||
name: 'equipo',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo de carrito que se queire usar como filtro.',
|
||||
description: 'Id del tipo de carrito que se quiere usar como filtro.',
|
||||
name: 'id_tipo_carrito',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del status que se queire usar como filtro.',
|
||||
description: 'Id del status que se quiere usar como filtro.',
|
||||
name: 'id_status',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del programa que se queire usar como filtro.',
|
||||
description: 'Id del programa que se quiere usar como filtro.',
|
||||
name: 'id_programa',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del módulo que se queire usar como filtro.',
|
||||
description: 'Id del módulo que se quiere usar como filtro.',
|
||||
name: 'id_modulo',
|
||||
type: 'string',
|
||||
})
|
||||
// @ApiQuery({
|
||||
// description: 'Id del tipo de entrada que se queire usar como filtro.',
|
||||
// description: 'Id del tipo de entrada que se quiere usar como filtro.',
|
||||
// name: 'id_tipo_entrada',
|
||||
// type: 'string',
|
||||
// })
|
||||
|
||||
@@ -71,19 +71,19 @@ export class OperadorController {
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución que se queire usar como filtro.',
|
||||
description: 'Id de la institución que se quiere usar como filtro.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo usuario que se queire usar como filtro.',
|
||||
description: 'Id del tipo usuario que se quiere usar como filtro.',
|
||||
name: 'id_tipo_usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Operador que se queire buscar.',
|
||||
description: 'Operador que se quiere buscar.',
|
||||
name: 'operador',
|
||||
type: 'string',
|
||||
required: false,
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
import { IsNumberString } from 'class-validator';
|
||||
|
||||
export class PrestamoHistorialEquipoDto {
|
||||
@IsNumberString()
|
||||
id_equipo: string;
|
||||
|
||||
@IsNumberString()
|
||||
pagina: string;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import { IsNumberString } from 'class-validator';
|
||||
|
||||
export class PrestamoHistorialUsuarioDto {
|
||||
@IsNumberString()
|
||||
pagina: string;
|
||||
|
||||
@IsNumberString()
|
||||
id_usuario: string;
|
||||
}
|
||||
@@ -18,9 +18,11 @@ export class PrestamoHistorialDto {
|
||||
equipo?: string;
|
||||
|
||||
@IsDateString()
|
||||
@IsOptional()
|
||||
fechaFin?: string;
|
||||
|
||||
@IsDateString()
|
||||
@IsOptional()
|
||||
fechaInicio?: string;
|
||||
|
||||
@IsNumberString()
|
||||
|
||||
@@ -6,6 +6,9 @@ import { PrestamoActivosDto } from './dto/prestamo-activos.dto';
|
||||
import { PrestamoIdUsuarioDto } from './dto/prestamo-id-usuario.dto';
|
||||
import { PrestamoIdPrestamoDto } from './dto/prestamo-id-prestamo.dto';
|
||||
import { PrestamoNumeroInventarioDto } from './dto/prestamo-numero-inventario.dto';
|
||||
import { PrestamoHistorialEquipoDto } from './dto/prestamo-historial-equipo.dto';
|
||||
import { PrestamoHistorialUsuarioDto } from './dto/prestamo-historial-usuario.dto';
|
||||
import { PrestamoHistorialDto } from './dto/prestamo-historial.dto';
|
||||
|
||||
@Controller('prestamo')
|
||||
@ApiTags('prestamo')
|
||||
@@ -13,29 +16,205 @@ export class PrestamoController {
|
||||
constructor(private prestamoService: PrestamoService) {}
|
||||
|
||||
@Get('activos')
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que retorna 25 prestamos activos dependiendo de la página en la que se encuentra el operador y sus filtros.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Página en la que se encuentra el usuario.',
|
||||
name: 'pagina',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Carrito que se quiere usar como filtro.',
|
||||
name: 'carrito',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Equipo que se quiere usar como filtro.',
|
||||
name: 'equipo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución que se quiere usar como filtro.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del modulo que se quiere usar como filtro.',
|
||||
name: 'id_modulo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del préstamo que se quiere usar como filtro.',
|
||||
name: 'id_prestamo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo de carrito que se quiere usar como filtro.',
|
||||
name: 'id_tipo_carrito',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo de usuario que se quiere usar como filtro.',
|
||||
name: 'id_tipo_usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Usuario que se quiere usar como filtro.',
|
||||
name: 'usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
activos(@Query() query: PrestamoActivosDto) {
|
||||
return this.prestamoService.findAll(query);
|
||||
}
|
||||
|
||||
@Put('cancelar-operador')
|
||||
@ApiOperation({
|
||||
description: 'Endpoint que cancela un prestamo por parte del operador.',
|
||||
})
|
||||
cancelarOperador() {}
|
||||
|
||||
@Put('cancelar-usuario')
|
||||
@ApiOperation({
|
||||
description: 'Endpoint que cancela el prestamo del usuario.',
|
||||
})
|
||||
cancelarUsuario() {}
|
||||
|
||||
@Put('entregar')
|
||||
@ApiOperation({
|
||||
description: 'Endpoint que actualiza el status del equipo a "En uso".',
|
||||
})
|
||||
entregar() {}
|
||||
|
||||
@Get('historial')
|
||||
historial() {}
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que retorna 25 prestamos dependiendo de la página en la que se encuentra el operador y sus filtros.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Página en la que se encuentra el usuario.',
|
||||
name: 'pagina',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Carrito que se quiere usar como filtro.',
|
||||
name: 'carrito',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Equipo que se quiere usar como filtro.',
|
||||
name: 'equipo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Fecha inicio que se quiere usar como filtro.',
|
||||
name: 'fechaInicio',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Fecha fin se quiere usar como filtro.',
|
||||
name: 'fechaFin',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución que se quiere usar como filtro.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del modulo que se quiere usar como filtro.',
|
||||
name: 'id_modulo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del préstamo que se quiere usar como filtro.',
|
||||
name: 'id_prestamo',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo de carrito que se quiere usar como filtro.',
|
||||
name: 'id_tipo_carrito',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo de usuario que se quiere usar como filtro.',
|
||||
name: 'id_tipo_usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Usuario que se quiere usar como filtro.',
|
||||
name: 'usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
historial(@Query() query: PrestamoHistorialDto) {
|
||||
return this.prestamoService.findAll(query);
|
||||
}
|
||||
|
||||
@Get('historial-equipo')
|
||||
historialEquipo() {}
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que retorna 25 prestamos de un usuario dependiendo de la página en la que se encuentra el operador y sus filtros.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Página en la que se encuentra el usuario.',
|
||||
name: 'pagina',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del equipo.',
|
||||
name: 'id_equipo',
|
||||
type: 'string',
|
||||
})
|
||||
historialEquipo(@Query() query: PrestamoHistorialEquipoDto) {
|
||||
return this.prestamoService.findAllByIdEquipo(
|
||||
parseInt(query.id_equipo),
|
||||
parseInt(query.pagina),
|
||||
);
|
||||
}
|
||||
|
||||
@Get('historial-usuario')
|
||||
historialUsuario() {}
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que retorna 25 prestamos de un equipo dependiendo de la página en la que se encuentra el operador y sus filtros.',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Página en la que se encuentra el usuario.',
|
||||
name: 'pagina',
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del usuario.',
|
||||
name: 'id_usuario',
|
||||
type: 'string',
|
||||
})
|
||||
historialUsuario(@Query() query: PrestamoHistorialUsuarioDto) {
|
||||
return this.prestamoService.findAllByIdUsuario(
|
||||
parseInt(query.id_usuario),
|
||||
parseInt(query.pagina),
|
||||
);
|
||||
}
|
||||
|
||||
@Post()
|
||||
@ApiOperation({ description: 'Endpoint .' })
|
||||
pedir(@Body() body: PrestamoPedirDto) {
|
||||
return this.prestamoService.create(
|
||||
body.id_usuario,
|
||||
@@ -90,6 +269,7 @@ export class PrestamoController {
|
||||
}
|
||||
|
||||
@Put('regresar')
|
||||
@ApiOperation({ description: 'Endpoint .' })
|
||||
regresar() {}
|
||||
|
||||
// @Get('reporte')
|
||||
|
||||
@@ -144,7 +144,7 @@ export class PrestamoService {
|
||||
activo?: boolean;
|
||||
fechaInicio?: Date;
|
||||
fechaFin?: Date;
|
||||
id_prestamo?: number;
|
||||
id_prestamo?: FindOperator<string>;
|
||||
equipo: {
|
||||
equipo?: FindOperator<string>;
|
||||
carrito: {
|
||||
@@ -202,13 +202,13 @@ export class PrestamoService {
|
||||
if (typeof filtros.activo === 'boolean') busqueda.activo = filtros.activo;
|
||||
else busqueda.activo = filtros.activo === 'true';
|
||||
} else {
|
||||
join.oe = 'p.operadorEntrega';
|
||||
join.or = 'p.operadorRegreso';
|
||||
// join.oe = 'p.operadorEntrega';
|
||||
// join.or = 'p.operadorRegreso';
|
||||
}
|
||||
if (filtros.carrito)
|
||||
busqueda.equipo.carrito.carrito = Like(`%${filtros.carrito}%`);
|
||||
if (filtros.equipo) busqueda.equipo.equipo = Like(`%${filtros.equipo}%`);
|
||||
if (filtros.equipo) busqueda.id_prestamo = parseInt(filtros.id_prestamo);
|
||||
if (filtros.id_prestamo) busqueda.id_prestamo = Like(filtros.id_prestamo);
|
||||
if (filtros.usuario)
|
||||
busqueda.usuario.usuario = Like(`%${filtros.usuario}%`);
|
||||
// if (carrera) busqueda.usuario.institucionCarrera.carrera = carrera;
|
||||
@@ -229,6 +229,28 @@ export class PrestamoService {
|
||||
});
|
||||
}
|
||||
|
||||
findAllByIdUsuario(id_usuario: number, pagina: number) {
|
||||
return this.usuarioService
|
||||
.findById(id_usuario, true, true)
|
||||
.then((usuario) =>
|
||||
this.repository.find({
|
||||
where: { usuario },
|
||||
skip: (pagina - 1) * 25,
|
||||
take: 25,
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
async findAllByIdEquipo(id_equipo: number, pagina: number) {
|
||||
return this.equipoService.findById(id_equipo).then((equipo) =>
|
||||
this.repository.find({
|
||||
where: { equipo },
|
||||
skip: (pagina - 1) * 25,
|
||||
take: 25,
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
findById(id_prestamo: number) {
|
||||
return this.repository.findOne({ id_prestamo }).then((prestamo) => {
|
||||
if (!prestamo) throw new NotFoundException('No existe este préstamo.');
|
||||
|
||||
@@ -139,31 +139,31 @@ export class UsuarioController {
|
||||
type: 'string',
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la institución que se queire usar como filtro.',
|
||||
description: 'Id de la institución que se quiere usar como filtro.',
|
||||
name: 'id_institucion',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id de la carrera que se queire usar como filtro.',
|
||||
description: 'Id de la carrera que se quiere usar como filtro.',
|
||||
name: 'id_carrera',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Id del tipo usuario que se queire usar como filtro.',
|
||||
description: 'Id del tipo usuario que se quiere usar como filtro.',
|
||||
name: 'id_tipo_usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Nombre del usuario que se queire buscar.',
|
||||
description: 'Nombre del usuario que se quiere buscar.',
|
||||
name: 'nombre',
|
||||
type: 'string',
|
||||
required: false,
|
||||
})
|
||||
@ApiQuery({
|
||||
description: 'Usuario que se queire buscar.',
|
||||
description: 'Usuario que se quiere buscar.',
|
||||
name: 'usuario',
|
||||
type: 'string',
|
||||
required: false,
|
||||
|
||||
Reference in New Issue
Block a user