public static Emision getListadoEmision(DateTime periodo) { try { Emision emision = new Emision(); admEntities db = Datos.getDB(); var edificios = CatalogoEdificios.getAllEdificios(); List<EmisionEdificio> emisionesEdificios = new List<EmisionEdificio>(); double TotalGeneral = 0; var allUnidades = db.unidad.ToList(); foreach (edificio e in edificios) { EmisionEdificio emEdi = new EmisionEdificio(); emEdi.Direccion = e.direccion; var unidades = allUnidades.Where(x => x.dir_edificio == e.direccion); List<EmisionUnidad> emisionesUnidades = new List<EmisionUnidad>(); double total = 0; foreach (unidad u in unidades) { var detalle = CatalogoDeudores.getDetalleDeudaUnidad(u); double saldo = 0; foreach (CatalogoDeudores.DetalleDeuda d in detalle) { EmisionUnidad emUni = new EmisionUnidad(); emUni.Unidad = u.id_unidad; emUni.Importe = d.Importe.ToString("n2"); emUni.Periodo = d.Periodo.ToShortDateString(); emUni.Concepto = d.Tipo; //if (emUni.Periodo == periodo.ToShortDateString()) emUni.Codigo = d.NroReferencia; emUni.Recargo = d.Recargo.ToString("n2"); emUni.Deuda = (d.Importe + d.Recargo).ToString("n2"); saldo += d.Importe + d.Recargo; emUni.Saldo = saldo.ToString("n2"); total += d.Importe; emisionesUnidades.Add(emUni); } } TotalGeneral += total; emEdi.Total = total.ToString("n2"); emEdi.Unidades = emisionesUnidades; emisionesEdificios.Add(emEdi); } emision.TotalGeneral = TotalGeneral.ToString("n2"); emision.Edificios = emisionesEdificios; emision.Periodo = periodo.Month + "/" + periodo.Year; return emision; } catch (Exception e) { Logger.Log.write(e.InnerException == null ? e.Message : e.InnerException.Message); throw e; } }
private static void addEncabezado(Document doc, Emision emision) { PdfPTable t = new PdfPTable(1); float[] widths = new float[] { 90f }; t.SetWidths(widths); PdfPCell c = new PdfPCell(); c.Border = 0; Paragraph p; t.WidthPercentage = 100; int leading = 8; c = new PdfPCell(); c.PaddingTop = -2; c.Border = 0; c.BorderWidthBottom = 0; p = new Paragraph(leading, "CALVAGNA CONSORCIOS", calibri8B); c.AddElement(p); t.AddCell(c); doc.Add(t); p = new Paragraph(10, "LISTADO EMISION PERIODO: " + emision.Periodo, calibri9B); p.Alignment = Element.ALIGN_CENTER; doc.Add(p); }