public void Setup() { empleado = new Empleado("1003195636", "Ivan Contreras", 1000000); var respuestaCredito = CreditoFactory.CanCrearCredito(6000000, 0.005, 10); if (respuestaCredito.Count == 0) { credito = CreditoFactory.CrearCredito(6000000, 0.005, 10); if (credito != null) { credito.CodigoCredito = "0001"; empleado.Creditos.Add(credito); } } }
public CrearCreditoResponse Ejecutar(CrearCreditoRequest request) { Empleado empleado = _unitOfWork.EmpleadoRepository.FindFirstOrDefault(x => x.Cedula == request.Cedula); if (empleado != null) { Credito credito = empleado.Creditos.Find(x => x.CodigoCredito == request.CodigoCredito); if (credito == null) { var errores = CreditoFactory.CanCrearCredito(request.Valor, request.TasaInteres, request.PlazoMeses); if (errores.Count == 0) { Credito creditoNuevo = CreditoFactory.CrearCredito(request.Valor, request.TasaInteres, request.PlazoMeses); creditoNuevo.CodigoCredito = request.CodigoCredito; empleado.Creditos.Add(creditoNuevo); _unitOfWork.EmpleadoRepository.Edit(empleado); // _unitOfWork.CreditoRepository.Add(creditoNuevo); _unitOfWork.Commit(); return(new CrearCreditoResponse() { Mensaje = $"Su credito {creditoNuevo.CodigoCredito} por valor de {creditoNuevo.Valor} se registro correctamente" }); } return(new CrearCreditoResponse() { Mensaje = string.Join("-", errores) }); } else { return(new CrearCreditoResponse() { Mensaje = $"ya existe un credito registrado con este numero {request.CodigoCredito}" }); } } else { return(new CrearCreditoResponse() { Mensaje = $"El empleado {request.Cedula} no existe" }); } }
public void TestCaseCrearCredito(string cedula, string nombre, double salario, double valorCredito, double tasaInteres, int plazo, string mensajeEsperado) { Empleado empleado = new Empleado(cedula, nombre, salario); var respuesta = CreditoFactory.CanCrearCredito(valorCredito, tasaInteres, plazo); if (respuesta.Count == 0) { Credito credito = CreditoFactory.CrearCredito(valorCredito, tasaInteres, plazo); if (credito != null) { respuesta.Add(mensajeEsperado); } } var obtenido = ""; if (respuesta.Contains(mensajeEsperado)) { obtenido = mensajeEsperado; } Assert.AreEqual(mensajeEsperado, obtenido); }
static void Main(string[] args) { var factory = new CreditoFactory(); var CreditoDireto = factory.GetCalculo(new SolicitacaoCredito(50000, 5, new DateTime(2020, 3, 20), TipoCreditoEnum.CreditoDireto)); var resultado = CreditoDireto.Calcular(); PrintResultado(resultado); var creditoPessoaFisica = factory.GetCalculo(new SolicitacaoCredito(50000, 5, new DateTime(2020, 3, 20), TipoCreditoEnum.CreditoPessoaFisica)); resultado = creditoPessoaFisica.Calcular(); PrintResultado(resultado); var creditoPessoaJuridica = factory.GetCalculo(new SolicitacaoCredito(50000, 5, new DateTime(2020, 3, 20), TipoCreditoEnum.CreditoPessoaJuridica)); resultado = creditoPessoaJuridica.Calcular(); PrintResultado(resultado); var creditoImobiliario = factory.GetCalculo(new SolicitacaoCredito(50000, 5, new DateTime(2020, 3, 20), TipoCreditoEnum.CreditoImobiliario)); resultado = creditoImobiliario.Calcular(); PrintResultado(resultado); var creditoConsignado = factory.GetCalculo(new SolicitacaoCredito(50000, 5, new DateTime(2020, 3, 20), TipoCreditoEnum.CreditoConsignado)); resultado = creditoConsignado.Calcular(); PrintResultado(resultado); Console.WriteLine("Fim"); Console.ReadKey(); }