// GET: Prestamos public IActionResult Index() { ViewData["controller"] = "Prestamos"; ViewData["action"] = ""; var anhoParametrizado = _parametrosRepository.Get(x => x.Nombre.Equals("año")).FirstOrDefault(); var prestamos = _prestamoRepository.Get(x => x.Fecha.Year == Convert.ToInt32(anhoParametrizado.Valor1), new string[] { "Persona" }); var search = ParseToListMVC(prestamos); return(View(search)); }
public void OnGet() { var anhoParametrizado = Convert.ToInt32(_parametrosRepository.Get(x => x.Nombre.Equals("año")).FirstOrDefault().Valor1); ahorrado = _consignacionRepository.Get(x => x.Fecha.Year == anhoParametrizado && x.TipoConsignacion == 2).Sum(x => x.Valor); interes = _consignacionRepository.Get(x => x.Fecha.Year == anhoParametrizado && x.TipoConsignacion == 1).Sum(x => x.Interes); prestado = _prestamoRepository.Get(x => x.Fecha.Year == anhoParametrizado && !x.Finalizado).Sum(x => x.Valor); disponible = ahorrado + interes - prestado; }
public Prestamo Get(long id) { return(prestamoRepository.Get(id)); }
public AlertsPartialModel(DbContextOptions <FondoContext> dbContext) : base() { int countAlerts = 0; var hoy = DateTime.Today; _dbContext = dbContext; _personaRepository = new PersonaRepository(_dbContext); _prestamoRepository = new PrestamoRepository(_dbContext); _consignacionRepository = new ConsignacionRepository(_dbContext); var afiliadosActivos = _personaRepository.Get(x => x.Activo && x.Afiliado, new string[] { "Consignaciones", "Prestamos" }); foreach (var afiliado in afiliadosActivos) { var ultimaConsignacion = afiliado.Consignaciones.Where(x => x.TipoConsignacion == 2).LastOrDefault(); var diffDias = 0; if (ultimaConsignacion != null) { diffDias = ((TimeSpan)(hoy - ultimaConsignacion.Fecha)).Days; } if (ultimaConsignacion == null && (hoy.Month > 1 || (afiliado.Quincena.Value == 1 && hoy.Day > 5) || (afiliado.Quincena.Value == 2 && hoy.Day > 15))) { countAlerts++; } else if (diffDias > 30) { countAlerts++; } else if (afiliado.Quincena.HasValue && (afiliado.Quincena.Value == 1 && diffDias > 5) || (afiliado.Quincena.Value == 2 && diffDias > 15)) { countAlerts++; } } NumberAlertsAhorro = countAlerts; countAlerts = 0; var prestamosActivos = _prestamoRepository.Get(x => !x.Finalizado, new string[] { "Persona" }); foreach (var prestamo in prestamosActivos) { var diffDias = 0; var fechaLimite = new DateTime(hoy.Year, hoy.Month, prestamo.Fecha.Day); var consignacion = _consignacionRepository.Get(x => x.PersonaId == prestamo.PersonaId && x.TipoConsignacion == 1 && x.Interes.HasValue && x.Interes > 0).LastOrDefault(); if (consignacion != null) { diffDias = ((TimeSpan)(fechaLimite - consignacion.Fecha)).Days; if (diffDias > 30) { countAlerts++; } } else { diffDias = ((TimeSpan)(fechaLimite - prestamo.Fecha)).Days; if (diffDias > 30) { countAlerts++; } } } NumberAlertsPrestamo = countAlerts; NumberAlertsTotal = NumberAlertsPrestamo + NumberAlertsAhorro; }