modulo equipo programa final

This commit is contained in:
xXpuma99Xx
2022-06-24 01:20:22 -05:00
parent f69ca8c2ac
commit 02a3020522
9 changed files with 31 additions and 26 deletions
@@ -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: [
+18 -15
View File
@@ -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;
});
}
+2 -2
View File
@@ -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;
+2 -2
View File
@@ -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;
+2 -2
View File
@@ -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 -1
View File
@@ -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';
-1
View File
@@ -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,
+1 -1
View File
@@ -220,7 +220,7 @@ export class UploadFileService {
continue;
}
await this.equipoProgramaService
.buscarEliminarEquipoSinPrograma(equipo)
.eliminarEquipoSinPrograma(equipo)
.then((_) =>
this.equipoProgramaService.create(equipo, programa),
)