public static PozivanjaFullDto NoviPoziv(PozivanjaFullDto pfdto, string sid) { ISession s = SesijeProvajder.Sesija; Korisnik pozivalac = VratiKorisnika(KorisnikIDizSesijaID(sid)); if (pozivalac == null) { return(null); } if (pozivalac.TipNaloga.IdTip != 5) { return(null); } if (pfdto.DatumPoziva == DateTime.MinValue) { return(null); } if (pfdto.VaziDo == DateTime.MinValue) { return(null); } Pozivanje poziv = new Pozivanje() { DatumPoziva = pfdto.DatumPoziva, VaziDo = pfdto.VaziDo, Pozivaoc = pozivalac }; pozivalac.Pozivi.Add(poziv); s.Save(poziv); s.Save(pozivalac); s.Flush(); List <Pozivanje> p = s.Query <Pozivanje>().Select(x => x).ToList(); if (p.Count == 0) { return(null); } Pozivanje po = p.Find(x => x.Pozivaoc.IdKorisnika == pozivalac.IdKorisnika && x.DatumPoziva == poziv.DatumPoziva); if (po == null) { return(null); } pfdto.IdPoziva = po.IdPoziva; pfdto.IdPozivaoca = po.Pozivaoc.IdKorisnika; return(pfdto); }
public static PozivanjaFullDto Poziv(int idPoziva, string sid) { ISession s = SesijeProvajder.Sesija; Pozivanje p = s.Get <Pozivanje>(idPoziva); if (p.VaziDo < DateTime.Now) { return(null); } PozivanjaFullDto rezultat = new PozivanjaFullDto() { IdPoziva = p.IdPoziva, DatumPoziva = p.DatumPoziva, VaziDo = p.VaziDo, IdPozivaoca = p.Pozivaoc.IdKorisnika }; foreach (var v in p.Pozvani.ToList()) { rezultat.Pozvani.Add(v.IdPozivanjaPozvani.IdPozvanog.IdKorisnika); } return(rezultat); }
private void ObnoviPoziv() { try { poziv = Api.Api.VratiPoslednjiPoziv(); } catch (Exception ex) { Toast.MakeText(this.Context, ex.Message, ToastLength.Long).Show(); } }
private void NapuniPoziv() { poziv = new PozivanjaFullDto(); poziv.DatumPoziva = DateTime.Now; //poziv.VaziDo = DateTime.Now; poziv.VaziDo = new DateTime(DateTime.Now.Year, DateTime.Now.Day, DateTime.Now.Month, holder.EvenTimePicker.CurrentHour.IntValue(), holder.EvenTimePicker.CurrentMinute.IntValue(), 0); poziv.IdPozivaoca = MSettings.CurrentSession.LoggedUser.UserID; }
public static void InviteUser(PozivanjaFullDto m) { RestRequest request = new RestRequest(Method.PUT); request.Resource = "korisnici/pozovi"; request.AddObject(m); var response = Execute(request); if (!(response.HttpStatusCode == HttpStatusCode.OK || response.HttpStatusCode == HttpStatusCode.Redirect)) { throw new Exception("InviteUser Error" + "\nServerResponse: " + response.ErrorResponse + "\nHttpStatus: " + response.HttpStatusCode); } }
public static PozivanjaFullDto KreirajPrazanPoziv(PozivanjaFullDto m) { RestRequest request = new RestRequest(Method.POST); request.Resource = "korisnici/pozivi/kreiraj"; request.AddObject(m); ApiResponse <PozivanjaFullDto> response = Execute <PozivanjaFullDto>(request); if (!(response.HttpStatusCode == HttpStatusCode.OK || response.HttpStatusCode == HttpStatusCode.Redirect)) { throw new Exception("Respond2InviteError" + "\nServerResponse: " + response.ErrorResponse + "\nHttpStatus: " + response.HttpStatusCode); } return(response.ResponseObject); }
private void PonistiPozivClick(object sender, EventArgs eventArgs) { var alert = new AlertDialog.Builder(this.Context); alert.SetTitle("Ponisti poziv?"); alert.SetMessage("Da li ste sigurni da zelite da ponistite poziv?"); alert.SetPositiveButton("Da", (o, args) => { this.poziv = null; view.FindViewById <RelativeLayout>(Resource.Id.pozivJeKreiran).Visibility = ViewStates.Gone; view.FindViewById <LinearLayout>(Resource.Id.pozivNijeKreiran).Visibility = ViewStates.Visible; }); alert.SetNegativeButton("Ne", (o, args) => alert.Dispose()); alert.Show(); }
public static PozivanjaFullDto PoslednjiPoziv(string sid) { ISession s = SesijeProvajder.Sesija; Korisnik k = VratiKorisnika(KorisnikIDizSesijaID(sid)); if (k == null) { return(null); } if (k.TipNaloga.IdTip != 5) { return(null); } List <Pozivanje> lista = k.Pozivi.ToList(); PozivanjaFullDto p = new PozivanjaFullDto(); if (lista.Count == 0) { p.IdPoziva = -1; p.DatumPoziva = DateTime.MinValue; p.VaziDo = DateTime.MinValue; } else { lista.Sort((x, y) => x.DatumPoziva.CompareTo(y.DatumPoziva)); p.IdPoziva = lista[lista.Count - 1].IdPoziva; p.DatumPoziva = lista[lista.Count - 1].DatumPoziva; p.VaziDo = lista[lista.Count - 1].VaziDo; foreach (var v in lista[lista.Count - 1].Pozvani.ToList()) { p.Pozvani.Add(v.IdPozivanjaPozvani.IdPozvanog.IdKorisnika); } } return(p); }
private void KreirajPozivOnClick(object sender, EventArgs eventArgs) { NapuniPoziv(); if ((poziv.VaziDo - DateTime.Now).Ticks > 0 && ValidnoVreme(poziv.VaziDo)) { try { poziv = Api.Api.KreirajPrazanPoziv(poziv); //setuje novi layout SetujNoviLayout(); } catch (Exception ex) { Toast.MakeText(this.Context, ex.Message, ToastLength.Long); } } else { Toast.MakeText(this.Context, "Nije validno vreme poziva!", ToastLength.Long).Show(); } }
public static PozivanjaFullDto Pozovi(PozivanjaFullDto pfdto, string sid) { ISession s = SesijeProvajder.Sesija; Korisnik pozivalac = VratiKorisnika(ProvajderPodatakaKorisnika.KorisnikIDizSesijaID(sid)); if (pozivalac == null) { return(null); } List <Korisnik> pozvani = new List <Korisnik>(); Pozivanje poziv = new Pozivanje() { DatumPoziva = pfdto.DatumPoziva, VaziDo = pfdto.VaziDo, Pozivaoc = pozivalac }; for (int i = 0; i < pfdto.Pozvani.Count; i++) { Korisnik k = VratiKorisnika(pfdto.Pozvani[i]); if (k != null) { pozvani.Add(k); } } foreach (var v in pozvani) { PozivanjaPozvani pp = new PozivanjaPozvani() { IdPozivanjaPozvani = { IdPoziva = poziv, IdPozvanog = v }, OdgovorPozvanog = false }; v.PozivanjaOd.Add(pp); } pozivalac.Pozivi.Add(poziv); //prebaciti izmedju prethodnih foreach petlji s.Save(poziv); s.Save(pozivalac); foreach (var v in pozvani) { s.Save(v); } s.Flush(); List <Pozivanje> p = s.Query <Pozivanje>().Select(x => x).ToList(); if (p.Count == 0) { return(null); } Pozivanje po = p.Find(x => x.Pozivaoc.IdKorisnika == pozivalac.IdKorisnika && x.DatumPoziva == poziv.DatumPoziva); if (po == null) { return(null); } pfdto.IdPoziva = po.IdPoziva; return(pfdto); }