public void Fill(CargarDatosContext datacontext, Int32 EdificioId, Int32?UnidadTiempoId) { baseFill(datacontext); this.EdificioId = EdificioId; this.UnidadTiempoId = UnidadTiempoId; LstTrabajadores = datacontext.context.Trabajador.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo).ToList(); var lstunidadtiempo = datacontext.context.UnidadTiempo.OrderByDescending(x => x.Anio).OrderByDescending(x => x.Mes).Where(x => x.Estado == ConstantHelpers.EstadoActivo); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } Edificio = datacontext.context.Edificio.Find(EdificioId); foreach (var item in LstTrabajadores) { PlanillaQuincena p = datacontext.context.PlanillaQuincena.Where(x => x.TrabajadorId == item.TrabajadorId && x.UnidadTiempoId == UnidadTiempoId).FirstOrDefault(); LstPlanilla.Add(p); } }
public void Fill(CargarDatosContext datacontext, Int32 EdificioId, Int32?UnidadTiempoId) { baseFill(datacontext); this.EdificioId = EdificioId; this.UnidadTiempoId = UnidadTiempoId; //LstTrabajadores = datacontext.context.Trabajador.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo).ToList(); var lstunidadtiempo = datacontext.context.UnidadTiempo.OrderByDescending(x => x.Anio).OrderByDescending(x => x.Mes).Where(x => x.Estado == ConstantHelpers.EstadoActivo); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } Edificio = datacontext.context.Edificio.Find(EdificioId); objUnidadTiempo = datacontext.context.UnidadTiempo.FirstOrDefault(x => x.UnidadTiempoId == UnidadTiempoId); PlanillaR planillaR = datacontext.context.PlanillaR.FirstOrDefault(x => x.EdificioId == EdificioId && x.UnidadTiempoId == UnidadTiempoId); if (planillaR != null) { RutaExcel = planillaR.RutaExcel; RutaPDF = planillaR.RutaPDF; } //Ruta = //foreach (var item in LstTrabajadores) //{ // Planilla p = datacontext.context.Planilla.Where(x => x.TrabajadorId == item.TrabajadorId && x.UnidadTiempoId == UnidadTiempoId).FirstOrDefault(); // PlanillaQuincena pq = datacontext.context.PlanillaQuincena.Where(x => x.TrabajadorId == item.TrabajadorId && x.UnidadTiempoId == UnidadTiempoId).FirstOrDefault(); // if (p != null && pq != null) // { // p.AdelantoQuincena = pq.TotalQuincena ?? 0; // } // LstPlanilla.Add(p); //} }
public void Fill(CargarDatosContext datacontext) { try { baseFill(datacontext); UnidadTiempo unidadTiempoSig = null; Gasto gastoAcumulado = datacontext.context.Gasto.OrderBy(x => - x.UnidadTiempo.Orden).FirstOrDefault(x => x.Estado.Equals(ConstantHelpers.EstadoActivo) && x.EdificioId == EdificioId && x.SaldoMes.HasValue); if (gastoAcumulado != null) { Acumulado = gastoAcumulado.SaldoMes.Value; UltimaUnidadTiempoAcumulado = gastoAcumulado.UnidadTiempo.Descripcion; unidadTiempoSig = datacontext.context.UnidadTiempo.FirstOrDefault(x => x.Orden == gastoAcumulado.UnidadTiempo.Orden + 1 && x.Estado.Equals(ConstantHelpers.EstadoActivo)); } Edificio = datacontext.context.Edificio.FirstOrDefault(x => x.EdificioId == EdificioId); TipoMora = Edificio.TipoMora; MoraUnitariaGuardad = (double)Edificio.PMora.Value; List <UnidadTiempo> lstunidadtiempo = datacontext.context.UnidadTiempo.OrderBy(x => - x.Orden).Where(x => x.Estado == ConstantHelpers.EstadoActivo).ToList(); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } FechaActualMora = DateTime.Now; try { if (unidadTiempoSig != null) { CargarAcumuladoActual(datacontext, unidadTiempoSig); } } catch (Exception ex) { } if (UnidadTiempoId.HasValue) { LstLeyenda = datacontext.context.Leyenda.Where(X => X.BalanceUnidadTiempoEdificio.UnidadDeTiempoId == UnidadTiempoId && X.BalanceUnidadTiempoEdificio.EdificioId == EdificioId).ToList(); LeyendasPorDepartamento = new List <string>(); LstDepartamentos = new List <Departamento>(); LstDepartamentos = datacontext.context.Departamento.Where(x => x.EdificioId == EdificioId && x.Estado.Equals(ConstantHelpers.EstadoActivo)).ToList(); UnidadTiempo unidadTiempoActual = datacontext.context.UnidadTiempo.FirstOrDefault(x => x.UnidadTiempoId == UnidadTiempoId); List <DateTime> LstFechasEmision = new List <DateTime>(); //LstDepartamentos.ForEach(x => x.MontoMora = ); LstCuota = datacontext.context.Cuota.Where(x => x.UnidadTiempoId == UnidadTiempoId && x.Departamento.EdificioId == EdificioId).ToList(); CuotasPorUnidadTiempo.Add(unidadTiempoActual.UnidadTiempoId.ToString(), LstCuota); UnidadTiempo unidadTiempoAnterior = unidadTiempoActual; LstUnidadTiempoString.Add(unidadTiempoAnterior.Descripcion.Remove(unidadTiempoAnterior.Descripcion.Length - 5)); // DateTime fechaEmisionUnidadTiempoActual = new DateTime(unidadTiempoActual.Anio, unidadTiempoActual.Mes, Edificio.DiaEmisionCuota); // LstDepartamentos.ForEach(x => LstFechasEmision.Add(new DateTime(unidadTiempoAnterior.Anio, unidadTiempoAnterior.Mes, Edificio.DiaEmisionCuota))); for (int i = 0; i < LstCuota.Count; i++) { if (LstCuota[i].Leyenda.HasValue) { LeyendasPorDepartamento.Add(LstCuota[i].Leyenda.Value.ToString()); } else { LeyendasPorDepartamento.Add(" "); } if (!LstCuota[i].Pagado) { LstFechasEmision.Add(new DateTime(unidadTiempoAnterior.Anio, unidadTiempoAnterior.Mes, Edificio.DiaEmisionCuota)); } else { LstFechasEmision.Add(DateTime.MinValue); } } while (true) { if (unidadTiempoAnterior.Orden == 1) { break; } unidadTiempoAnterior = datacontext.context.UnidadTiempo.FirstOrDefault(x => x.Orden == unidadTiempoAnterior.Orden - 1 && x.Estado.Equals(ConstantHelpers.EstadoActivo)); if (unidadTiempoAnterior == null) { break; } CuotaComun cuotaComun = datacontext.context.CuotaComun.FirstOrDefault(x => x.EdificioId == EdificioId && x.UnidadTiempoId == unidadTiempoAnterior.UnidadTiempoId); if (cuotaComun == null || cuotaComun.Pagado) { break; } LstUnidadTiempoString.Add(unidadTiempoAnterior.Descripcion.Remove(unidadTiempoAnterior.Descripcion.Length - 5)); LstCuota = datacontext.context.Cuota.Where(x => x.UnidadTiempo.Estado.Equals(ConstantHelpers.EstadoActivo) && x.UnidadTiempo.Mes == unidadTiempoAnterior.Mes && x.UnidadTiempo.Anio == unidadTiempoAnterior.Anio && x.Departamento.EdificioId == EdificioId).ToList(); CuotasPorUnidadTiempo.Add(unidadTiempoAnterior.UnidadTiempoId.ToString(), LstCuota); for (int i = 0; i < Math.Min(LstCuota.Count, LstFechasEmision.Count); i++) { if (!LstCuota[i].Pagado) { LstFechasEmision[i] = new DateTime(unidadTiempoAnterior.Anio, unidadTiempoAnterior.Mes, Edificio.DiaEmisionCuota); } } } for (int i = 0; i < LstDepartamentos.Count; i++) { int DiasTranscurridosMora = ((LstDepartamentos[i].FechaPago.HasValue ? LstDepartamentos[i].FechaPago.Value.Date : FechaActualMora.Date) - FechaActualMora.Date).Days - 1; DiasTranscurridosMora = DiasTranscurridosMora < 0 ? 0 : DiasTranscurridosMora; Decimal moraUnitaria = Edificio.TipoMora.Equals(ConstantHelpers.TipoMoraPorcentual) ? Edificio.MontoCuota * Edificio.PMora.Value / 100M : Edificio.PMora.Value; LstDepartamentos[i].MontoMora = moraUnitaria * DiasTranscurridosMora; LstDepartamentos[i].FechaPago = LstDepartamentos[i].FechaPago == null ? DateTime.Now : LstDepartamentos[i].FechaPago; } //foreach (Cuota c in LstCuota) //{ // LstEstadoCuota.Add(c.Estado == "FIN"); // if (HasDebt(c)) LstObservacion.Add(ConstantHelpers.DeudasActivas); // else LstObservacion.Add(ConstantHelpers.DeudasCerradas); //} } } catch (Exception) { CuotasPorUnidadTiempo = new Dictionary <string, List <Cuota> >(); LstUnidadTiempoString = new List <string>(); LstDepartamentos = new List <Departamento>(); } }
public void Fill(CargarDatosContext c, Int32?unidadTiempoInicio, Int32?unidadTiempoFin, Int32?departamentoId, Int32 edificioId, String estado) { baseFill(c); this.EdiId = edificioId; var edificio = c.context.Edificio.FirstOrDefault(x => x.EdificioId == edificioId); AcronimoEdificio = edificio.Acronimo; NombreEdificio = edificio.Nombre; FactorMora = edificio.PMora.Value; TipoMora = edificio.TipoMora; DiaMora = edificio.DiaMora ?? 15; this.UnidadTiempoInicio = unidadTiempoInicio; this.UnidadTiempoFin = unidadTiempoFin; this.DepartamentoId = departamentoId; this.Estado = estado ?? "0"; List <UnidadTiempo> lstunidadtiempo = c.context.UnidadTiempo.OrderBy(x => - x.Orden).Where(x => x.Estado == ConstantHelpers.EstadoActivo).ToList(); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } LstEstado.Add(new SelectListItem { Text = "Pagado", Value = "1" }); LstEstado.Add(new SelectListItem { Text = "Sin Pagar", Value = "0" }); if (!UnidadTiempoFin.HasValue) { var uni = lstunidadtiempo.FirstOrDefault(x => x.EsActivo); UnidadTiempoFin = uni.UnidadTiempoId; AnioElegido = uni.Anio; MesElegido = uni.Mes; } else { var uni = lstunidadtiempo.FirstOrDefault(x => x.Estado == ConstantHelpers.EstadoActivo && x.UnidadTiempoId == UnidadTiempoFin.Value); AnioElegido = uni.Anio; MesElegido = uni.Mes; } var mesActivo = lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Mes; if (mesActivo == 2 && (DiaMora == 30 || DiaMora == 31)) { DiaMora = 28; FechaConsiderar = "28/" + mesActivo + "/" + lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Anio; } else { if (DiaMora == 30) { if (mesActivo == 1 || mesActivo == 3 || mesActivo == 5 || mesActivo == 7 || mesActivo == 8 || mesActivo == 10 || mesActivo == 12) { DiaMora += 1; FechaConsiderar = DiaMora + "/" + mesActivo + "/" + lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Anio; } } else { FechaConsiderar = DiaMora + "/" + mesActivo + "/" + lstunidadtiempo.FirstOrDefault(x => x.EsActivo).Anio; } } LstDepartamento = c.context.Departamento.Where(x => x.Estado == ConstantHelpers.EstadoActivo && x.EdificioId == edificioId).ToList(); if (this.DepartamentoId.HasValue) { var query = c.context.Cuota.Where(x => x.DepartamentoId == this.DepartamentoId && x.UnidadTiempo.Estado == ConstantHelpers.EstadoActivo && x.UnidadTiempoId <= UnidadTiempoFin).AsQueryable(); if (!String.IsNullOrEmpty(this.Estado)) { var e = this.Estado == "0" ? false : true; query = query.Where(x => x.Pagado == e); } LstCuota = query.OrderBy(x => x.DepartamentoId).ThenByDescending(x => x.UnidadTiempo.Orden).ToList(); } else { var query = c.context.Cuota.Where(x => x.UnidadTiempoId <= UnidadTiempoFin && x.UnidadTiempo.Estado == ConstantHelpers.EstadoActivo && x.Departamento.EdificioId == this.EdiId).AsQueryable(); if (!String.IsNullOrEmpty(this.Estado)) { var e = this.Estado == "0" ? false : true; query = query.Where(x => x.Pagado == e); } LstCuota = query.OrderBy(x => x.DepartamentoId).ThenByDescending(x => x.UnidadTiempo.Orden).ToList(); } LstLeyenda = c.context.Leyenda.Where(X => X.BalanceUnidadTiempoEdificio.UnidadDeTiempoId == UnidadTiempoFin && X.BalanceUnidadTiempoEdificio.EdificioId == EdiId).ToList(); foreach (var item in LstLeyenda) { StrLeyendas += item.Numero + "." + item.Descripcion + "\r\n"; } }
public void Fill(CargarDatosContext datacontext) { baseFill(datacontext); Edificio = datacontext.context.Edificio.FirstOrDefault(x => x.EdificioId == EdificioId); LstDepartamento = datacontext.context.Departamento.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo).OrderBy(x => x.Numero).ToList(); for (int i = 0; i < LstDepartamento.Count - 1; i++) { for (int k = i + 1; k < LstDepartamento.Count; k++) { Int32 ii = 10000000; Int32 kk = 1000000; Int32.TryParse(LstDepartamento[i].Numero, out ii); Int32.TryParse(LstDepartamento[k].Numero, out kk); Departamento tmpDepartamento = null; if (ii > kk) { tmpDepartamento = LstDepartamento[i]; LstDepartamento[i] = LstDepartamento[k]; LstDepartamento[k] = tmpDepartamento; } tmpDepartamento = null; } } var lstunidadtiempo = datacontext.context.UnidadTiempo.OrderByDescending(x => x.Anio).ThenByDescending(x => x.Mes).Where(x => x.Estado == ConstantHelpers.EstadoActivo); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } LstLeyendas = new List <Leyenda>(); if (UnidadTiempoId.HasValue) { CuotaComun = datacontext.context.CuotaComun.FirstOrDefault(x => x.UnidadTiempoId == UnidadTiempoId && x.EdificioId == EdificioId) ?? new CuotaComun(); LstCuota = datacontext.context.Cuota.Where(x => x.UnidadTiempoId == UnidadTiempoId && x.Departamento.EdificioId == EdificioId && x.EsExtraordinaria != true).ToList(); } TotalProporcional = LstDepartamento.Count; LstFactorProporcional = Enumerable.Repeat <double>(1, (int)TotalProporcional).ToList(); LstFactorGasto = new List <double>(); LstFactorConsumoAgua = new List <double>(); TotalFactorGasto = 0; TotalFactorConsumoAgua = 0; foreach (var item in LstDepartamento) { LstFactorGasto.Add((double)(item.FactorGasto ?? 0)); TotalFactorGasto += (double)(item.FactorGasto ?? 0); LstFactorConsumoAgua.Add((double)item.LecturaAgua); TotalFactorConsumoAgua += (int)item.LecturaAgua; } this.FactorAreaComun = getFactor(Edificio.FactorAreaComun); this.FactorAlcantarillado = getFactor(Edificio.FactorAlcantarillado); this.FactorCargoFijo = getFactor(Edificio.FactorCargoFijo); var rec = datacontext.context.ReciboMes.FirstOrDefault(x => x.UnidadTiempoId == UnidadTiempoId && x.EdificioId == EdificioId); if (rec != null) { RutaUltimo = rec.Ruta; } }