예제 #1
0
        public static List <DefinisanaStampa> VratiStampeSintetikePredmeta(UlogovaniKorisnik korisnik, List <StavkaPretrage> stavke, byte tipIzvestaja)
        {
            var zaglavlje = new PregledSintetikePredmetaZaglavlje
            {
                Stavke          = stavke,
                NazivPrveKolone =
                    IzvestajPredmetaViewModel.VratiGrupisanja(korisnik)
                    .Where(g => g.IdElementa == string.Format(@"{0}", tipIzvestaja))
                    .Select(g => g.Naziv)
                    .Single()
            };

            var dir    = Directory.CreateDirectory(PutanjaAplikacije.PutanjaReportPregledSintetike);
            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 PregledSintetikePredmetaReport();
                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);
        }
예제 #2
0
        public static IzvestajPredmetaViewModel VratiIzvestajPredmetaViewModel(UlogovaniKorisnik korisnik)
        {
            using (var context = DmsData.GetContext())
            {
                var vm = new IzvestajPredmetaViewModel
                {
                    Okruzi = context.okrug_VratiOkruge(korisnik.IdOkruga, true).Select(okrug => new Element
                    {
                        IdElementa = string.Format(@"{0}", okrug.IdOkruga),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", okrug.Oznaka, okrug.Naziv))
                    }).ToList(),
                    Organi = korisnik.Inspektor ? context.organ_VratiOrganeInspektora(null, true, korisnik.IdKorisnika).Select(organ => new Element
                    {
                        IdElementa = string.Format(@"{0}", organ.IdOrgana),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", organ.Oznaka, organ.Naziv))
                    }).ToList() : context.organ_VratiOrgane(null, true).Select(organ => new Element
                    {
                        IdElementa = string.Format(@"{0}", organ.IdOrgana),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", organ.Oznaka, organ.Naziv))
                    }).ToList(),
                    Klase = context.klasa_VratiSveKlaseInspektora(korisnik.IdOkruga, korisnik.IdKorisnika).Select(klasa => new Element
                    {
                        IdElementa = klasa.Oznaka,
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", klasa.Oznaka, klasa.Naziv))
                    }).ToList(),
                    Jedinice = context.jedinica_VratiSveJedinice().Select(jedinica => new Element
                    {
                        IdElementa = jedinica.Oznaka,
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", jedinica.Oznaka, jedinica.Naziv))
                    }).ToList(),
                    Takse = context.taksa_VratiTakse(null, true).Select(taksa => new Element {
                        IdElementa = string.Format(@"{0}", taksa.IdTakse),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, taksa.Naziv)
                    }).ToList(),
                    VrstePredmeta = context.vrsta_pred_VratiVrstePredmeta(null, true).Select(vrstaPredmeta => new Element
                    {
                        IdElementa = string.Format(@"{0}", vrstaPredmeta.IdVrstePredmeta),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0}-{1}", vrstaPredmeta.Oznaka, vrstaPredmeta.Naziv))
                    }).ToList(),
                    KretanjaPredmeta = context.kret_pred_VratiKretanjaPredmeta(null, true).Select(vrstaKretanja => new Element
                    {
                        IdElementa = string.Format(@"{0}", vrstaKretanja.IdKretanjaPredmeta),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, vrstaKretanja.Naziv)
                    }).ToList(),
                    Godine = context.predmet_VratiGodine().Select(god => new Element
                    {
                        IdElementa = string.Format(@"{0}", god.Godina),
                        Naziv      = string.Format(@"{0}", god.Godina)
                    }).ToList(),
                    Inspektori = korisnik.IdOkruga != null?context.korisnik_VratiInspektore(korisnik.IdOkruga, null).Select(ins => new Element
                    {
                        IdElementa = string.Format(@"{0}", ins.IdKorisnika),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0} ({1})", ins.ImeIPrezime, ins.KorisnickoIme))
                    }).ToList() : null,
                                     Statusi    = IzvestajPredmetaViewModel.VratiStatuse(korisnik),
                                     Grupisanja = IzvestajPredmetaViewModel.VratiGrupisanja(korisnik),
                                     Kreatori   = context.korisnik_VratiKorisnike(null, true, korisnik.IdOkruga).Select(kr => new Element
                    {
                        IdElementa = string.Format(@"{0}", kr.IdKorisnika),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, string.Format(@"{0} ({1})", kr.ImeIPrezime, kr.KorisnickoIme))
                    }).ToList(),
                                     Opstine = korisnik.IdOkruga != null?context.opstina_VratiOpstine(korisnik.IdOkruga, null, true).Select(op => new Element
                    {
                        IdElementa = string.Format(@"{0}", op.IdOpstine),
                        Naziv      = Konverzija.VratiString(korisnik.Jezik, op.Naziv)
                    }).ToList() : null,
                };

                var godina = DateTime.Now.Year.ToString(CultureInfo.InvariantCulture);
                if (vm.Godine.All(g => g.IdElementa != godina))
                {
                    vm.Godine.Add(new Element
                    {
                        IdElementa = godina,
                        Naziv      = godina
                    });
                    vm.Godine = vm.Godine.OrderBy(g => g.IdElementa).ToList();
                }

                return(vm);
            }
        }