public CrearCuentaBancariaResponse Ejecutar(CrearCuentaBancariaRequest request) { CuentaBancaria cuenta = _unitOfWork.CuentaBancariaRepository.FindFirstOrDefault(t => t.Numero == request.Numero); if (cuenta == null) { CuentaBancaria cuentaNueva = _genericFactory.CreateEntity(request.TipoCuenta); cuentaNueva.Nombre = request.Nombre; cuentaNueva.Numero = request.Numero; cuentaNueva.Ciudad = request.Ciudad; _unitOfWork.CuentaBancariaRepository.Add(cuentaNueva); _unitOfWork.Commit(); return(new CrearCuentaBancariaResponse() { Mensaje = $"Se creó con exito la cuenta {cuentaNueva.Numero}." }); } else { return(new CrearCuentaBancariaResponse() { Mensaje = "El número de cuenta ya exite" }); } }
public CrearCuentaBancariaResponse Ejecutar(CrearCuentaBancariaRequest request) { CuentaBancaria cuenta = _unitOfWork.CuentaBancariaRepository.FindFirstOrDefault(t => t.Numero == request.Numero); if (cuenta == null) { CuentaBancaria cuentaNueva = new CuentaAhorro();//Debe ir un factory que determine que tipo de cuenta se va a crear cuentaNueva.Nombre = request.Nombre; cuentaNueva.Numero = request.Numero; cuentaNueva.Email = request.Email; _unitOfWork.CuentaBancariaRepository.Add(cuentaNueva); _unitOfWork.Commit(); var result = _emailSender.SendEmailAsync(cuentaNueva.Email, "Cuenta Creada!!", $"Se ha creado cuenta bancaria número {cuentaNueva.Numero}"); result.Wait(); return(new CrearCuentaBancariaResponse() { Mensaje = $"Se creó con éxito la cuenta {cuentaNueva.Numero}." }); } else { return(new CrearCuentaBancariaResponse() { Mensaje = $"El número de cuenta ya exite" }); } }
public CrearCuentaBancariaResponse Ejecutar(CrearCuentaBancariaRequest request) { CuentaBancaria cuenta = _unitOfWork.CuentaBancariaRepository.FindFirstOrDefault(t => t.Numero == request.Numero); if (cuenta == null) { CuentaBancaria cuentaNueva = new CuentaAhorro();//Debe ir un factory que determine que tipo de cuenta se va a crear cuentaNueva.Nombre = request.Nombre; cuentaNueva.Numero = request.Numero; cuentaNueva.Numero = request.Ciudad; _unitOfWork.CuentaBancariaRepository.Add(cuentaNueva); _unitOfWork.Commit(); return(new CrearCuentaBancariaResponse() { Mensaje = $"Se creó con exito la cuenta {cuentaNueva.Numero}." }); } else { return(new CrearCuentaBancariaResponse() { Mensaje = $"El número de cuenta ya exite" }); } }
public CrearCuentaBancariaResponse Ejecutar(CrearCuentaBancariaRequest request) { CuentaBancaria cuentaNueva = null; CuentaBancaria cuenta = _unitOfWork.CuentaBancariaRepository.FindFirstOrDefault(t => t.Numero == request.Numero); if (cuenta == null) { cuentaNueva = new CuentaBancariaFactory().Create(request.TipoCuenta); cuentaNueva.Nombre = request.Nombre; cuentaNueva.Numero = request.Numero; _unitOfWork.CuentaBancariaRepository.Add(cuentaNueva); _unitOfWork.Commit(); return(new CrearCuentaBancariaResponse() { Mensaje = $"Se creó con exito la cuenta {cuentaNueva.Numero}.", TipoDeCuentaCreado = request.TipoCuenta }); } else { return(new CrearCuentaBancariaResponse() { Mensaje = $"El número de cuenta ya exite" }); } }