equipo controller final
This commit is contained in:
parent
8115d7b48b
commit
712848a932
@ -27,7 +27,7 @@ export class CarritoMotivoController {
|
|||||||
@UseGuards(AuthGuard('jwt'))
|
@UseGuards(AuthGuard('jwt'))
|
||||||
@ApiOperation({
|
@ApiOperation({
|
||||||
description:
|
description:
|
||||||
'Información de 25 cambios de status de un carrito dependiendo de sus filtros.',
|
'Información de 25 cambios de status de un carrito dependiendo de los filtros enviados.',
|
||||||
})
|
})
|
||||||
@ApiBearerAuth('jwt')
|
@ApiBearerAuth('jwt')
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
|
@ -49,6 +49,7 @@ export class CarritoMotivoService {
|
|||||||
const carrito = await this.carritoService.findById(id_carrito);
|
const carrito = await this.carritoService.findById(id_carrito);
|
||||||
const options: FindManyOptions<CarritoMotivo> = { where: { carrito } };
|
const options: FindManyOptions<CarritoMotivo> = { where: { carrito } };
|
||||||
|
|
||||||
|
// Validamos que el carrito pertenezca a la institución del operador
|
||||||
if (
|
if (
|
||||||
carrito.modulo.institucion.id_institucion !=
|
carrito.modulo.institucion.id_institucion !=
|
||||||
operador.institucion.id_institucion
|
operador.institucion.id_institucion
|
||||||
|
@ -70,7 +70,8 @@ export class CarritoController {
|
|||||||
@Get('carritos')
|
@Get('carritos')
|
||||||
@UseGuards(AuthGuard('jwt'))
|
@UseGuards(AuthGuard('jwt'))
|
||||||
@ApiOperation({
|
@ApiOperation({
|
||||||
description: 'Información de 25 carritos dependiendo de sus filtros.',
|
description:
|
||||||
|
'Información de 25 carritos dependiendo de los filtros enviados.',
|
||||||
})
|
})
|
||||||
@ApiBearerAuth('jwt')
|
@ApiBearerAuth('jwt')
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
@ -110,7 +111,7 @@ export class CarritoController {
|
|||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Página en la que se encuentra el admin.',
|
description: 'Página en la que se encuentra el operador.',
|
||||||
name: 'pagina',
|
name: 'pagina',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
|
@ -218,7 +218,7 @@ export class CarritoService {
|
|||||||
return this.repository.save(carrito);
|
return this.repository.save(carrito);
|
||||||
})
|
})
|
||||||
.then(async (carrito) => {
|
.then(async (carrito) => {
|
||||||
// Creamos reporte de desactivación
|
// Creamos reporte de desactivación si se paso a inactivo
|
||||||
if (attrs.activo === false)
|
if (attrs.activo === false)
|
||||||
await this.caritoMotivoService.create(
|
await this.caritoMotivoService.create(
|
||||||
carrito,
|
carrito,
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import { IsNumberString, IsString } from 'class-validator';
|
import { IsString, IsNotEmpty } from 'class-validator';
|
||||||
|
|
||||||
export class NumeroInventarioDto {
|
export class NumeroInventarioDto {
|
||||||
@IsString()
|
@IsString()
|
||||||
|
@IsNotEmpty()
|
||||||
numero_inventario: string;
|
numero_inventario: string;
|
||||||
}
|
}
|
@ -20,7 +20,7 @@ import { Serealize } from '../interceptors/serialize.interceptor';
|
|||||||
import { EquipoService } from './equipo.service';
|
import { EquipoService } from './equipo.service';
|
||||||
import { ValidarUsuarioService } from '../validar-usuario/validar-usuario.service';
|
import { ValidarUsuarioService } from '../validar-usuario/validar-usuario.service';
|
||||||
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/input/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 { MessageOutputDto } from '../dto/output/message.dto';
|
||||||
import { UpdateEquipoDto } from './dto/input/update.dto';
|
import { UpdateEquipoDto } from './dto/input/update.dto';
|
||||||
@ -39,12 +39,11 @@ export class EquipoController {
|
|||||||
@Get('equipo')
|
@Get('equipo')
|
||||||
@UseGuards(AuthGuard('jwt'))
|
@UseGuards(AuthGuard('jwt'))
|
||||||
@ApiOperation({
|
@ApiOperation({
|
||||||
description:
|
description: 'Información de un equipo de la institución de un operador.',
|
||||||
'Endpoint que retorna la información de un equipo por su número de inventario de una institución.',
|
|
||||||
})
|
})
|
||||||
@ApiBearerAuth('jwt')
|
@ApiBearerAuth('jwt')
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'El número de inventario del equipo que se busca.',
|
description: 'Número de inventario del equipo que se busca.',
|
||||||
name: 'numero_inventario',
|
name: 'numero_inventario',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
})
|
})
|
||||||
@ -52,19 +51,10 @@ export class EquipoController {
|
|||||||
const operador: Operador = req.user.operador;
|
const operador: Operador = req.user.operador;
|
||||||
|
|
||||||
this.validarUsuarioService.validarAdminOperador(operador);
|
this.validarUsuarioService.validarAdminOperador(operador);
|
||||||
return this.equipoService
|
return this.equipoService.findFullInfoByNumeroInventario(
|
||||||
.findFullInfoByNumeroInventario(operador, query.numero_inventario)
|
operador,
|
||||||
.then((equipo) => {
|
query.numero_inventario,
|
||||||
if (
|
);
|
||||||
operador.tipoUsuario.id_tipo_usuario > 2 &&
|
|
||||||
operador.institucion.id_institucion !=
|
|
||||||
equipo.carrito.modulo.institucion.id_institucion
|
|
||||||
)
|
|
||||||
throw new ForbiddenException(
|
|
||||||
'No puedes acceder a esta información porque este equipo no pertenece a tu institución.',
|
|
||||||
);
|
|
||||||
return equipo;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Serealize(EquiposOutputDto)
|
@Serealize(EquiposOutputDto)
|
||||||
@ -72,76 +62,76 @@ export class EquipoController {
|
|||||||
@UseGuards(AuthGuard('jwt'))
|
@UseGuards(AuthGuard('jwt'))
|
||||||
@ApiOperation({
|
@ApiOperation({
|
||||||
description:
|
description:
|
||||||
'Endpoint que retorna 15 equipos dependiendo de la página en la que esta el usuario y sus filtros.',
|
'Información de 15 equipos dependiendo de los filtros enviados.',
|
||||||
})
|
})
|
||||||
@ApiBearerAuth('jwt')
|
@ApiBearerAuth('jwt')
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Página en la que se encuentra el usuario.',
|
description: 'Página en la que se encuentra el operador.',
|
||||||
name: 'pagina',
|
name: 'pagina',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Carrito que se quiere usar como filtro.',
|
description: 'Carrito que se desea buscar.',
|
||||||
name: 'carrito',
|
name: 'carrito',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Equipo que se quiere usar como filtro.',
|
description: 'Equipo que se desea buscar.',
|
||||||
name: 'equipo',
|
name: 'equipo',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del carrito que se quiere usar como filtro.',
|
description: 'Id del carrito.',
|
||||||
name: 'id_carrito',
|
name: 'id_carrito',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id de la institución que se quiere usar como filtro.',
|
description: 'Id de la institución.',
|
||||||
name: 'id_institucion',
|
name: 'id_institucion',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id de la marca que se quiere usar como filtro.',
|
description: 'Id de la marca.',
|
||||||
name: 'id_marca',
|
name: 'id_marca',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del modelo que se quiere usar como filtro.',
|
description: 'Id del modelo.',
|
||||||
name: 'id_modelo',
|
name: 'id_modelo',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del módulo que se quiere usar como filtro.',
|
description: 'Id del módulo.',
|
||||||
name: 'id_modulo',
|
name: 'id_modulo',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del programa que se quiere usar como filtro.',
|
description: 'Id del programa.',
|
||||||
name: 'id_programa',
|
name: 'id_programa',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del status que se quiere usar como filtro.',
|
description: 'Id del status.',
|
||||||
name: 'id_status',
|
name: 'id_status',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del tipo de carrito que se quiere usar como filtro.',
|
description: 'Id del tipo de carrito.',
|
||||||
name: 'id_tipo_carrito',
|
name: 'id_tipo_carrito',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
})
|
})
|
||||||
@ApiQuery({
|
@ApiQuery({
|
||||||
description: 'Id del tipo de entrada que se quiere usar como filtro.',
|
description: 'Id del tipo de entrada.',
|
||||||
name: 'id_tipo_entrada',
|
name: 'id_tipo_entrada',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
required: false,
|
required: false,
|
||||||
@ -162,14 +152,13 @@ export class EquipoController {
|
|||||||
@ApiBearerAuth('jwt')
|
@ApiBearerAuth('jwt')
|
||||||
@ApiBody({
|
@ApiBody({
|
||||||
description:
|
description:
|
||||||
'Todas las variables a excepción de id_carrito son opcionales.',
|
'Variables que necesita el endpoint. Las variables con "_" al inicio son opcionales.',
|
||||||
examples: {
|
examples: {
|
||||||
ejemplo: {
|
ejemplo: {
|
||||||
value: {
|
value: {
|
||||||
id_equipo: 1,
|
id_equipo: 1,
|
||||||
_equipo: true,
|
_equipo: '',
|
||||||
_id_carrito: '',
|
_id_carrito: 1,
|
||||||
_id_operador: 1,
|
|
||||||
_id_status: 1,
|
_id_status: 1,
|
||||||
_motivo: '',
|
_motivo: '',
|
||||||
},
|
},
|
||||||
|
@ -24,7 +24,7 @@ import { Usuario } from '../usuario/entity/usuario.entity';
|
|||||||
import { Modulo } from '../modulo/entity/modulo.entity';
|
import { Modulo } from '../modulo/entity/modulo.entity';
|
||||||
import { IdEquipoPaginaDto } from '../dto/input/id-equipo-pagina.dto';
|
import { IdEquipoPaginaDto } from '../dto/input/id-equipo-pagina.dto';
|
||||||
import { IdUsuarioPaginaDto } from '../dto/input/id-usuario-pagina.dto';
|
import { IdUsuarioPaginaDto } from '../dto/input/id-usuario-pagina.dto';
|
||||||
import { NumeroInventarioDto } from '../dto/numero-inventario.dto';
|
import { NumeroInventarioDto } from '../dto/input/numero-inventario.dto';
|
||||||
import { ActivosDto } from './dto/input/activos.dto';
|
import { ActivosDto } from './dto/input/activos.dto';
|
||||||
import { CancelarOperadorDto } from './dto/input/cancelar-operador.dto';
|
import { CancelarOperadorDto } from './dto/input/cancelar-operador.dto';
|
||||||
import { HistorialDto } from './dto/input/historial.dto';
|
import { HistorialDto } from './dto/input/historial.dto';
|
||||||
|
Loading…
Reference in New Issue
Block a user