Listo equipo
This commit is contained in:
@@ -49,7 +49,7 @@ export class EquipoMotivoService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
findAllByIdEquipo(id_equipo: number, pagina: number) {
|
findAllByIdEquipo(id_equipo: number, pagina: number) {
|
||||||
return this.equipoService.findInfoEquipoById(id_equipo).then((equipo) =>
|
return this.equipoService.findById(id_equipo).then((equipo) =>
|
||||||
this.repository.findAndCount({
|
this.repository.findAndCount({
|
||||||
where: { equipo },
|
where: { equipo },
|
||||||
skip: (pagina - 1) * 25,
|
skip: (pagina - 1) * 25,
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export class EquipoProgramaService {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
async asignar(operador: Operador, id_equipo: number, id_programa: number) {
|
async asignar(operador: Operador, id_equipo: number, id_programa: number) {
|
||||||
const equipo = await this.equipoService.findInfoEquipoById(id_equipo);
|
const equipo = await this.equipoService.findById(id_equipo);
|
||||||
const programa = await this.institucionProgramaService.findProgramaById(
|
const programa = await this.institucionProgramaService.findProgramaById(
|
||||||
id_programa,
|
id_programa,
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export class EquipoTipoEntradaService {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
async asignar(id_equipo: number, id_tipo_entrada: number) {
|
async asignar(id_equipo: number, id_tipo_entrada: number) {
|
||||||
const equipo = await this.equipoService.findInfoEquipoById(id_equipo);
|
const equipo = await this.equipoService.findById(id_equipo);
|
||||||
const tipoEntrada =
|
const tipoEntrada =
|
||||||
await this.institucionTipoEntradaService.findTipoEntradaById(
|
await this.institucionTipoEntradaService.findTipoEntradaById(
|
||||||
id_tipo_entrada,
|
id_tipo_entrada,
|
||||||
|
|||||||
@@ -35,6 +35,18 @@ export class Equipo {
|
|||||||
@Column({ type: Number, nullable: true, default: null })
|
@Column({ type: Number, nullable: true, default: null })
|
||||||
u: number;
|
u: number;
|
||||||
|
|
||||||
|
@Column({ type: Number, nullable: true })
|
||||||
|
id_carrito: number;
|
||||||
|
|
||||||
|
@Column({ type: Number, nullable: true })
|
||||||
|
id_marca: number;
|
||||||
|
|
||||||
|
@Column({ type: Number, nullable: true })
|
||||||
|
id_modelo: number;
|
||||||
|
|
||||||
|
@Column({ type: Number, nullable: true })
|
||||||
|
id_status: number;
|
||||||
|
|
||||||
@ManyToOne(() => Carrito, (carrito) => carrito.equipos, { eager: true })
|
@ManyToOne(() => Carrito, (carrito) => carrito.equipos, { eager: true })
|
||||||
@JoinColumn({ name: 'id_carrito' })
|
@JoinColumn({ name: 'id_carrito' })
|
||||||
carrito: Carrito;
|
carrito: Carrito;
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import { ValidarUsuarioService } from '../validar-usuario/validar-usuario.servic
|
|||||||
import { Operador } from '../operador/entity/operador.entity';
|
import { Operador } from '../operador/entity/operador.entity';
|
||||||
import { NumeroInventarioDto } from '../dto/numero-inventario.dto';
|
import { NumeroInventarioDto } from '../dto/numero-inventario.dto';
|
||||||
import { EquiposDto } from './dto/input/equipos.dto';
|
import { EquiposDto } from './dto/input/equipos.dto';
|
||||||
|
import { MessageOutputDto } from '../dto/output/message.dto';
|
||||||
import { UpdateEquipoDto } from './dto/input/update.dto';
|
import { UpdateEquipoDto } from './dto/input/update.dto';
|
||||||
import { EquipoOutputDto } from './dto/output/equipo.dto';
|
import { EquipoOutputDto } from './dto/output/equipo.dto';
|
||||||
import { EquiposOutputDto } from './dto/output/equipos.dto';
|
import { EquiposOutputDto } from './dto/output/equipos.dto';
|
||||||
@@ -57,7 +58,7 @@ export class EquipoController {
|
|||||||
|
|
||||||
this.validarUsuarioService.validarAdminOperador(operador);
|
this.validarUsuarioService.validarAdminOperador(operador);
|
||||||
return this.equipoService
|
return this.equipoService
|
||||||
.findFullInfoEquipoByNumeroInventario(
|
.findFullInfoByNumeroInventario(
|
||||||
parseInt(query.id_institucion),
|
parseInt(query.id_institucion),
|
||||||
query.numero_inventario,
|
query.numero_inventario,
|
||||||
)
|
)
|
||||||
@@ -160,6 +161,7 @@ export class EquipoController {
|
|||||||
return this.equipoService.findAll(operador, query);
|
return this.equipoService.findAll(operador, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Serealize(MessageOutputDto)
|
||||||
@Put()
|
@Put()
|
||||||
@UseGuards(AuthGuard('jwt'))
|
@UseGuards(AuthGuard('jwt'))
|
||||||
@ApiOperation({
|
@ApiOperation({
|
||||||
|
|||||||
+136
-107
@@ -69,6 +69,7 @@ export class EquipoService {
|
|||||||
marca: Marca,
|
marca: Marca,
|
||||||
modelo: Modelo,
|
modelo: Modelo,
|
||||||
) {
|
) {
|
||||||
|
// Creo y guardo el registro
|
||||||
const equipoNuevo = await this.repository.save(
|
const equipoNuevo = await this.repository.save(
|
||||||
this.repository.create({
|
this.repository.create({
|
||||||
carrito,
|
carrito,
|
||||||
@@ -81,6 +82,7 @@ export class EquipoService {
|
|||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Le asigno programa "Sin programa"
|
||||||
return this.equipoProgramaService
|
return this.equipoProgramaService
|
||||||
.createSinPrograma(equipoNuevo)
|
.createSinPrograma(equipoNuevo)
|
||||||
.then((_) => equipoNuevo);
|
.then((_) => equipoNuevo);
|
||||||
@@ -159,7 +161,10 @@ export class EquipoService {
|
|||||||
.take(15)
|
.take(15)
|
||||||
.skip((parseInt(filtros.pagina) - 1) * 15);
|
.skip((parseInt(filtros.pagina) - 1) * 15);
|
||||||
|
|
||||||
|
// Si se mando id modulo
|
||||||
if (modulo) {
|
if (modulo) {
|
||||||
|
// Valido que el módulo le pertenezca a la institución del
|
||||||
|
// operador que solicita la información
|
||||||
if (
|
if (
|
||||||
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
||||||
operador.institucion.id_institucion != modulo.institucion.id_institucion
|
operador.institucion.id_institucion != modulo.institucion.id_institucion
|
||||||
@@ -171,7 +176,10 @@ export class EquipoService {
|
|||||||
id_modulo: modulo.id_modulo,
|
id_modulo: modulo.id_modulo,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// Si se mando id carrito
|
||||||
if (carrito) {
|
if (carrito) {
|
||||||
|
// Valido que el carrito le pertenezca a la institución del
|
||||||
|
// operador que solicita la información
|
||||||
if (
|
if (
|
||||||
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
||||||
operador.institucion.id_institucion !=
|
operador.institucion.id_institucion !=
|
||||||
@@ -223,87 +231,7 @@ export class EquipoService {
|
|||||||
return query.getManyAndCount();
|
return query.getManyAndCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
async findEquipo(
|
findById(id_equipo: number) {
|
||||||
id_usuario: number,
|
|
||||||
modulo: Modulo,
|
|
||||||
tipoCarrito: TipoCarrito,
|
|
||||||
programa?: Programa,
|
|
||||||
tipoEntrada?: TipoEntrada,
|
|
||||||
) {
|
|
||||||
const busquedaReseteo: FindOptionsWhere<InformacionEquipoPrestamoView> = {
|
|
||||||
prestado: 1,
|
|
||||||
id_modulo: modulo.id_modulo,
|
|
||||||
id_tipo_carrito: tipoCarrito.id_tipo_carrito,
|
|
||||||
};
|
|
||||||
const busqueda: FindOptionsWhere<InformacionEquipoPrestamoView> = {
|
|
||||||
prestado: 0,
|
|
||||||
id_modulo: modulo.id_modulo,
|
|
||||||
id_tipo_carrito: tipoCarrito.id_tipo_carrito,
|
|
||||||
};
|
|
||||||
|
|
||||||
if (programa) {
|
|
||||||
busqueda.id_programa = programa.id_programa;
|
|
||||||
busquedaReseteo.id_programa = programa.id_programa;
|
|
||||||
} else {
|
|
||||||
busqueda.id_programa = 1;
|
|
||||||
busquedaReseteo.id_programa = 1;
|
|
||||||
}
|
|
||||||
if (tipoEntrada) {
|
|
||||||
busqueda.id_tipo_entrada = tipoEntrada.id_tipo_entrada;
|
|
||||||
busquedaReseteo.id_tipo_entrada = tipoEntrada.id_tipo_entrada;
|
|
||||||
}
|
|
||||||
return this.informacionEquipoPrestamoView
|
|
||||||
.findOne({ where: busqueda })
|
|
||||||
.then((infoEquipo) => {
|
|
||||||
if (!infoEquipo)
|
|
||||||
return this.informacionEquipoPrestamoView
|
|
||||||
.find({ where: busquedaReseteo })
|
|
||||||
.then(async (infoEquipos) => {
|
|
||||||
for (let i = 0; i < infoEquipos.length; i++)
|
|
||||||
await this.repository.save(
|
|
||||||
this.repository.create({
|
|
||||||
id_equipo: infoEquipos[i].id_equipo,
|
|
||||||
prestado: false,
|
|
||||||
}),
|
|
||||||
);
|
|
||||||
return this.informacionEquipoPrestamoView.findOne({
|
|
||||||
where: busqueda,
|
|
||||||
});
|
|
||||||
})
|
|
||||||
.then((infoEquipo) => {
|
|
||||||
if (!infoEquipo)
|
|
||||||
throw new ConflictException(
|
|
||||||
'No hay un equipo de cómputo que cumpla con las caracteríasticas solicitadas o ya no hay equipos disponibles en este momento. Intenta más tarde o cambia las características.',
|
|
||||||
);
|
|
||||||
return infoEquipo;
|
|
||||||
});
|
|
||||||
return infoEquipo;
|
|
||||||
})
|
|
||||||
.then((infoEquipo) => {
|
|
||||||
if (infoEquipo.u)
|
|
||||||
throw new ConflictException(
|
|
||||||
'Ocurrio un error al tratar de asignarte un equipo de cómputo, intenta de nuevo.',
|
|
||||||
);
|
|
||||||
|
|
||||||
const equipo = this.repository.create({
|
|
||||||
id_equipo: infoEquipo.id_equipo,
|
|
||||||
u: id_usuario,
|
|
||||||
status: { id_status: 2 },
|
|
||||||
});
|
|
||||||
|
|
||||||
return this.repository.save(equipo);
|
|
||||||
})
|
|
||||||
.then((equipo) => this.findInfoEquipoById(equipo.id_equipo))
|
|
||||||
.then((equipo) => {
|
|
||||||
if (equipo.u != id_usuario)
|
|
||||||
throw new ConflictException(
|
|
||||||
'Ocurrio un error al tratar de asignarte un equipo de cómputo, intenta de nuevo.',
|
|
||||||
);
|
|
||||||
return equipo;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
findInfoEquipoById(id_equipo: number) {
|
|
||||||
return this.informacionEquipoView
|
return this.informacionEquipoView
|
||||||
.findOne({ where: { id_equipo } })
|
.findOne({ where: { id_equipo } })
|
||||||
.then((infoEquipo) => {
|
.then((infoEquipo) => {
|
||||||
@@ -313,7 +241,27 @@ export class EquipoService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
findInfoEquipoByNumeroInventario(
|
findByEquipo(carrito: Carrito, equipo: string, validarNoExiste = true) {
|
||||||
|
return this.informacionEquipoView
|
||||||
|
.findOne({
|
||||||
|
where: {
|
||||||
|
id_carrito: carrito.id_carrito,
|
||||||
|
equipo,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
.then((infoEquipo) => {
|
||||||
|
if (!infoEquipo) {
|
||||||
|
if (validarNoExiste)
|
||||||
|
throw new NotFoundException(
|
||||||
|
'No existe un equipo de cómputo con este número de inventario.',
|
||||||
|
);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return this.viewToEquipo(infoEquipo);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
findByNumeroInventario(
|
||||||
institucion: Institucion,
|
institucion: Institucion,
|
||||||
numero_inventario: string,
|
numero_inventario: string,
|
||||||
validarNoExiste = true,
|
validarNoExiste = true,
|
||||||
@@ -337,31 +285,102 @@ export class EquipoService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async findInfoEquipoByEquipo(
|
findEquipo(
|
||||||
carrito: Carrito,
|
id_usuario: number,
|
||||||
equipo: string,
|
modulo: Modulo,
|
||||||
validarNoExiste = true,
|
tipoCarrito: TipoCarrito,
|
||||||
|
programa?: Programa,
|
||||||
|
tipoEntrada?: TipoEntrada,
|
||||||
) {
|
) {
|
||||||
return this.informacionEquipoView
|
const busquedaReseteo: FindOptionsWhere<InformacionEquipoPrestamoView> = {
|
||||||
.findOne({
|
prestado: 1,
|
||||||
where: {
|
id_modulo: modulo.id_modulo,
|
||||||
id_carrito: carrito.id_carrito,
|
id_tipo_carrito: tipoCarrito.id_tipo_carrito,
|
||||||
equipo,
|
};
|
||||||
},
|
const busqueda: FindOptionsWhere<InformacionEquipoPrestamoView> = {
|
||||||
})
|
prestado: 0,
|
||||||
.then((infoEquipo) => {
|
id_modulo: modulo.id_modulo,
|
||||||
if (!infoEquipo) {
|
id_tipo_carrito: tipoCarrito.id_tipo_carrito,
|
||||||
if (validarNoExiste)
|
};
|
||||||
throw new NotFoundException(
|
|
||||||
'No existe un equipo de cómputo con este número de inventario.',
|
// Si se mando un programa se añade a la busqueda
|
||||||
|
if (programa) {
|
||||||
|
busqueda.id_programa = programa.id_programa;
|
||||||
|
busquedaReseteo.id_programa = programa.id_programa;
|
||||||
|
} else {
|
||||||
|
// De lo contrario se asigna el valor por defaulta, "Sin programa"
|
||||||
|
busqueda.id_programa = 1;
|
||||||
|
busquedaReseteo.id_programa = 1;
|
||||||
|
}
|
||||||
|
// Si se mando un tipo de entrada se añade a la busqueda
|
||||||
|
if (tipoEntrada) {
|
||||||
|
busqueda.id_tipo_entrada = tipoEntrada.id_tipo_entrada;
|
||||||
|
busquedaReseteo.id_tipo_entrada = tipoEntrada.id_tipo_entrada;
|
||||||
|
}
|
||||||
|
// Busaca un equipo
|
||||||
|
return (
|
||||||
|
this.informacionEquipoPrestamoView
|
||||||
|
.findOne({ where: busqueda })
|
||||||
|
.then((infoEquipo) => {
|
||||||
|
// Si no hay uno busca a todos los quipos que cumplan las mismas
|
||||||
|
// condiciones pero que ya hayan sido prestados
|
||||||
|
if (!infoEquipo)
|
||||||
|
return this.informacionEquipoPrestamoView
|
||||||
|
.find({ where: busquedaReseteo })
|
||||||
|
.then(async (infoEquipos) => {
|
||||||
|
// Los pasamos a no prestados para resetear los equipos
|
||||||
|
for (let i = 0; i < infoEquipos.length; i++)
|
||||||
|
await this.repository.save(
|
||||||
|
this.repository.create({
|
||||||
|
id_equipo: infoEquipos[i].id_equipo,
|
||||||
|
prestado: false,
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
// Trata de buscar otro
|
||||||
|
return this.informacionEquipoPrestamoView.findOne({
|
||||||
|
where: busqueda,
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.then((infoEquipo) => {
|
||||||
|
// Si no hay saca error
|
||||||
|
if (!infoEquipo)
|
||||||
|
throw new ConflictException(
|
||||||
|
'No hay un equipo de cómputo que cumpla con las caracteríasticas solicitadas o ya no hay equipos disponibles en este momento. Intenta más tarde o cambia las características.',
|
||||||
|
);
|
||||||
|
return infoEquipo;
|
||||||
|
});
|
||||||
|
return infoEquipo;
|
||||||
|
})
|
||||||
|
.then((infoEquipo) => {
|
||||||
|
// Esta variable debe estar siempre en null antes de asignar el equipo
|
||||||
|
if (infoEquipo.u)
|
||||||
|
throw new ConflictException(
|
||||||
|
'Ocurrio un error al tratar de asignarte un equipo de cómputo, intenta de nuevo.',
|
||||||
);
|
);
|
||||||
return null;
|
// Actualizo el status del equipo a apartado y gurado el id del usaurio
|
||||||
}
|
// al que se asignó
|
||||||
return this.viewToEquipo(infoEquipo);
|
return this.repository.save(
|
||||||
});
|
this.repository.create({
|
||||||
|
id_equipo: infoEquipo.id_equipo,
|
||||||
|
u: id_usuario,
|
||||||
|
status: { id_status: 2 },
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
})
|
||||||
|
// Una vez actualizado lo busco de nuvo
|
||||||
|
.then((equipo) => this.findById(equipo.id_equipo))
|
||||||
|
.then((equipo) => {
|
||||||
|
// Si el campo u no coincide con el id_usaurio saca error
|
||||||
|
if (equipo.u != id_usuario)
|
||||||
|
throw new ConflictException(
|
||||||
|
'Ocurrio un error al tratar de asignarte un equipo de cómputo, intenta de nuevo.',
|
||||||
|
);
|
||||||
|
return equipo;
|
||||||
|
})
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
findFullInfoEquipoByNumeroInventario(
|
findFullInfoByNumeroInventario(
|
||||||
id_institucion: number,
|
id_institucion: number,
|
||||||
numero_inventario: string,
|
numero_inventario: string,
|
||||||
) {
|
) {
|
||||||
@@ -381,10 +400,12 @@ export class EquipoService {
|
|||||||
'No existe un equipo de cómputo con este número de inventario.',
|
'No existe un equipo de cómputo con este número de inventario.',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Busco todos los programas de este equipo
|
||||||
const programas =
|
const programas =
|
||||||
await this.equipoProgramaService.findFullInfoEquipoProgramaAllByIdEquipo(
|
await this.equipoProgramaService.findFullInfoEquipoProgramaAllByIdEquipo(
|
||||||
infoEquipo.id_equipo,
|
infoEquipo.id_equipo,
|
||||||
);
|
);
|
||||||
|
// Busco todos los tipos de entrada de este equipo
|
||||||
const tiposEntradas =
|
const tiposEntradas =
|
||||||
await this.equipoTipoEntradaService.findFullInfoEquipoTipoEntradaAllByIdEquipo(
|
await this.equipoTipoEntradaService.findFullInfoEquipoTipoEntradaAllByIdEquipo(
|
||||||
infoEquipo.id_equipo,
|
infoEquipo.id_equipo,
|
||||||
@@ -451,8 +472,10 @@ export class EquipoService {
|
|||||||
? await this.statusService.findById(id_status)
|
? await this.statusService.findById(id_status)
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
return this.findInfoEquipoById(attrs.id_equipo)
|
return this.findById(attrs.id_equipo)
|
||||||
.then(async (equipo) => {
|
.then(async (equipo) => {
|
||||||
|
// Valido que el equipo pertenezca a la institución del operador
|
||||||
|
// que realiza esta acción
|
||||||
if (
|
if (
|
||||||
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
||||||
operador.institucion.id_institucion !=
|
operador.institucion.id_institucion !=
|
||||||
@@ -461,11 +484,14 @@ export class EquipoService {
|
|||||||
throw new ForbiddenException(
|
throw new ForbiddenException(
|
||||||
'No puedes modificar la información este equipo porque no pertenece a tu institución.',
|
'No puedes modificar la información este equipo porque no pertenece a tu institución.',
|
||||||
);
|
);
|
||||||
|
// Si se mandó id_status
|
||||||
if (status) {
|
if (status) {
|
||||||
|
// No se pude actualziar el status de lequipo cuando esta en uno de estos
|
||||||
if (equipo.status.id_status === 2 || equipo.status.id_status === 3)
|
if (equipo.status.id_status === 2 || equipo.status.id_status === 3)
|
||||||
throw new ConflictException(
|
throw new ConflictException(
|
||||||
'No se puede cambiar el status de un equipo si esta apartada o en uso.',
|
'No se puede cambiar el status de un equipo si esta apartada o en uso.',
|
||||||
);
|
);
|
||||||
|
// El operador no puede cambiar el status de un equipo a uno de estos
|
||||||
if (status.id_status === 2 || status.id_status === 3)
|
if (status.id_status === 2 || status.id_status === 3)
|
||||||
throw new ConflictException(
|
throw new ConflictException(
|
||||||
'No se puede cambiar manualmente el status de un equipo a este status.',
|
'No se puede cambiar manualmente el status de un equipo a este status.',
|
||||||
@@ -478,6 +504,8 @@ export class EquipoService {
|
|||||||
Object.assign(equipo, attrs);
|
Object.assign(equipo, attrs);
|
||||||
if (status) {
|
if (status) {
|
||||||
equipo.status = status;
|
equipo.status = status;
|
||||||
|
// Se crea registro de quien cambio el status del equipo, el motivo
|
||||||
|
// por el cual lo cambió, el status al que lo cmabió y cuando lo hizo
|
||||||
await this.equipoMotivoService.create(
|
await this.equipoMotivoService.create(
|
||||||
equipo,
|
equipo,
|
||||||
operador,
|
operador,
|
||||||
@@ -486,14 +514,14 @@ export class EquipoService {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (carrito) equipo.carrito = carrito;
|
if (carrito) equipo.carrito = carrito;
|
||||||
|
// Guardar
|
||||||
return this.repository.save(equipo);
|
return this.repository.save(equipo);
|
||||||
})
|
})
|
||||||
.then((_) => ({
|
.then((_) => ({ message: 'Se guardaron los cambios correctamente.' }));
|
||||||
message: 'Se guardaron los cambios correctamente.',
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async updateStatus(equipo: Equipo, operador?: Operador, motivo?: string) {
|
async updateStatus(equipo: Equipo, operador?: Operador, motivo?: string) {
|
||||||
|
// Si el status al que se esta actualizando es mayo o igual a 4
|
||||||
if (equipo.status.id_status >= 4) {
|
if (equipo.status.id_status >= 4) {
|
||||||
if (!operador) throw new ConflictException('No se mandó el id operador.');
|
if (!operador) throw new ConflictException('No se mandó el id operador.');
|
||||||
if (!motivo)
|
if (!motivo)
|
||||||
@@ -507,6 +535,7 @@ export class EquipoService {
|
|||||||
motivo,
|
motivo,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
// Guardo los cambios
|
||||||
return this.repository.save(equipo);
|
return this.repository.save(equipo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ export class MultaService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
findAllByIdEquipo(id_equipo: number, pagina: number) {
|
findAllByIdEquipo(id_equipo: number, pagina: number) {
|
||||||
return this.equipoService.findInfoEquipoById(id_equipo).then((equipo) =>
|
return this.equipoService.findById(id_equipo).then((equipo) =>
|
||||||
this.fullInformacionMultaView
|
this.fullInformacionMultaView
|
||||||
.findAndCount({
|
.findAndCount({
|
||||||
where: { id_equipo: equipo.id_equipo },
|
where: { id_equipo: equipo.id_equipo },
|
||||||
|
|||||||
@@ -696,7 +696,7 @@ export class PrestamoService {
|
|||||||
return this.institucionService
|
return this.institucionService
|
||||||
.findInfoInstitucionById(id_institucion)
|
.findInfoInstitucionById(id_institucion)
|
||||||
.then((institucion) =>
|
.then((institucion) =>
|
||||||
this.equipoService.findInfoEquipoByNumeroInventario(
|
this.equipoService.findByNumeroInventario(
|
||||||
institucion,
|
institucion,
|
||||||
numero_inventario,
|
numero_inventario,
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -214,11 +214,7 @@ export class UploadFileService {
|
|||||||
)
|
)
|
||||||
: null;
|
: null;
|
||||||
let equipo = carrito
|
let equipo = carrito
|
||||||
? await this.equipoService.findInfoEquipoByEquipo(
|
? await this.equipoService.findByEquipo(carrito, dataEquipo.equipo, false)
|
||||||
carrito,
|
|
||||||
dataEquipo.equipo,
|
|
||||||
false,
|
|
||||||
)
|
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
if (!tipoCarrito || !marca || !modelo || !modulo || !carrito) {
|
if (!tipoCarrito || !marca || !modelo || !modulo || !carrito) {
|
||||||
@@ -249,7 +245,7 @@ export class UploadFileService {
|
|||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
equipo = await this.equipoService.findInfoEquipoByNumeroInventario(
|
equipo = await this.equipoService.findByNumeroInventario(
|
||||||
institucion,
|
institucion,
|
||||||
dataEquipo.numero_inventario,
|
dataEquipo.numero_inventario,
|
||||||
false,
|
false,
|
||||||
|
|||||||
Reference in New Issue
Block a user