diff --git a/src/nombre-transaccion/nombre-transaccion.service.ts b/src/nombre-transaccion/nombre-transaccion.service.ts index 195b38e..10412b1 100644 --- a/src/nombre-transaccion/nombre-transaccion.service.ts +++ b/src/nombre-transaccion/nombre-transaccion.service.ts @@ -1,6 +1,5 @@ import { Injectable, NotFoundException } from '@nestjs/common'; import { CreateNombreTransaccionDto } from './dto/create-nombre-transaccion.dto'; -import { UpdateNombreTransaccionDto } from './dto/update-nombre-transaccion.dto'; import { InjectRepository } from '@nestjs/typeorm'; import { NombreTransaccion } from './entities/nombre-transaccion.entity'; import { Repository } from 'typeorm'; @@ -27,4 +26,16 @@ export class NombreTransaccionService { return nameTransaccion; } + + async findByName(nombreTransaccion: string): Promise { + const transaccion = await this.nombreTransaccionRepository.findOne({ + where: { nombreTransaccion }, + }); + + if (!transaccion) { + throw new NotFoundException('transaction not found'); + } + + return transaccion; + } } diff --git a/src/operations/dto/create-operation.dto.ts b/src/operations/dto/create-operation.dto.ts index acc4ada..7a77cea 100644 --- a/src/operations/dto/create-operation.dto.ts +++ b/src/operations/dto/create-operation.dto.ts @@ -1,4 +1,4 @@ -import { IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class abonoKioscoDto { @IsNumber() @@ -6,4 +6,7 @@ export class abonoKioscoDto { @IsNumber() idKiosco: number; + + @IsString() + transaccion: string; } diff --git a/src/operations/operations.service.ts b/src/operations/operations.service.ts index 5fc0702..59c1ec8 100644 --- a/src/operations/operations.service.ts +++ b/src/operations/operations.service.ts @@ -1,4 +1,5 @@ import { Injectable } from '@nestjs/common'; +import { NombreTransaccionService } from 'src/nombre-transaccion/nombre-transaccion.service'; import { PagoKioscoService } from 'src/pago-kiosco/pago-kiosco.service'; import { PersonaService } from 'src/persona/persona.service'; import { TransaccionService } from 'src/transaccion/transaccion.service'; @@ -9,19 +10,20 @@ export class OperationsService { private readonly transaccionService: TransaccionService, private readonly pagoKioscoService: PagoKioscoService, private readonly personaService: PersonaService, + private readonly nombreTransaccionService: NombreTransaccionService, ) {} - async depositKiosco({ cantidad, idKiosco }, idPersona: number) { + async depositKiosco({ cantidad, idKiosco, transaccion }, idPersona: number) { const today = new Date().toString(); - const transaccion = { - idNombreTransaccion: 3, + const transaction = { + nombreTransaccion: transaccion, idPersona, fecha: today, tipoTransaccion: 2, }; - const responseTransaccion = this.transaccionService.create(transaccion); + const responseTransaccion = this.transaccionService.create(transaction); const pagoKiosco = { idTransaccion: (await responseTransaccion).idTransaccion, diff --git a/src/transaccion/dto/create-transaccion.dto.ts b/src/transaccion/dto/create-transaccion.dto.ts index 5c31627..53bea59 100644 --- a/src/transaccion/dto/create-transaccion.dto.ts +++ b/src/transaccion/dto/create-transaccion.dto.ts @@ -3,7 +3,7 @@ import { IsInt, IsNotEmpty, IsDateString, IsNumber } from 'class-validator'; export class CreateTransaccionDto { @IsInt() @IsNotEmpty() - idNombreTransaccion: number; + nombreTransaccion: string; @IsInt() @IsNotEmpty() diff --git a/src/transaccion/transaccion.service.ts b/src/transaccion/transaccion.service.ts index 55a8077..8031260 100644 --- a/src/transaccion/transaccion.service.ts +++ b/src/transaccion/transaccion.service.ts @@ -32,15 +32,15 @@ export class TransaccionService { } async create(createTransaccion: CreateTransaccionDto): Promise { - const { idNombreTransaccion, idPersona, ...rest } = createTransaccion; + const { nombreTransaccion, idPersona, ...rest } = createTransaccion; - const nombreTransaccion = - this.nombreTransaccionService.findById(idNombreTransaccion); + const Transaccion = + this.nombreTransaccionService.findByName(nombreTransaccion); const persona = this.personaService.findById(idPersona); const data = { - nombreTransaccion: await nombreTransaccion, + nombreTransaccion: await Transaccion, persona: await persona, ...rest, };