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); }
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); }
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); }
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); }
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); }