Beispiel #1
0
        public ResultadoOp AltaPrestamos(Prestamo nuevoPrestamo)
        {
            LeerPrestamos();

            nuevoPrestamo.Tasa            = nuevoPrestamo.Sucursal.TasaInteres;
            nuevoPrestamo.MontoTotal      = nuevoPrestamo.MontoCredito + (nuevoPrestamo.Tasa * nuevoPrestamo.MontoCredito / 100);
            nuevoPrestamo.MontoCuota      = Math.Round((nuevoPrestamo.MontoTotal / nuevoPrestamo.CantidadCuotas), 2);
            nuevoPrestamo.CuotasFaltantes = nuevoPrestamo.CantidadCuotas;
            nuevoPrestamo.ListaPagos      = nuevoPrestamo.ArmadoListaPagos();
            nuevoPrestamo.ID = ListaPrestamos.Count + 1;

            if (nuevoPrestamo.ValidarObligatorios())
            {
                if (nuevoPrestamo.MontoTotal > nuevoPrestamo.Cliente.MontoMaximo)
                {
                    return(new ResultadoOp(false, "El monto total del crédito excede el monto máximo autorizado del cliente."));
                }
                else
                {
                    ListaPrestamos.Add(nuevoPrestamo);
                    GuardarPrestamos(ListaPrestamos);
                    return(new ResultadoOp());
                }
            }
            else
            {
                return(new ResultadoOp(false, "Campos obligatorios (*) incompletos."));
            }
        }
            public async Task <List <Prestamo> > Handle(ListaPrestamos request, CancellationToken cancellationToken)
            {
                var prestamos = await _context.Set <Prestamo>().OrderBy(t => t.IdPrestamo)
                                .Where(e => e.IdUsuario == request.IdUsuario).ToListAsync();

                return(prestamos);
            }
Beispiel #3
0
        /////////
        //OTROS//
        /////////

        public void ReporteDePagos()
        {
            int     MontoTotalPrestado = ListaPrestamos.Sum(x => x.MontoCredito);
            decimal PromedioTasas      = ListaPrestamos.Average(x => x.Tasa);

            foreach (Prestamo item in ListaPrestamos)
            {
                decimal TotalCuotasPagadas = item.CuotasPagadas * item.MontoCuota;
            }
        }
Beispiel #4
0
        public List <Prestamo> ObtenerPrestamos(DateTime?fechaDesde, DateTime?fechaHasta, TipoCliente?tipoCliente, string nombre)
        {
            LeerPrestamos();
            if (nombre == "" || nombre == null)
            {
                return(ListaPrestamos.Where(x => (fechaDesde.HasValue ? x.FCredito >= fechaDesde : true) && (fechaHasta.HasValue ? x.FCredito <= fechaHasta : true) && (tipoCliente.HasValue ? x.Cliente.TipoCliente == tipoCliente : true)).ToList());
            }
            else
            {
                List <Prestamo> ListaPrestamosFilt = new List <Prestamo>();

                foreach (Prestamo prestamo in ListaPrestamos)
                {
                    string nombrePrestamo = prestamo.Cliente.Nombre;
                    if (prestamo.Cliente.Nombre.ToLower().Contains(nombre.ToLower()))
                    {
                        ListaPrestamosFilt.Add(prestamo);
                    }
                }
                return(ListaPrestamosFilt.Where(x => (fechaDesde.HasValue ? x.FCredito >= fechaDesde : true) && (fechaHasta.HasValue ? x.FCredito <= fechaHasta : true) && (tipoCliente.HasValue ? x.Cliente.TipoCliente == tipoCliente : true)).ToList());
            }
            //return ListaPrestamos;
        }
Beispiel #5
0
 public List <Prestamo> ObtenerRegistrosPagos()
 {
     LeerPrestamos();
     return(ListaPrestamos.Where(x => x.CuotasFaltantes != 0).ToList());
 }