list para crear cosas
This commit is contained in:
parent
dda3fc5987
commit
4e61a200c2
@ -3,11 +3,11 @@ import {
|
||||
Entity,
|
||||
JoinColumn,
|
||||
ManyToOne,
|
||||
// OneToMany,
|
||||
OneToMany,
|
||||
PrimaryGeneratedColumn,
|
||||
} from 'typeorm';
|
||||
import { InstitucionCarrera } from '../../institucion-carrera/entity/institucion-carrera.entity';
|
||||
// import { Prestamo } from '../../prestamo/entity/prestamo.entity';
|
||||
import { Prestamo } from '../../prestamo/entity/prestamo.entity';
|
||||
import { Usuario } from '../../usuario/entity/usuario.entity';
|
||||
|
||||
@Entity()
|
||||
@ -39,6 +39,6 @@ export class InstitucionUsuario {
|
||||
@JoinColumn({ name: 'id_usuario' })
|
||||
usuario: Usuario;
|
||||
|
||||
// @OneToMany(() => Prestamo, (prestamo) => prestamo.institucionUsuario)
|
||||
// prestamos: Prestamo[];
|
||||
@OneToMany(() => Prestamo, (prestamo) => prestamo.institucionUsuario)
|
||||
prestamos: Prestamo[];
|
||||
}
|
||||
|
@ -47,8 +47,8 @@ export class Prestamo {
|
||||
@Column({ type: Number, nullable: true })
|
||||
id_equipo: number;
|
||||
|
||||
// @Column({ type: Number, nullable: true })
|
||||
// id_institucion_usuario: number;
|
||||
@Column({ type: Number, nullable: true })
|
||||
id_institucion_usuario: number;
|
||||
|
||||
@Column({ type: Number, nullable: true, default: 1 })
|
||||
id_operador_entrega: number;
|
||||
@ -63,13 +63,13 @@ export class Prestamo {
|
||||
@JoinColumn({ name: 'id_equipo' })
|
||||
equipo: Equipo;
|
||||
|
||||
// @ManyToOne(
|
||||
// () => InstitucionUsuario,
|
||||
// (institucionUsuario) => institucionUsuario.prestamos,
|
||||
// { eager: true },
|
||||
// )
|
||||
// @JoinColumn({ name: 'id_institucion_usuario' })
|
||||
// institucionUsuario: InstitucionUsuario;
|
||||
@ManyToOne(
|
||||
() => InstitucionUsuario,
|
||||
(institucionUsuario) => institucionUsuario.prestamos,
|
||||
{ eager: true },
|
||||
)
|
||||
@JoinColumn({ name: 'id_institucion_usuario' })
|
||||
institucionUsuario: InstitucionUsuario;
|
||||
|
||||
@ManyToOne(
|
||||
() => Operador,
|
||||
|
@ -1,8 +1,8 @@
|
||||
import { DataSource, ViewEntity, ViewColumn } from 'typeorm';
|
||||
import { Carrito } from '../../../carrito/entity/carrito.entity';
|
||||
import { Prestamo } from '../prestamo.entity';
|
||||
import { Equipo } from '../../../equipo/entity/equipo.entity';
|
||||
import { Modulo } from '../../../modulo/entity/modulo.entity';
|
||||
import { Prestamo } from '../prestamo.entity';
|
||||
import { Status } from '../../../status/entity/status.entity';
|
||||
import { TipoCarrito } from '../../../institucion-tipo-carrito/entity/tipo-carrito.entity';
|
||||
|
||||
@ -20,6 +20,7 @@ import { TipoCarrito } from '../../../institucion-tipo-carrito/entity/tipo-carri
|
||||
.addSelect('p.hora_inicio', 'hora_inicio')
|
||||
.addSelect('p.hora_max_recoger', 'hora_max_recoger')
|
||||
.addSelect('p.id_equipo', 'id_equipo')
|
||||
.addSelect('p.id_institucion_usuario', 'id_institucion_usuario')
|
||||
.addSelect('p.id_operador_entrega', 'id_operador_entrega')
|
||||
.addSelect('p.id_operador_regreso', 'id_operador_regreso')
|
||||
.addSelect('p.id_usuario', 'id_usuario')
|
||||
@ -83,6 +84,9 @@ export class InformacionPrestamoView {
|
||||
@ViewColumn()
|
||||
id_institucion: number;
|
||||
|
||||
@ViewColumn()
|
||||
id_institucion_usuario: number;
|
||||
|
||||
@ViewColumn()
|
||||
id_modulo: number;
|
||||
|
||||
|
@ -629,4 +629,14 @@ export class PrestamoController {
|
||||
this.validarUsuarioService.validarOperador(operador);
|
||||
return this.prestamoService.findAll(operador, query);
|
||||
}
|
||||
|
||||
@Serealize(MessageOutputDto)
|
||||
@Post('reparar')
|
||||
@UseGuards(AuthGuard('jwt'))
|
||||
reparar(@Request() req) {
|
||||
const superAdmin: Operador = req.user.operador;
|
||||
|
||||
this.validarUsuarioService.validarSuperAdmin(superAdmin);
|
||||
return this.prestamoService.reparar();
|
||||
}
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ import {
|
||||
Between,
|
||||
FindManyOptions,
|
||||
FindOptionsWhere,
|
||||
IsNull,
|
||||
LessThanOrEqual,
|
||||
Like,
|
||||
MoreThanOrEqual,
|
||||
@ -952,4 +953,39 @@ export class PrestamoService {
|
||||
usuario: { id_usuario: infoPrestamo.id_usuario },
|
||||
});
|
||||
}
|
||||
|
||||
reparar() {
|
||||
return this.informacionPrestamoView
|
||||
.find({ where: { id_institucion_usuario: IsNull() } })
|
||||
.then(async (infoPrestamos) => {
|
||||
for (let i = 0; i < infoPrestamos.length; i++) {
|
||||
const prestamo = this.viewToPrestamo(infoPrestamos[i]);
|
||||
const institucionesUsuario =
|
||||
await this.institucionUsuarioService.findAllByIdUsuarioIdInstitucion(
|
||||
prestamo.usuario,
|
||||
prestamo.equipo.carrito.modulo.institucion,
|
||||
);
|
||||
|
||||
if (institucionesUsuario.length === 1) {
|
||||
prestamo.institucionUsuario = institucionesUsuario[0];
|
||||
await this.repository.save(prestamo);
|
||||
} else if (
|
||||
prestamo.equipo.carrito.tipoCarrito.id_tipo_carrito === 2
|
||||
) {
|
||||
console.log(prestamo);
|
||||
console.log(institucionesUsuario);
|
||||
console.log(
|
||||
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++',
|
||||
);
|
||||
} else
|
||||
for (let j = 0; j < institucionesUsuario.length; j++)
|
||||
if (institucionesUsuario[j].activo) {
|
||||
prestamo.institucionUsuario = institucionesUsuario[j];
|
||||
await this.repository.save(prestamo);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return { message: 'Terminó' };
|
||||
});
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user