public Model.Ulaznice Update(int id, UlazniceInsertRequest request) { var entity = _context.Ulaznice.Find(id); _context.Ulaznice.Attach(entity); _context.Ulaznice.Update(entity); _mapper.Map(request, entity); _context.SaveChanges(); return(_mapper.Map <Model.Ulaznice>(entity)); }
public Ulaznice Insert(UlazniceInsertRequest request, string baseUrl) { var entity = _mapper.Map <Database.Ulaznice>(request); _context.Add(entity); _context.SaveChanges(); QRCodeGenerator qr = new QRCodeGenerator(); QRCodeData data = qr.CreateQrCode(baseUrl + "api/Ulaznice/Provjera/" + entity.UlaznicaID, QRCodeGenerator.ECCLevel.Q); QRCode code = new QRCode(data); Bitmap qrCodeImage = code.GetGraphic(10); var bitmapBytes = BitmapToBytes(qrCodeImage); entity.BarCodeIMG = bitmapBytes; _context.SaveChanges(); return(_mapper.Map <Model.Ulaznice>(entity)); }
public Model.Ulaznice Update(int id, [FromBody] UlazniceInsertRequest request) { return(_service.Update(id, request)); }
public Ulaznice Insert(UlazniceInsertRequest request) { var baseUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}"; return(_service.Insert(request, baseUrl)); }
private async void BtnSacuvaj_Click(object sender, EventArgs e) { if (this.ValidateChildren()) { int prosloSjedalo = -1; int proslaUtakmica = -1; int prosliKorisnik = -1; if (_id.HasValue) { Ulaznica u = await _apiService.GetById <Ulaznica>(_id); prosloSjedalo = u.SjedaloID; proslaUtakmica = u.UtakmicaID; prosliKorisnik = u.KorisnikID; } Korisnik k = await _apiServiceKorisnici.GetById <Korisnik>(int.Parse(cbKorisnik.SelectedValue.ToString())); var req = new UlazniceInsertRequest() { DatumKupnje = dtpDatum.Value.Date + dtpVrijeme.Value.TimeOfDay, VrijemeKupnje = dtpDatum.Value.Date + dtpVrijeme.Value.TimeOfDay, KorisnikID = int.Parse(cbKorisnik.SelectedValue.ToString()), SjedaloID = int.Parse(cbSjedala.SelectedValue.ToString()), UtakmicaID = int.Parse(cbUtakmica.SelectedValue.ToString()) }; Sjedalo s1 = await _apiServiceSjedala.GetById <Sjedalo>(req.SjedaloID); s1.Status = true; SjedalaInsertRequest r1 = new SjedalaInsertRequest() { Oznaka = s1.Oznaka, SektorID = s1.SektorID, Status = s1.Status }; Sjedalo s2 = null; SjedalaInsertRequest r2 = null; if (prosloSjedalo != -1) { s2 = await _apiServiceSjedala.GetById <Sjedalo>(prosloSjedalo); s2.Status = false; r2 = new SjedalaInsertRequest(); r2.Oznaka = s2.Oznaka; r2.SektorID = s2.SektorID; r2.Status = s2.Status; } if (_id.HasValue) { int i = (int)_id; await _apiService.Update <dynamic>(i, req); await _apiServiceSjedala.Update <dynamic>(s1.SjedaloID, r1); if (prosloSjedalo != -1) { await _apiServiceSjedala.Update <dynamic>(s2.SjedaloID, r2); } } else { await _apiService.Insert <dynamic>(req); await _apiServiceSjedala.Update <dynamic>(s1.SjedaloID, r1); } //spremanje u preporuke //update if (proslaUtakmica != -1 || prosliKorisnik != -1) { Utakmica proslaU = await _apiServiceUtakmica.GetById <Utakmica>(proslaUtakmica); List <Preporuka> preporuke = await _apiServicePreporuke.Get <List <Preporuka> >(new PreporukaSearchRequest() { KorisnikID = prosliKorisnik, PrviTimID = proslaU.DomaciTimID, DrugiTimID = proslaU.GostujuciTimID }); foreach (var p in preporuke) { p.BrojKupljenihUlaznica--; await _apiServicePreporuke.Update <Preporuka>(p.PreporukaID, new PreporukaInsertRequest() { BrojKupljenihUlaznica = p.BrojKupljenihUlaznica, KorisnikID = p.KorisnikID, TimID = p.TimID }); } } //insert Utakmica utakmica = await _apiServiceUtakmica.GetById <Utakmica>(req.UtakmicaID); var prviTim = utakmica.DomaciTimID; var drugiTim = utakmica.GostujuciTimID; List <Preporuka> rezultat = await _apiServicePreporuke.Get <List <Preporuka> >(new PreporukaSearchRequest() { KorisnikID = k.KorisnikID, PrviTimID = prviTim, DrugiTimID = drugiTim }); if (rezultat.Count == 1) { rezultat[0].BrojKupljenihUlaznica++; PreporukaInsertRequest reqP = null; if (rezultat[0].TimID == prviTim) { reqP = new PreporukaInsertRequest { TimID = drugiTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; } else { reqP = new PreporukaInsertRequest { TimID = prviTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; } PreporukaInsertRequest reqPU = new PreporukaInsertRequest { TimID = rezultat[0].TimID, KorisnikID = rezultat[0].KorisnikID, BrojKupljenihUlaznica = rezultat[0].BrojKupljenihUlaznica }; await _apiServicePreporuke.Insert <Preporuka>(reqP); await _apiServicePreporuke.Update <Preporuka>(rezultat[0].PreporukaID, reqPU); } else if (rezultat.Count == 2) { PreporukaInsertRequest req1 = new PreporukaInsertRequest { TimID = rezultat[0].TimID, BrojKupljenihUlaznica = ++rezultat[0].BrojKupljenihUlaznica, KorisnikID = rezultat[0].KorisnikID }; PreporukaInsertRequest req2 = new PreporukaInsertRequest { TimID = rezultat[1].TimID, BrojKupljenihUlaznica = ++rezultat[1].BrojKupljenihUlaznica, KorisnikID = rezultat[1].KorisnikID }; await _apiServicePreporuke.Update <Preporuka>(rezultat[0].PreporukaID, req1); await _apiServicePreporuke.Update <Preporuka>(rezultat[1].PreporukaID, req2); } else//ako je 0 { PreporukaInsertRequest req1 = new PreporukaInsertRequest { TimID = prviTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; PreporukaInsertRequest req2 = new PreporukaInsertRequest { TimID = drugiTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; await _apiServicePreporuke.Insert <Preporuka>(req1); await _apiServicePreporuke.Insert <Preporuka>(req2); } MessageBox.Show("Operacija uspjela"); this.Close(); } else { MessageBox.Show("Operacija nije uspjela!"); this.Close(); } }
public async Task Init() { IsBusy = true; List <Sjedalo> list = await _apiServiceSjedala.Get <List <Sjedalo> >(new SjedalaSearchRequest() { Oznaka = Oznaka, SektorID = Sektor.SektorID }); Sjedalo = list[0]; Korisnik k = await _apiServiceKorisnici.GetById <Korisnik>(Korisnik.KorisnikID); UlazniceInsertRequest req = new UlazniceInsertRequest() { DatumKupnje = DatumKupnje, VrijemeKupnje = VrijemeKupnje, KorisnikID = Korisnik.KorisnikID, SjedaloID = Sjedalo.SjedaloID, UtakmicaID = Utakmica.UtakmicaID, cijena = Iznos }; Sjedalo s1 = await _apiServiceSjedala.GetById <Sjedalo>(req.SjedaloID); s1.Status = true; SjedalaInsertRequest req2 = new SjedalaInsertRequest() { Oznaka = s1.Oznaka, SektorID = s1.SektorID, Status = s1.Status }; Ulaznica u; try { u = await _apiServiceUlaznice.Insert <Ulaznica>(req); await _apiServiceSjedala.Update <dynamic>(req.SjedaloID, req2); Barcode = u.barcodeimg; } catch (Exception) { throw; } //SPREMANJE UPLATA UplateInsertRequest requestUplate = new UplateInsertRequest() { Iznos = Iznos, UlaznicaID = u.UlaznicaID }; try { await _apiServiceUplate.Insert <Uplata>(requestUplate); } catch (Exception) { throw; } //SPREMANJE PREPORUKA Utakmica utakmica = await _apiServiceUtakmica.GetById <Utakmica>(req.UtakmicaID); var prviTim = utakmica.DomaciTimID; var drugiTim = utakmica.GostujuciTimID; List <Preporuka> rezultat = await _apiServicePreporuke.Get <List <Preporuka> >(new PreporukaSearchRequest() { KorisnikID = k.KorisnikID, PrviTimID = prviTim, DrugiTimID = drugiTim }); if (rezultat.Count == 1) { rezultat[0].BrojKupljenihUlaznica++; PreporukaInsertRequest reqP; if (rezultat[0].TimID == prviTim) { reqP = new PreporukaInsertRequest { TimID = drugiTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; } else { reqP = new PreporukaInsertRequest { TimID = prviTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; } PreporukaInsertRequest reqPU = new PreporukaInsertRequest { TimID = rezultat[0].TimID, KorisnikID = rezultat[0].KorisnikID, BrojKupljenihUlaznica = rezultat[0].BrojKupljenihUlaznica }; await _apiServicePreporuke.Insert <Preporuka>(reqP); await _apiServicePreporuke.Update <Preporuka>(rezultat[0].PreporukaID, reqPU); } else if (rezultat.Count == 2) { PreporukaInsertRequest req1 = new PreporukaInsertRequest { TimID = rezultat[0].TimID, BrojKupljenihUlaznica = ++rezultat[0].BrojKupljenihUlaznica, KorisnikID = rezultat[0].KorisnikID }; PreporukaInsertRequest req3 = new PreporukaInsertRequest { TimID = rezultat[1].TimID, BrojKupljenihUlaznica = ++rezultat[1].BrojKupljenihUlaznica, KorisnikID = rezultat[1].KorisnikID }; await _apiServicePreporuke.Update <Preporuka>(rezultat[0].PreporukaID, req1); await _apiServicePreporuke.Update <Preporuka>(rezultat[1].PreporukaID, req3); } else//ako je 0 { PreporukaInsertRequest req1 = new PreporukaInsertRequest { TimID = prviTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; PreporukaInsertRequest req3 = new PreporukaInsertRequest { TimID = drugiTim, BrojKupljenihUlaznica = 1, KorisnikID = k.KorisnikID }; await _apiServicePreporuke.Insert <Preporuka>(req1); await _apiServicePreporuke.Insert <Preporuka>(req3); } }