modulo carrito final

This commit is contained in:
xXpuma99Xx
2022-06-23 23:38:01 -05:00
parent 5cf5825fd2
commit 5b7c1e849f
6 changed files with 34 additions and 14 deletions
@@ -81,7 +81,8 @@ export class CarreraProgramaService {
return this.findById(id_carrera_programa)
.then((carreraPrograma) => this.repository.delete(carreraPrograma))
.then((_) => ({
message: 'Se eliminó correctamente la carrera programa.',
message:
'Se eliminó correctamente la asignación del programa de la carrera.',
}));
}
}
+14 -1
View File
@@ -1,4 +1,13 @@
import { Body, Controller, Get, Post, Put, Query } from '@nestjs/common';
import {
Body,
Controller,
Get,
Post,
Put,
Query,
UseGuards,
} from '@nestjs/common';
import { AuthGuard } from '@nestjs/passport';
import { ApiBody, ApiOperation, ApiQuery, ApiTags } from '@nestjs/swagger';
import { Serealize } from '../interceptors/serialize.interceptor';
import { CarritoService } from './carrito.service';
@@ -16,6 +25,7 @@ export class CarritoController {
@Serealize(CarritoOutputDto)
@Get('carrito')
// @UseGuards(AuthGuard('jwt'))
@ApiOperation({
description: 'Endpoint que retorna la información de un carrito.',
})
@@ -30,6 +40,7 @@ export class CarritoController {
@Serealize(CarritosOutputDto)
@Get('carritos')
// @UseGuards(AuthGuard('jwt'))
@ApiOperation({
description:
'Endpoint que retorna 25 carritos de un módulo dependiendo de la página en la que se encuentra el usuario y sus filtros.',
@@ -74,6 +85,7 @@ export class CarritoController {
}
@Post()
// @UseGuards(AuthGuard('jwt'))
@ApiOperation({
description: 'Endpoint que crea un carrito nuevo en un módulo.',
})
@@ -95,6 +107,7 @@ export class CarritoController {
}
@Put()
// @UseGuards(AuthGuard('jwt'))
@ApiOperation({
description: 'Endpoint que actualiza la información de un carrito.',
})
+12 -6
View File
@@ -33,13 +33,18 @@ export class CarritoService {
await this.institucionTipoCarritoService.findTipoCarritoById(
id_tipo_carrito,
);
let carrito = '';
return this.repository
.count({ modulo, tipoCarrito })
.then((carritos) =>
.then((carritos) => {
carrito = `C${carritos >= 9 ? '' : '0'}${carritos + 1}`;
return this.existeCarrito(modulo, carrito);
})
.then(() =>
this.repository.save(
this.repository.create({
carrito: `C${carritos >= 9 ? '' : '0'}${carritos + 1}`,
carrito,
marca,
modelo,
modulo,
@@ -48,7 +53,7 @@ export class CarritoService {
),
)
.then((_) => ({
message: 'Se creó correctamente el carrito en el módulo.',
message: 'Se creó correctamente un nuevo carrito para este módulo.',
}));
}
@@ -113,7 +118,7 @@ export class CarritoService {
findById(id_carrito: number) {
return this.repository.findOne({ id_carrito }).then((carrito) => {
if (!carrito) throw new NotFoundException('No existe este carrito.');
if (!carrito) throw new NotFoundException('No existe este id carrito.');
return carrito;
});
}
@@ -136,7 +141,7 @@ export class CarritoService {
: id_tipo_carrito;
return this.repository
.findOne({ modulo, carrito, tipoCarrito })
.findOne({ carrito, modulo, tipoCarrito })
.then((carrito) => {
if (validarNoExiste && !carrito)
throw new ConflictException('No existe este carrito.');
@@ -159,6 +164,7 @@ export class CarritoService {
id_tipo_carrito,
)
: null;
if (attrs.carrito) {
if (modulo) await this.existeCarrito(modulo, attrs.carrito);
else await this.existeCarrito(carrito.modulo, attrs.carrito);
@@ -169,7 +175,7 @@ export class CarritoService {
return this.repository.save(carrito);
})
.then((_) => ({
message: 'Se actualizó correctamente la información del carrito.',
message: 'Se guardaron los cambios correctamente.',
}));
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
import { Expose, Type } from 'class-transformer';
import { TipoCarritoOutputDto } from '../../../institucion-tipo-carrito/dto/output/tipo-carrito.dto';
import { ModuloMinOutputDto } from '../../../modulo/dto/output/modulo-min.dto';
import { TipoCarritoOutputDto } from '../../../institucion-tipo-carrito/dto/output/tipo-carrito.dto';
export class CarritoMinOutputDto {
@Expose()
+3 -3
View File
@@ -1,16 +1,16 @@
import { Expose, Type } from 'class-transformer';
import { ModuloMinOutputDto } from '../../../modulo/dto/output/modulo-min.dto';
import { TipoCarritoOutputDto } from '../../../institucion-tipo-carrito/dto/output/tipo-carrito.dto';
import { ModuloMinOutputDto } from '../../../modulo/dto/output/modulo-min.dto';
export class CarritoOutputDto {
@Expose()
id_carrito;
@Expose()
carrito;
activo;
@Expose()
activo;
carrito;
@Expose()
marca;
+2 -2
View File
@@ -7,10 +7,10 @@ export class CarritosOutputDto {
id_carrito;
@Expose()
carrito;
activo;
@Expose()
activo;
carrito;
@Type(() => ModuloMinOutputDto)
@Expose()