prestamo find all listo
This commit is contained in:
parent
8bbd2473d2
commit
30e190d35b
@ -1,19 +1,19 @@
|
||||
import { Controller, Get, Post, Put } from '@nestjs/common';
|
||||
import { ApiTags } from '@nestjs/swagger';
|
||||
import { PrestamoService } from './prestamo.service';
|
||||
import {ApiTags} from '@nestjs/swagger'
|
||||
|
||||
@Controller('prestamo')
|
||||
// @ApiTags('prestamo')
|
||||
@ApiTags('prestamo')
|
||||
export class PrestamoController {
|
||||
constructor(private prestamoService: PrestamoService) {}
|
||||
|
||||
@Get('activos')
|
||||
activos() {}
|
||||
|
||||
@Put('cancelar_operador')
|
||||
@Put('cancelar-operador')
|
||||
cancelarOperador() {}
|
||||
|
||||
@Put('cancelar_usuario')
|
||||
@Put('cancelar-usuario')
|
||||
cancelarUsuario() {}
|
||||
|
||||
@Put('entregar')
|
||||
@ -22,27 +22,27 @@ export class PrestamoController {
|
||||
@Get('historial')
|
||||
historial() {}
|
||||
|
||||
@Get('historial_equipo')
|
||||
@Get('historial-equipo')
|
||||
historialEquipo() {}
|
||||
|
||||
@Get('historial_usuario')
|
||||
@Get('historial-usuario')
|
||||
historialUsuario() {}
|
||||
|
||||
@Post()
|
||||
pedir() {}
|
||||
|
||||
@Get('prestamo_id_prestamo')
|
||||
@Get('prestamo-id-prestamo')
|
||||
prestamoIdPrestamo() {}
|
||||
|
||||
@Get('prestamo_id_usuario')
|
||||
@Get('prestamo-id-usuario')
|
||||
prestamoIdUsuario() {}
|
||||
|
||||
@Get('prestamo_numero_inventario')
|
||||
@Get('prestamo-numero-inventario')
|
||||
prestamoNumeroInventario() {}
|
||||
|
||||
@Put('regresar')
|
||||
regresar() {}
|
||||
|
||||
@Get('reporte')
|
||||
reporte() {}
|
||||
// @Get('reporte')
|
||||
// reporte() {}
|
||||
}
|
||||
|
@ -6,12 +6,23 @@ import { Prestamo } from './entity/prestamo.entity';
|
||||
import { CarritoModule } from '../carrito/carrito.module';
|
||||
import { EquipoModule } from '../equipo/equipo.module';
|
||||
import { InstitucionModule } from '../institucion/institucion.module';
|
||||
import { InstitucionCarreraModule } from '../institucion-carrera/institucion-carrera.module';
|
||||
import { InstitucionTipoCarritoModule } from '../institucion-tipo-carrito/institucion-tipo-carrito.module';
|
||||
import { ModuloModule } from '../modulo/modulo.module';
|
||||
import { TipoUsuarioModule } from '../tipo-usuario/tipo-usuario.module';
|
||||
import { UsuarioModule } from '../usuario/usuario.module';
|
||||
@Module({
|
||||
imports: [TypeOrmModule.forFeature([Prestamo])],
|
||||
imports: [
|
||||
CarritoModule,
|
||||
EquipoModule,
|
||||
InstitucionModule,
|
||||
InstitucionCarreraModule,
|
||||
InstitucionTipoCarritoModule,
|
||||
ModuloModule,
|
||||
TypeOrmModule.forFeature([Prestamo]),
|
||||
TipoUsuarioModule,
|
||||
UsuarioModule,
|
||||
],
|
||||
controllers: [PrestamoController],
|
||||
providers: [PrestamoService],
|
||||
exports: [PrestamoService],
|
||||
|
@ -1,59 +1,98 @@
|
||||
import { Injectable, NotFoundException } from '@nestjs/common';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
import { Repository } from 'typeorm';
|
||||
import { FindOperator, Like, Repository } from 'typeorm';
|
||||
import { Carrera } from '../institucion-carrera/entity/carrera.entity';
|
||||
import { Carrito } from '../carrito/entity/carrito.entity';
|
||||
import { Equipo } from '../equipo/entity/equipo.entity';
|
||||
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||
import { Modulo } from '../modulo/entity/modulo.entity';
|
||||
import { Prestamo } from './entity/prestamo.entity';
|
||||
import { TipoCarrito } from '../institucion-tipo-carrito/entity/tipo-carrito.entity';
|
||||
import { TipoUsuario } from '../tipo-usuario/entity/tipo-usuario.entity';
|
||||
import { Usuario } from '../usuario/entity/usuario.entity';
|
||||
// import { CarritoService } from '../carrito/carrito.service';
|
||||
// import { EquipoService } from '../equipo/equipo.service';
|
||||
// import { InstitucionService } from '../institucion/institucion.service';
|
||||
// import { ModuloService } from '../modulo/modulo.service';
|
||||
// import { InstitucionTipoCarritoService } from '../institucion-tipo-carrito/institucion-tipo-carrito.service';
|
||||
// import { TipoUsuarioService } from '../tipo-usuario/tipo-usuario.service';
|
||||
// import { UsuarioService } from '../usuario/usuario.service';
|
||||
import { CarritoService } from '../carrito/carrito.service';
|
||||
import { EquipoService } from '../equipo/equipo.service';
|
||||
import { InstitucionService } from '../institucion/institucion.service';
|
||||
import { ModuloService } from '../modulo/modulo.service';
|
||||
import { InstitucionCarreraService } from '../institucion-carrera/institucion-carrera.service';
|
||||
import { InstitucionTipoCarritoService } from '../institucion-tipo-carrito/institucion-tipo-carrito.service';
|
||||
import { TipoUsuarioService } from '../tipo-usuario/tipo-usuario.service';
|
||||
import { UsuarioService } from '../usuario/usuario.service';
|
||||
|
||||
@Injectable()
|
||||
export class PrestamoService {
|
||||
constructor(
|
||||
@InjectRepository(Prestamo) private repository: Repository<Prestamo>, // private carreraService: CarreraService, // private carritoService: CarritoService, // private equipoService: EquipoService, // private institucionService: InstitucionService, // private institucionTipoCarritoService: InstitucionTipoCarritoService, // private moduloService: ModuloService, // private tipoUsuarioService: TipoUsuarioService, // private usuarioService: UsuarioService,
|
||||
@InjectRepository(Prestamo) private repository: Repository<Prestamo>,
|
||||
private carritoService: CarritoService,
|
||||
private equipoService: EquipoService,
|
||||
private institucionService: InstitucionService,
|
||||
private institucionTipoCarritoService: InstitucionTipoCarritoService,
|
||||
private moduloService: ModuloService,
|
||||
private institucionCarreraService: InstitucionCarreraService,
|
||||
private tipoUsuarioService: TipoUsuarioService,
|
||||
private usuarioService: UsuarioService,
|
||||
) {}
|
||||
|
||||
findAll(filtros: {
|
||||
async findAll(filtros: {
|
||||
pagina: string;
|
||||
carrito?: string;
|
||||
equipo?: string;
|
||||
id_carrera?: number;
|
||||
id_institucion?: number;
|
||||
id_modulo?: number;
|
||||
id_tipo_carrito?: number;
|
||||
id_tipo_usuario?: number;
|
||||
// id_prestamo?: number;
|
||||
pagina: number;
|
||||
id_carrera?: string;
|
||||
id_institucion?: string;
|
||||
id_modulo?: string;
|
||||
id_tipo_carrito?: string;
|
||||
id_tipo_usuario?: string;
|
||||
id_prestamo?: string;
|
||||
usuario?: string;
|
||||
}) {
|
||||
const busqueda: {
|
||||
carrera?: Carrera;
|
||||
carrito?: Carrito;
|
||||
equipo?: Equipo;
|
||||
institucion?: Institucion;
|
||||
equipo: {
|
||||
equipo?: FindOperator<string>;
|
||||
carrito: {
|
||||
carrito?: FindOperator<string>;
|
||||
modulo?: Modulo;
|
||||
tipoCarrito?: TipoCarrito;
|
||||
};
|
||||
};
|
||||
usuario: {
|
||||
usuario?: FindOperator<string>;
|
||||
tipoUsuario?: TipoUsuario;
|
||||
usuario?: Usuario;
|
||||
} = {};
|
||||
// const carrera = this.carreraService.findBy();
|
||||
// const carrito = this.carritoService.find();
|
||||
// const equipo = this.equipoService.find();
|
||||
// const institucion = this.institucionService.find();
|
||||
// const modulo = this.moduloService.find();
|
||||
// const tipoCarrito = this.institucionTipoCarritoService.find();
|
||||
// const tipoUsuario = this.tipoUsuarioService.find();
|
||||
// const usuario = this.usuarioService.find();
|
||||
institucionCarrera: { carrera?: Carrera };
|
||||
};
|
||||
} = { equipo: { carrito: {} }, usuario: { institucionCarrera: {} } };
|
||||
const carrera = filtros.id_carrera
|
||||
? await this.institucionCarreraService.findCarreraByIdCarrera(
|
||||
parseInt(filtros.id_carrera),
|
||||
)
|
||||
: null;
|
||||
const institucion = filtros.id_institucion
|
||||
? await this.institucionService.findById(parseInt(filtros.id_institucion))
|
||||
: null;
|
||||
const modulo = filtros.id_modulo
|
||||
? await this.moduloService.findById(parseInt(filtros.id_modulo))
|
||||
: null;
|
||||
const tipoCarrito = filtros.id_tipo_carrito
|
||||
? await this.institucionTipoCarritoService.findTipoCaritoById(
|
||||
parseInt(filtros.id_tipo_carrito),
|
||||
)
|
||||
: null;
|
||||
const tipoUsuario = filtros.id_tipo_usuario
|
||||
? await this.tipoUsuarioService.findById(
|
||||
parseInt(filtros.id_tipo_usuario),
|
||||
)
|
||||
: null;
|
||||
|
||||
if (filtros.usuario)
|
||||
busqueda.usuario.usuario = Like(`%${filtros.usuario}%`);
|
||||
if (filtros.equipo) busqueda.equipo.equipo = Like(`%${filtros.equipo}%`);
|
||||
if (filtros.carrito)
|
||||
busqueda.equipo.carrito.carrito = Like(`%${filtros.carrito}%`);
|
||||
if (carrera) busqueda.usuario.institucionCarrera.carrera = carrera;
|
||||
if (modulo) busqueda.equipo.carrito.modulo = modulo;
|
||||
if (institucion) busqueda.equipo.carrito.modulo.institucion = institucion;
|
||||
if (tipoCarrito) busqueda.equipo.carrito.tipoCarrito = tipoCarrito;
|
||||
if (tipoUsuario) busqueda.usuario.tipoUsuario = tipoUsuario;
|
||||
return this.repository.findAndCount({
|
||||
where: busqueda,
|
||||
skip: (parseInt(filtros.pagina) - 1) * 25,
|
||||
take: 25,
|
||||
});
|
||||
}
|
||||
|
||||
findById(id_prestamo: number) {
|
||||
|
@ -42,7 +42,7 @@ export class Usuario {
|
||||
{ eager: true },
|
||||
)
|
||||
@JoinColumn({ name: 'id_institucion_carrera' })
|
||||
institucionCarrera?: InstitucionCarrera;
|
||||
institucionCarrera: InstitucionCarrera;
|
||||
|
||||
@ManyToOne(() => TipoUsuario, (tipoUsuario) => tipoUsuario.usuarios, {
|
||||
eager: true,
|
||||
|
Loading…
Reference in New Issue
Block a user