public void PostaviPodatke(PregledPretrazenihPredmetaZaglavlje zaglavlje) { if (zaglavlje != null) { objectDataSource1.DataSource = zaglavlje; DataSource = objectDataSource1; } else { objectDataSource1.DataSource = typeof(PregledPretrazenihPredmetaZaglavlje); } }
public static List <DefinisanaStampa> VratiStampePretrazenihPredmeta(UlogovaniKorisnik korisnik, List <long> listaIdPredmeta) { var zaglavlje = new PregledPretrazenihPredmetaZaglavlje(); using (var context = DmsData.GetContext()) { if (listaIdPredmeta != null && listaIdPredmeta.Count > 0) { var inspektori = context.korisnik_VratiInspektore(korisnik.IdOkruga, null).ToDictionary(d => d.IdKorisnika, r => r.ImeIPrezime); foreach (var idPredmeta in listaIdPredmeta) { //godina je vreme rezervacije var predmet = context.predmet_VratiPredmet(idPredmeta).Select(p => new Predmet { IdPredmeta = p.IdPredmeta, BrojPredmeta = p.BrojPredmeta, IdJedinice = p.IdJedinice, IdKlase = p.IdKlase, IdKreator = p.IdKreatora, IdOkruga = p.IdOkruga, IdOpstine = p.IdOpstine, NazivOpstine = p.NazivOpstine, IdOrgana = p.IdOrgana, IdTakse = p.IdTakse, IdVrstePredmeta = p.IdVrstePredmeta, IdInspektora = p.IdInspektora, Podnosilac = p.Podnosilac, PodnosilacJedinstveniBroj = p.PodnosilacJedinstveniBroj, LiceKontrole = p.LiceKontrole, LiceKontroleJedinstveniBroj = p.LiceKontroleJedinstveniBroj, Napomena = p.Napomena, PodnosilacJeInspektor = p.PodnosilacJeInspektor, Prilog = p.Prilog, PutanjaArhiviranjaDokumenata = p.PutanjaArhiviranjaDokumenata, Sadrzaj = p.Sadrzaj, Status = p.Status, NazivStatusa = PredmetiData.VratiNazivStatusa(korisnik.Jezik, p.Status, p.IdNadredjenogPredmeta.HasValue), StraniBroj = p.StraniBroj, VremeRezervacije = p.VremeRezervacije, StvarnoVremeKreiranja = p.StvarnoVremeKreiranja, VremeKreiranja = p.VremeKreiranja, NazivOkruga = string.Format(@"{0}-{1}", p.OznakaOkruga, p.NazivOkruga), OznakaOkruga = p.OznakaOkruga, OznakaKlase = p.OznakaKlase, OznakaOrgana = p.OznakaOrgana, OznakaJedinice = p.OznakaJedinice, NazivKreatora = p.NazivKreatora, Godina = p.Godina.GetValueOrDefault(), NazivPredmeta = string.Format(@"{0}-{1}-{2}-{3}/{4}-{5}", p.OznakaOkruga, p.OznakaOrgana, p.OznakaKlase, string.Format(@"{0}", p.BrojPredmeta).PadLeft(6, '0'), p.Godina, p.OznakaJedinice), NazivInspektora = null, Mesec = p.VremeKreiranja.Month, SifraPredmeta = string.Format(@"{0}-{1}-{2}-{3}/{4}-{5}", p.OznakaOkruga, p.OznakaOrgana, p.OznakaKlase, string.Format(@"{0}", p.BrojPredmeta).PadLeft(6, '0'), p.Godina, p.OznakaJedinice), }).Single(); if (predmet.IdInspektora.HasValue && inspektori.ContainsKey(predmet.IdInspektora.Value)) { predmet.NazivInspektora = inspektori[predmet.IdInspektora.Value]; } zaglavlje.Predmeti.Add(predmet); } } } var dir = Directory.CreateDirectory(PutanjaAplikacije.PutanjaReportPregledPretrazenih); var stampe = new List <DefinisanaStampa>(); var guid = Guid.NewGuid().ToString(); foreach (var file in dir.GetFiles()) { var stampa = new DefinisanaStampa { Naziv = file.Name.TrimEnd(".repx".ToArray()) }; stampa.Link = string.Format("{0}/{1}/{2}.pdf", PutanjaAplikacije.PutanjaStampeWeb, guid, stampa.Naziv); var report = new PregledPretrazenihPredmetaReport(); report.LoadLayout(file.FullName); report.PostaviPodatke(zaglavlje); report.CreateDocument(); if (!Directory.Exists(string.Format("{0}{1}", PutanjaAplikacije.PutanjaStampe, guid))) { Directory.CreateDirectory(string.Format("{0}{1}", PutanjaAplikacije.PutanjaStampe, guid)); } report.ExportToPdf(string.Format("{0}{1}\\{2}.pdf", PutanjaAplikacije.PutanjaStampe, guid, stampa.Naziv)); var opt = new XlsExportOptions { ShowGridLines = true }; report.ExportToXls(string.Format("{0}{1}\\{2}.xls", PutanjaAplikacije.PutanjaStampe, guid, stampa.Naziv), opt); stampe.Add(stampa); } return(stampe); }