/// <summary> /// Metoda koja generira Pdf dokument. Stvara se tablica svih stanja s njezinim atributima /// </summary> /// <returns></returns> public async Task <IActionResult> PDFReport() { string naslov = "Popis stanja"; var stanja = await ctx.Stanje .AsNoTracking() .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(stanja)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <Stanje>(o => o.SifraStanja); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Šifra stanja", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Stanje>(o => o.NazivStanja); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(4); column.HeaderCell("Naziv stanja", horizontalAlignment: HorizontalAlignment.Left); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=stanja.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }
/// <summary> /// Kreiranje PDF izvjestaja /// </summary> /// <returns>izvjestaj u PDF formatu</returns> public async Task <IActionResult> PDFReport() { string naslov = "Popis sastanaka"; var sastanci = await ctx.Sastanak .Include(o => o.SifraStozeraNavigation) .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(sastanci)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <Sastanak>(o => o.SifraSastanka); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Sifra sastanka", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Sastanak>(o => o.Datum); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(4); column.HeaderCell("Datum sastanka", horizontalAlignment: HorizontalAlignment.Left); column.ColumnItemsTemplate(template => { template.TextBlock(); template.DisplayFormatFormula(obj => { if (obj == null || string.IsNullOrEmpty(obj.ToString())) { return(string.Empty); } else { DateTime date = (DateTime)obj; return(date.ToString("dd.MM.yyyy")); } }); }); columns.AddColumn(column => { column.PropertyName <Sastanak>(o => o.SifraStozeraNavigation.Naziv); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(2); column.Width(2); column.HeaderCell("Naziv stozera", horizontalAlignment: HorizontalAlignment.Center); }); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=stozeri.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }
/// <summary> /// Izrada izvjestaja u PDF formatu /// </summary> /// <returns>PDF dokument</returns> public async Task <IActionResult> PDFReport() { string naslov = "Popis mjera"; var mjere = await ctx.Mjera .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(mjere)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.SifraMjere); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Sifra mjere", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.SifraPrethodneMjere); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(4); column.HeaderCell("Sifra prethodne mjere", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.SifraSastanka); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(2); column.Width(2); column.HeaderCell("Sifra sastanka", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.Opis); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Opis", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.Datum); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Datum", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Mjera>(o => o.VrijediDo); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Vrijedi do", horizontalAlignment: HorizontalAlignment.Left); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=mjere.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }
/// <summary> /// Metoda koja generira Pdf tablice zaraženih osoba /// </summary> /// <returns></returns> public async Task <IActionResult> PDFReport() { string naslov = "Popis zaraženih osoba"; var zarazeneOsobe = await ctx.ZarazenaOsoba .Include(o => o.IdentifikacijskiBrojNavigation) .Include(o => o.SifraStanjaNavigation) .AsNoTracking() .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(zarazeneOsobe)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <ZarazenaOsoba>(o => o.IdentifikacijskiBroj); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Identifikacijski broj", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <ZarazenaOsoba>(o => o.IdentifikacijskiBrojNavigation.Ime); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(4); column.HeaderCell("Ime", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <ZarazenaOsoba>(o => o.IdentifikacijskiBrojNavigation.Prezime); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(2); column.Width(2); column.HeaderCell("Prezime", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <ZarazenaOsoba>(o => o.SifraStanjaNavigation.NazivStanja); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Stanje osobe", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <ZarazenaOsoba>(o => o.DatZaraze); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(4); column.Width(2); column.HeaderCell("Datum zaraze", horizontalAlignment: HorizontalAlignment.Center); column.ColumnItemsTemplate(template => { template.TextBlock(); template.DisplayFormatFormula(obj => { if (obj == null || string.IsNullOrEmpty(obj.ToString())) { return(string.Empty); } else { DateTime date = (DateTime)obj; return(date.ToString("dd.MM.yyyy")); } }); }); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=zarazeneosobe.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }
/// <summary> /// Metoda koja generira pdf izvješće za detalje neke osobe. /// </summary> /// <param name="id">Identifikacijski broj osobe</param> /// <returns></returns> public async Task <IActionResult> PDFReportOsoba(string id) { string naslov = "Detalji osobe"; var osobe = await ctx.Osoba .Include(o => o.KontaktIdKontaktNavigation) .Include(o => o.ZarazenaOsoba) .Where(o => o.IdentifikacijskiBroj == id) .Select(o => new OsobaDetailsViewModel { IdentifikacijskiBroj = o.IdentifikacijskiBroj, Ime = o.Ime, Prezime = o.Prezime, Adresa = o.Adresa, DatRod = o.DatRod, Zanimanje = o.Zanimanje, Zarazena = o.ZarazenaOsoba.IdentifikacijskiBroj.Equals(id) ? true : false, Zarazenastring = o.ZarazenaOsoba.IdentifikacijskiBroj.Equals(id) ? "Da" : "Ne", DatZaraze = o.ZarazenaOsoba.DatZaraze, NazivStanja = o.ZarazenaOsoba.SifraStanjaNavigation.NazivStanja }) .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(osobe)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.IdentifikacijskiBroj); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Identifikacijski broj", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.Ime); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(2); column.HeaderCell("Ime", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.Prezime); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(2); column.Width(2); column.HeaderCell("Prezime", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.Adresa); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Adresa", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.DatRod); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(4); column.Width(2); column.HeaderCell("Datum rođenja", horizontalAlignment: HorizontalAlignment.Center); column.ColumnItemsTemplate(template => { template.TextBlock(); template.DisplayFormatFormula(obj => { if (obj == null || string.IsNullOrEmpty(obj.ToString())) { return(string.Empty); } else { DateTime date = (DateTime)obj; return(date.ToString("dd.MM.yyyy")); } }); }); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.Zanimanje); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(5); column.Width(2); column.HeaderCell("Zanimanje", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <OsobaDetailsViewModel>(o => o.Zarazenastring); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(5); column.Width(2); column.HeaderCell("Zaražena?", horizontalAlignment: HorizontalAlignment.Left); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=osobadetalji.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }
/// <summary> /// Metoda koja služi za generiranje pdf izvješća. Stvara se tablica sa svim kontaktima koji su u bazi podataka /// </summary> /// <returns></returns> public async Task <IActionResult> PDFReport() { string naslov = "Popis osoba u kontaktu"; var kontkat = await ctx.Kontakt .Include(o => o.IdKontaktNavigation) .Include(o => o.IdOsobaNavigation) .AsNoTracking() .ToListAsync(); PdfReport report = Constants.CreateBasicReport(naslov); report.PagesFooter(footer => { footer.DefaultFooter(DateTime.Now.ToString("dd.MM.yyyy.")); }) .PagesHeader(header => { header.DefaultHeader(defaultHeader => { defaultHeader.RunDirection(PdfRunDirection.LeftToRight); defaultHeader.Message(naslov); }); }); report.MainTableDataSource(dataSource => dataSource.StronglyTypedList(kontkat)); report.MainTableColumns(columns => { columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdOsoba); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(0); column.Width(4); column.HeaderCell("Identifikacijski broj osobe", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdOsobaNavigation.Ime); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(1); column.Width(2); column.HeaderCell("Ime", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdOsobaNavigation.Prezime); column.CellsHorizontalAlignment(HorizontalAlignment.Center); column.IsVisible(true); column.Order(2); column.Width(2); column.HeaderCell("Prezime", horizontalAlignment: HorizontalAlignment.Center); }); columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdKontakt); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(3); column.Width(4); column.HeaderCell("Identifikacijski broj kontakta", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdKontaktNavigation.Ime); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(4); column.Width(2); column.HeaderCell("Ime", horizontalAlignment: HorizontalAlignment.Left); }); columns.AddColumn(column => { column.PropertyName <Kontakt>(o => o.IdKontaktNavigation.Prezime); column.CellsHorizontalAlignment(HorizontalAlignment.Left); column.IsVisible(true); column.Order(5); column.Width(2); column.HeaderCell("Prezime", horizontalAlignment: HorizontalAlignment.Left); }); }); byte[] pdf = report.GenerateAsByteArray(); if (pdf != null) { Response.Headers.Add("content-disposition", "inline; filename=kontakti.pdf"); return(File(pdf, "application/pdf")); } else { return(NotFound()); } }