コード例 #1
0
        public static ObjavaFullDto VratiObjavuDto(int id)
        {
            ISession s = SesijeProvajder.Sesija;
            Korisnik k = ProvajderPodatakaKorisnika.VratiKorisnika(id);

            if (k == null)
            {
                return(null);
            }

            if (k.TipNaloga.IdTip != 5)
            {
                return(null);
            }

            Objava        o    = k.Objava;
            ObjavaFullDto odto = new ObjavaFullDto()
            {
                IdObjave    = o.IdObjave,
                IdKorisnika = o.IdKorisnik.IdKorisnika,
                IdLokacije  = o.Lokacija.IdMenza,
                TekstObjave = o.TekstObjave,
                DatumObjave = o.DatumObjave.Value
            };

            return(odto);
        }
コード例 #2
0
        public static List <ObjavaReadDto> SveObjave(int id)
        {
            ISession s  = SesijeProvajder.Sesija;
            Korisnik ko = ProvajderPodatakaKorisnika.VratiKorisnika(id);

            if (ko == null)
            {
                return(null);
            }

            if (ko.TipNaloga.IdTip != 5)
            {
                return(null);
            }

            List <ObjavaReadDto> listaObjava = new List <ObjavaReadDto>();

            List <Korisnik> lista = ko.Prati.ToList();

            lista.RemoveAll(x => x.TipNaloga.IdTip != 5);
            foreach (var v in lista)
            {
                ObjavaReadDto objava = new ObjavaReadDto()
                {
                    TekstObjave      = v.Objava.TekstObjave,
                    ImeKorisnika     = v.Objava.IdKorisnik.Ime,
                    PrezimeKorisnika = v.Objava.IdKorisnik.Prezime,
                    IdKorisnika      = v.IdKorisnika,
                    IdLokacije       = v.Objava.Lokacija.IdMenza
                };

                if (v.Objava.DatumObjave.HasValue)
                {
                    objava.DatumObjave = v.Objava.DatumObjave.Value;
                }

                listaObjava.Add(objava);
            }

            listaObjava.Sort((x, y) => y.DatumObjave.CompareTo(x.DatumObjave));

            ObjavaReadDto o = new ObjavaReadDto()
            {
                TekstObjave      = ko.Objava.TekstObjave,
                ImeKorisnika     = ko.Objava.IdKorisnik.Ime,
                PrezimeKorisnika = ko.Objava.IdKorisnik.Prezime,
                IdKorisnika      = ko.IdKorisnika,
                IdLokacije       = ko.Objava.Lokacija.IdMenza
            };

            if (ko.Objava.DatumObjave.HasValue)
            {
                o.DatumObjave = ko.Objava.DatumObjave.Value;
            }

            listaObjava.Insert(0, o);

            return(listaObjava);
        }
コード例 #3
0
        public static KorisnikStanjeDto PredlogUplate(int idKorisnika)
        {
            ISession          s       = SesijeProvajder.Sesija;
            KorisnikStanjeDto predlog = new KorisnikStanjeDto();

            Korisnik kor = ProvajderPodatakaKorisnika.VratiKorisnika(idKorisnika);

            predlog.BrojDorucka = (kor.Obroci.Count(k => k.Tip.IdTipObroka == 1 && k.DatumUplacivanja.Month <= DateTime.Now.Month && k.DatumUplacivanja.Month >= DateTime.Now.AddMonths(-3).Month) / 3);
            predlog.BrojRuckova = (kor.Obroci.Count(k => k.Tip.IdTipObroka == 2 && k.DatumUplacivanja.Month <= DateTime.Now.Month && k.DatumUplacivanja.Month >= DateTime.Now.AddMonths(-3).Month) / 3);
            predlog.BrojVecera  = (kor.Obroci.Count(k => k.Tip.IdTipObroka == 3 && k.DatumUplacivanja.Month <= DateTime.Now.Month && k.DatumUplacivanja.Month >= DateTime.Now.AddMonths(-3).Month) / 3);

            if (predlog != null)
            {
                return(predlog);
            }
            return(null);
        }
コード例 #4
0
        public static bool UplatiObrok(int id, int brojObroka, int tipObroka)
        {
            ISession s = SesijeProvajder.Sesija;

            if (brojObroka == 0)
            {
                return(false);
            }

            Korisnik k = ProvajderPodatakaKorisnika.VratiKorisnika(id);

            if (k == null)
            {
                return(false);
            }

            if (k.TipNaloga.IdTip != 5)
            {
                return(false);
            }

            for (int i = 0; i < brojObroka; i++)
            {
                Obrok o = new Obrok()
                {
                    Iskoriscen        = false,
                    DatumUplacivanja  = DateTime.Now,
                    DatumIskoriscenja = null,
                    Uplatilac         = k,
                    Tip = ProvajderPodatakaTipovaObroka.VratiTipObroka(tipObroka),
                    LokacijaIskoriscenja = null,
                    LokacijaUplate       = ProvajderPodatakaMenzi.VratiMenzu(4)
                };

                k.Obroci.Add(o);
            }

            s.Save(k);
            s.Flush();
            return(true);
        }
コード例 #5
0
        public static ObjavaCUDto Objavi(int id, ObjavaCUDto ocudto)
        {
            ISession s  = SesijeProvajder.Sesija;
            Korisnik ko = ProvajderPodatakaKorisnika.VratiKorisnika(id);

            if (ko == null)
            {
                return(null);
            }

            if (ko.TipNaloga.IdTip != 5)
            {
                return(null);
            }

            Objava o;

            if (ko.Objava != null)
            {
                o = ko.Objava;
            }
            else
            {
                o = NapraviObjavu(ko);
            }

            List <Menza> menze = s.Query <Menza>().Select(k => k).ToList();
            Menza        m     = menze.Find(x => x.IdMenza == ocudto.IdLokacije);

            o.TekstObjave = ocudto.TekstObjave;
            o.Lokacija    = m;
            o.DatumObjave = DateTime.Now;


            s.Save(o);
            s.Flush();

            return(ocudto);
        }