public void Fill(CargarDatosContext datacontext, Int32 EdificioId) { var lstunidadtiempo = datacontext.context.Gasto.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo).OrderByDescending(x => x.UnidadTiempo.Orden).ToList(); List <Int32> valAnio = new List <int>(); List <Int32> valMes = new List <int>(); //var mesActivo = lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Mes; foreach (var item in lstunidadtiempo) { if (item.UnidadTiempo.EsActivo) { continue; } var mes = item.UnidadTiempo.Descripcion.Substring(0, item.UnidadTiempo.Descripcion.Length - 4); if (!valAnio.Contains(item.UnidadTiempo.Anio)) { LstAnio.Add(new SelectListItem { Value = item.UnidadTiempo.Anio.ToString(), Text = item.UnidadTiempo.Anio.ToString() }); valAnio.Add(item.UnidadTiempo.Anio); } if (!valMes.Contains(item.UnidadTiempo.Mes)) { LstMeses.Add(new SelectListItem { Value = item.UnidadTiempo.Mes.ToString(), Text = mes }); valMes.Add(item.UnidadTiempo.Mes); } } baseFill(datacontext); LstGasto = new List <SelectListItem>(); var gastos = datacontext.context.Gasto.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo); if (gastos != null && gastos.Count() > 0) { foreach (var item in gastos) { LstGasto.Add(new SelectListItem { Value = item.GastoId.ToString(), Text = item.UnidadTiempo.Descripcion.ToUpper() }); } } this.EdificioId = EdificioId; }
public void Fill(CargarDatosContext datacontext, Int32?_np, Controller c) { baseFill(datacontext); np = _np ?? 1; Edificio = datacontext.context.Edificio.FirstOrDefault(x => x.EdificioId == EdificioId); Departamento = datacontext.context.Departamento.FirstOrDefault(x => x.DepartamentoId == DepartamentoId); var lstCuotas = datacontext.context.Cuota.OrderByDescending(x => x.UnidadTiempo.Anio).OrderByDescending(x => x.UnidadTiempo.Mes). Include(x => x.Departamento). Include(x => x.UnidadTiempo). Where(x => x.DepartamentoId == DepartamentoId). AsQueryable(); var lstunidadtiempo = datacontext.context.UnidadTiempo.OrderByDescending(X => X.Orden).Where(x => x.Estado == ConstantHelpers.EstadoActivo); List <Int32> valAnio = new List <int>(); List <Int32> valMes = new List <int>(); var mesActivo = lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Mes; foreach (var item in lstunidadtiempo) { var mes = item.Descripcion.Substring(0, item.Descripcion.Length - 4); if (!valAnio.Contains(item.Anio)) { LstAnio.Add(new SelectListItem { Value = item.Anio.ToString(), Text = item.Anio.ToString() }); valAnio.Add(item.Anio); } if (!valMes.Contains(item.Mes) && item.Mes <= mesActivo) { LstMeses.Add(new SelectListItem { Value = item.Mes.ToString(), Text = mes }); valMes.Add(item.Mes); } } if (Anio.HasValue && Mes.HasValue == false) { lstCuotas = lstCuotas.Where(x => x.UnidadTiempo.Anio == Anio.Value && x.DepartamentoId == DepartamentoId); var unidadTiempo = datacontext.context.UnidadTiempo.FirstOrDefault(X => X.Anio == Anio); if (unidadTiempo != null) { var correcion = datacontext.context.ArchivoCorrecionEdificio.FirstOrDefault(X => X.Tipo.Contains(ConstantHelpers.TipoArchivo.ReporteGeneral) && X.EdificioId == EdificioId && X.UnidadTiempo.Anio == Anio); if (correcion != null) { //var ruta = "/intranet/Resources/Files/Corregidos/"+ correcion.RutaArchivo; var ruta = "~/Resources/Files/Corregidos/" + correcion.RutaArchivo; string fileName = "Reporte general - " + datacontext.context.Edificio.FirstOrDefault(X => X.EdificioId == EdificioId).Nombre + " - " + unidadTiempo.Descripcion + ".pdf"; reporte = new ReporteEdificioUnidadTiempo(); reporte.Ruta = ruta; reporte.Nombre = fileName; } else { reporte = datacontext.context.ReporteEdificioUnidadTiempo.FirstOrDefault(X => X.UnidadTiempo.Anio == Anio.Value && X.EdificioId == EdificioId); } } } else if (Mes.HasValue && Anio.HasValue == false) { lstCuotas = lstCuotas.Where(x => x.UnidadTiempo.Mes == Mes.Value && x.DepartamentoId == DepartamentoId); var unidadTiempo = datacontext.context.UnidadTiempo.FirstOrDefault(X => X.Mes == Mes); if (unidadTiempo != null) { var correcion = datacontext.context.ArchivoCorrecionEdificio.FirstOrDefault(X => X.Tipo.Contains(ConstantHelpers.TipoArchivo.ReporteGeneral) && X.EdificioId == EdificioId && X.UnidadTiempo.Mes == Mes); if (correcion != null) { //var ruta = "/intranet/Resources/Files/Corregidos/"+ correcion.RutaArchivo; var ruta = "~/Resources/Files/Corregidos/" + correcion.RutaArchivo; string fileName = "Reporte general - " + datacontext.context.Edificio.FirstOrDefault(X => X.EdificioId == EdificioId).Nombre + " - " + unidadTiempo.Descripcion + ".pdf"; reporte = new ReporteEdificioUnidadTiempo(); reporte.Ruta = ruta; reporte.Nombre = fileName; } else { reporte = datacontext.context.ReporteEdificioUnidadTiempo.FirstOrDefault(X => X.UnidadTiempo.Mes == Mes.Value && X.EdificioId == EdificioId); } } } else if (Mes.HasValue && Anio.HasValue) { lstCuotas = lstCuotas.Where(x => x.UnidadTiempo.Mes == Mes.Value && x.DepartamentoId == DepartamentoId && x.UnidadTiempo.Anio == Anio); var unidadTiempo = datacontext.context.UnidadTiempo.FirstOrDefault(X => X.Mes == Mes && X.Anio == Anio); if (unidadTiempo != null) { UnidadTiempoId = unidadTiempo.UnidadTiempoId; var correcion = datacontext.context.ArchivoCorrecionEdificio.FirstOrDefault(X => X.Tipo.Contains(ConstantHelpers.TipoArchivo.ReporteGeneral) && X.EdificioId == EdificioId && X.UnidadTiempo.Mes == Mes && X.UnidadTiempo.Anio == Anio); if (correcion != null) { //var ruta = "/intranet/Resources/Files/Corregidos/"+ correcion.RutaArchivo; var ruta = "~/Resources/Files/Corregidos/" + correcion.RutaArchivo; string fileName = "Reporte general - " + datacontext.context.Edificio.FirstOrDefault(X => X.EdificioId == EdificioId).Nombre + " - " + unidadTiempo.Descripcion + ".pdf"; reporte = new ReporteEdificioUnidadTiempo(); reporte.Ruta = ruta; reporte.Nombre = fileName; } else { reporte = datacontext.context.ReporteEdificioUnidadTiempo.FirstOrDefault(X => X.UnidadTiempo.Mes == Mes.Value && X.EdificioId == EdificioId && X.UnidadTiempo.Anio == Anio); } } } else { Int32 unidadtiempoid = lstunidadtiempo.First().UnidadTiempoId; lstCuotas = lstCuotas.Where(x => x.DepartamentoId == DepartamentoId && x.UnidadTiempoId == unidadtiempoid); } var b = datacontext.context.Cuota.Where(X => X.DepartamentoId == DepartamentoId && X.Pagado).OrderByDescending(X => X.UnidadTiempo.Orden).ToList(); var ultimaTiempoPagada = b.FirstOrDefault(); if (ultimaTiempoPagada != null) { UltimaPagada = ultimaTiempoPagada.UnidadTiempo.Descripcion; } else { UltimaPagada = "Nunca pago cuota"; } LstEstadoCuenta = lstCuotas.ToPagedList(np.Value, ConstantHelpers.DEFAULT_PAGE_SIZE); }