modulo equipo programa final
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { Body, Controller, Delete, Post } from '@nestjs/common';
|
||||
import { Body, Controller, Delete, Post, UseGuards } from '@nestjs/common';
|
||||
import { AuthGuard } from '@nestjs/passport';
|
||||
import { ApiBody, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { EquipoProgramaService } from './equipo-programa.service';
|
||||
import { CreateEquipoProgramaDto } from './dto/input/create.dto';
|
||||
@@ -9,6 +10,7 @@ export class EquipoProgramaController {
|
||||
constructor(private equipoProgramaService: EquipoProgramaService) {}
|
||||
|
||||
@Post()
|
||||
// @UseGuards(AuthGuard('jwt'))
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que crea una relación entre un equipo y un programa.',
|
||||
@@ -22,6 +24,7 @@ export class EquipoProgramaController {
|
||||
}
|
||||
|
||||
@Delete()
|
||||
// @UseGuards(AuthGuard('jwt'))
|
||||
@ApiOperation({
|
||||
description:
|
||||
'Endpoint que elimina una relación entre un equipo y un programa.',
|
||||
|
||||
@@ -3,8 +3,8 @@ import { TypeOrmModule } from '@nestjs/typeorm';
|
||||
import { EquipoProgramaController } from './equipo-programa.controller';
|
||||
import { EquipoProgramaService } from './equipo-programa.service';
|
||||
import { EquipoPrograma } from '../equipo-programa/entity/equipo-programa.entity';
|
||||
import { InstitucionProgramaModule } from '../institucion-programa/institucion-programa.module';
|
||||
import { EquipoModule } from '../equipo/equipo.module';
|
||||
import { InstitucionProgramaModule } from '../institucion-programa/institucion-programa.module';
|
||||
|
||||
@Module({
|
||||
imports: [
|
||||
|
||||
@@ -22,16 +22,6 @@ export class EquipoProgramaService {
|
||||
private institucionProgramaService: InstitucionProgramaService,
|
||||
) {}
|
||||
|
||||
buscarEliminarEquipoSinPrograma(equipo: Equipo) {
|
||||
return this.repository
|
||||
.findOne({ equipo, programa: { id_programa: 1 } })
|
||||
.then((existeEquipoPrograma) =>
|
||||
existeEquipoPrograma
|
||||
? this.delete(existeEquipoPrograma)
|
||||
: existeEquipoPrograma,
|
||||
);
|
||||
}
|
||||
|
||||
countProgramasEquipo(equipo: Equipo) {
|
||||
return this.repository.count({ equipo });
|
||||
}
|
||||
@@ -51,7 +41,7 @@ export class EquipoProgramaService {
|
||||
this.repository.save(this.repository.create({ equipo, programa })),
|
||||
)
|
||||
.then((equipoPrograma) => ({
|
||||
message: `Se agrego el programa: ${equipoPrograma.programa}, al equipo con número de inventario: ${equipo.numero_inventario}}`,
|
||||
message: `Se asignó el programa: ${equipoPrograma.programa}, al equipo con número de inventario: ${equipo.numero_inventario}.`,
|
||||
equipoPrograma,
|
||||
}));
|
||||
}
|
||||
@@ -67,10 +57,23 @@ export class EquipoProgramaService {
|
||||
if (n === 1) {
|
||||
if (equipoPrograma.programa.id_programa === 1)
|
||||
throw new ConflictException('No se puede eliminar esta opción.');
|
||||
this.create(equipoPrograma.equipo, 1);
|
||||
return this.create(equipoPrograma.equipo, 1);
|
||||
}
|
||||
});
|
||||
return this.repository.remove(equipoPrograma);
|
||||
return this.repository
|
||||
.remove(equipoPrograma)
|
||||
.then((_) => ({
|
||||
message: 'Se eliminó correctamente el programa de este equipo.',
|
||||
}));
|
||||
}
|
||||
|
||||
eliminarEquipoSinPrograma(equipo: Equipo) {
|
||||
return this.institucionProgramaService
|
||||
.findProgramaById(1)
|
||||
.then((programa) => this.repository.findOne({ equipo, programa }))
|
||||
.then((equipoPrograma) => {
|
||||
if (equipoPrograma) return this.delete(equipoPrograma);
|
||||
});
|
||||
}
|
||||
|
||||
existeEquipoPrograma(
|
||||
@@ -83,7 +86,7 @@ export class EquipoProgramaService {
|
||||
.then((equipoPrograma) => {
|
||||
if (validarExistencia && equipoPrograma)
|
||||
throw new ConflictException(
|
||||
'Ya existe un equipo programa con este equipo y este programa.',
|
||||
'Este programa ya fue asignado a este equipo.',
|
||||
);
|
||||
return equipoPrograma;
|
||||
});
|
||||
@@ -97,7 +100,7 @@ export class EquipoProgramaService {
|
||||
})
|
||||
.then((equipoPrograma) => {
|
||||
if (!equipoPrograma)
|
||||
throw new ConflictException('No existe este equipo programa.');
|
||||
throw new ConflictException('No existe este id equipo programa.');
|
||||
return equipoPrograma;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -6,10 +6,10 @@ import { StatusOutputDto } from '../../../status/dto/output/status.dto';
|
||||
|
||||
export class EquipoMinOutputDto {
|
||||
@Expose()
|
||||
equipo;
|
||||
id_equipo;
|
||||
|
||||
@Expose()
|
||||
id_equipo;
|
||||
equipo;
|
||||
|
||||
@Expose()
|
||||
numero_inventario;
|
||||
|
||||
@@ -6,10 +6,10 @@ import { StatusOutputDto } from '../../../status/dto/output/status.dto';
|
||||
|
||||
export class EquipoOutputDto {
|
||||
@Expose()
|
||||
equipo;
|
||||
id_equipo;
|
||||
|
||||
@Expose()
|
||||
id_equipo;
|
||||
equipo;
|
||||
|
||||
@Expose()
|
||||
marca;
|
||||
|
||||
@@ -4,10 +4,10 @@ import { StatusOutputDto } from '../../../status/dto/output/status.dto';
|
||||
|
||||
export class EquiposOutputDto {
|
||||
@Expose()
|
||||
equipo;
|
||||
id_equipo;
|
||||
|
||||
@Expose()
|
||||
id_equipo;
|
||||
equipo;
|
||||
|
||||
@Expose()
|
||||
numero_inventario;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Body, Controller, Get, Put, Query } from '@nestjs/common';
|
||||
import { Body, Controller, Get, Put, Query, UseGuards } from '@nestjs/common';
|
||||
import { AuthGuard } from '@nestjs/passport';
|
||||
import { ApiOperation, ApiQuery, ApiTags } from '@nestjs/swagger';
|
||||
import { Serealize } from '../interceptors/serialize.interceptor';
|
||||
|
||||
@@ -139,7 +139,6 @@ export class EquipoService {
|
||||
query.andWhere('ps.id_programa = :id_programa', {
|
||||
id_programa: programa.id_programa,
|
||||
});
|
||||
else query.andWhere('ps.id_programa = 1');
|
||||
if (tipoCarrito)
|
||||
query.andWhere('tc.id_tipo_carrito = :id_tipo_carrito', {
|
||||
id_tipo_carrito: tipoCarrito.id_tipo_carrito,
|
||||
|
||||
@@ -220,7 +220,7 @@ export class UploadFileService {
|
||||
continue;
|
||||
}
|
||||
await this.equipoProgramaService
|
||||
.buscarEliminarEquipoSinPrograma(equipo)
|
||||
.eliminarEquipoSinPrograma(equipo)
|
||||
.then((_) =>
|
||||
this.equipoProgramaService.create(equipo, programa),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user