Пример #1
0
        private void PošaljiObavijest(Let let, Sjedalo sjedalo)
        {
            SmtpClient client = new SmtpClient("smtp.gmail.com", 25);

            client.UseDefaultCredentials = false;
            NetworkCredential cred = new NetworkCredential("*****@*****.**", "sj6IWP3o");

            MailMessage Msg = new MailMessage();

            Msg.From = new MailAddress("*****@*****.**");

            Msg.To.Add($"{RepozitorijSkyFlyReservation.prijavljeniKorisnik.EmailKorisnika}");

            Msg.Subject = "Potvrda rezervacije karte";

            Msg.Body = $"Poštovani {RepozitorijSkyFlyReservation.prijavljeniKorisnik.ImeKorisnika} {RepozitorijSkyFlyReservation.prijavljeniKorisnik.PrezimeKorisnika},\n\n" +
                       $"Vaša rezervacija za sjedalo {sjedalo.OznakaSjedala} na letu {let.BrojLeta} | {let.PolazisniAerodrom.NazivAerodroma}->{let.OdredisniAerodrom.NazivAerodroma} je zabilježena u sustav.\n" +
                       "Molimo Vas da rezervaciju platite najkasnije 3 dana prije polaska.\n" +
                       "Uplatu možete izvršiti putem aplikacije ili putem uplatnice.\n\n" +
                       "Podaci za plaćanje putem uplatnice ili internet bankarstva:\n" +
                       $"Primatelj: {let.AvionNaLetu.Aviokompanija.NazivAviokompanije}\n" +
                       $"           {let.AvionNaLetu.Aviokompanija.AdresaAviokompanije}\n" +
                       $"      OIB: {let.AvionNaLetu.Aviokompanija.OIBAviokompanije}\n" +
                       $"IBAN ili broj računa primatelja: {let.AvionNaLetu.Aviokompanija.IBANAviokompanije}\n" +
                       $"Opis plaćanja: Plaćanje rezervacije za sjedalo {sjedalo.OznakaSjedala} na letu {let.BrojLeta} | {let.PolazisniAerodrom.NazivAerodroma}->{let.OdredisniAerodrom.NazivAerodroma}.\n\n" +
                       "S poštovanjem,\n" +
                       "SkyFlyReservation";

            client.Credentials = cred;

            client.EnableSsl = true;

            client.Send(Msg);
        }
Пример #2
0
        private async void FrmSjedalaDetalji_Load(object sender, EventArgs e)
        {
            await LoadSektori();

            if (_id.HasValue)
            {
                Sjedalo r = await _apiService.GetById <Sjedalo>(_id);

                txtOznaka.Text          = r.Oznaka;
                cbSektori.SelectedValue = int.Parse(r.SektorID.ToString());
                cbxStatus.Checked       = r.Status;
            }
        }
Пример #3
0
        private void rezervirajSjedaloButton_Click(object sender, EventArgs e)
        {
            if ((selektiraniLet.DatumPolaska.Date.Day - DateTime.Now.Date.Day) < 3 && (selektiraniLet.DatumDolaska.Date.Month == DateTime.Now.Date.Month))
            {
                MessageBox.Show($"Rok za rezervaciju karata za let {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma} je istekao.");
                return;
            }
            if (odabranoSjedalo == null)
            {
                MessageBox.Show("Niste odabrali sjedalo za koje želite rezervirati kartu.");
                return;
            }
            if (odabranoSjedalo.BackColor == Color.Red)
            {
                MessageBox.Show($"Sjedalo {odabranoSjedalo.Name} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma} je zauzeto.");
                return;
            }
            else
            {
                Sjedalo sjedalo = RepozitorijSkyFlyReservation.DohvatiSjedalo(odabranoSjedalo.Name);

                Rezervacija rezervacija = new Rezervacija()
                {
                    LetRezervacije          = selektiraniLet,
                    KorisnikRezervacije     = RepozitorijSkyFlyReservation.prijavljeniKorisnik,
                    RezerviranoSjedalo      = sjedalo,
                    DatumVrijemeRezervacije = DateTime.Now
                };

                int numAffectedRowsInsert = RepozitorijSkyFlyReservation.DodajRezervacijuKarte(rezervacija);
                int numAffectedRowsUpdate = RepozitorijSkyFlyReservation.AzurirajBrojSlobodnihMjesta(selektiraniLet);

                if (numAffectedRowsInsert > 0 && numAffectedRowsUpdate > 0)
                {
                    MessageBox.Show($"Uspješno ste rezervirali sjedalo {sjedalo.OznakaSjedala} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma}.\n\nNa Vašu e-mail adresu poslani su podaci za plaćanje.");
                    PošaljiObavijest(selektiraniLet, sjedalo);
                    OsvjeziSjedalaUAvionu(RepozitorijSkyFlyReservation.DohvatiRezerviranaSjedala(selektiraniLet));
                }
                else
                {
                    MessageBox.Show("Dogodila se pogreška kod rezervacije sjedala.Rezervacija nije evidentirana.");
                    this.Close();
                    return;
                }
            }
        }
        public override Ulaznica Update(int id, UlazniceInsertRequest req)
        {
            Korisnici k        = _context.Korisnici.FirstOrDefault(s => s.KorisnikID == req.KorisnikID);
            Korisnik  korisnik = _mapper.Map <Korisnik>(k);
            Sjedalo   a        = _mapper.Map <Sjedalo>(_context.Sjedala.FirstOrDefault(s => s.SjedaloID == req.SjedaloID));
            Utakmica  u        = _mapper.Map <Utakmica>(_context.Utakmice.FirstOrDefault(s => s.UtakmicaID == req.UtakmicaID));
            string    number   = "Ime i prezime: " + korisnik.KorisnikPodaci + "---Utakmica: " + u.UtakmicaPodaci + "----Sjedalo/Sektor: " + a.Oznaka + "/" + a.Sektor + "---Datum kupnje: " + req.DatumKupnje.ToString() + "---Vrijeme kupnje:" + req.VrijemeKupnje.ToString() + "---Cijena(€):" + req.cijena.ToString() + "$" + GetVoucherNumber(8);

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(number, QRCodeGenerator.ECCLevel.Q);
            QRCode          qrCode      = new QRCode(qrCodeData);

            Bitmap qrCodeImage = qrCode.GetGraphic(20);
            var    bitmapBytes = BitmapToBytes(qrCodeImage);

            req.barcodeimg = bitmapBytes;

            return(base.Update(id, req));
        }
        private async void FrmUlazniceDetalji_Load(object sender, EventArgs e)
        {
            await LoadUtakmica();
            await LoadKorisnici();

            if (_id.HasValue)
            {
                Ulaznica a = await _apiService.GetById <Ulaznica>(_id);

                Sjedalo sjedalo = await _apiServiceSjedala.GetById <Sjedalo>(a.SjedaloID);

                cbUtakmica.SelectedValue = int.Parse(a.UtakmicaID.ToString());
                cbSektor.SelectedValue   = int.Parse(sjedalo.SektorID.ToString());
                cbKorisnik.SelectedValue = int.Parse(a.KorisnikID.ToString());
                cbSjedala.SelectedValue  = int.Parse(a.SjedaloID.ToString());
                dtpDatum.Value           = a.DatumKupnje;
                dtpVrijeme.Value         = a.VrijemeKupnje;
            }
        }
Пример #6
0
        private void kupiKartuButton_Click(object sender, EventArgs e)
        {
            if (odabranoSjedalo == null)
            {
                MessageBox.Show("Niste odabrali sjedalo za koje želite kupiti kartu.");
                return;
            }

            if (odabranoSjedalo.BackColor == Color.Red)
            {
                MessageBox.Show($"Sjedalo {odabranoSjedalo.Name} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma} je zauzeto.");
                return;
            }
            else
            {
                Sjedalo sjedalo = RepozitorijSkyFlyReservation.DohvatiSjedalo(odabranoSjedalo.Name);

                FormPlatiKartu form = new FormPlatiKartu(selektiraniLet, sjedalo);
                form.ShowDialog();

                OsvjeziSjedalaUAvionu(RepozitorijSkyFlyReservation.DohvatiRezerviranaSjedala(selektiraniLet));
            }
        }
 public FormPlatiKartu(Let let, Sjedalo sjedalo)
 {
     selektiranoSjedalo = sjedalo;
     selektiraniLet     = let;
     InitializeComponent();
 }
        private void PošaljiKartu(Let let, Sjedalo sjedalo)
        {
            string rezervacijaId = RepozitorijSkyFlyReservation.DohvatiIdRezervacije(let, sjedalo).ToString();

            MemoryStream strmQR  = new MemoryStream();
            MemoryStream strmTem = new MemoryStream();

            Zen.Barcode.CodeQrBarcodeDraw barcode = Zen.Barcode.BarcodeDrawFactory.CodeQr;
            System.Drawing.Image          QRCode  = barcode.Draw(rezervacijaId, 50);
            QRCode.Save(strmQR, System.Drawing.Imaging.ImageFormat.Png);

            XImage QRImage = XImage.FromStream(strmQR);

            string putanja = AppDomain.CurrentDomain.BaseDirectory.Replace("\\bin\\Debug", "");

            Image template = Image.FromFile(putanja + "\\BoardingPass\\BoardingPassTemplate.png");

            template.Save(strmTem, System.Drawing.Imaging.ImageFormat.Png);

            XImage Template = XImage.FromStream(strmTem);

            PdfDocument pdf     = new PdfDocument();
            PdfPage     pdfPage = pdf.AddPage();
            XGraphics   graph   = XGraphics.FromPdfPage(pdfPage);

            graph.DrawImage(Template, 5, 5, 585, 225);
            graph.DrawImage(QRImage, 345, 50, 75, 75);

            XFont font = new XFont("Verdana", 8, XFontStyle.Bold);

            graph.DrawString($"{RepozitorijSkyFlyReservation.prijavljeniKorisnik.ImeKorisnika} {RepozitorijSkyFlyReservation.prijavljeniKorisnik.PrezimeKorisnika}", font, XBrushes.Black, new XRect(25, 72, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.PolazisniAerodrom.NazivAerodroma}", font, XBrushes.Black, new XRect(25, 110, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.OdredisniAerodrom.NazivAerodroma}", font, XBrushes.Black, new XRect(25, 150, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.AvionNaLetu.Aviokompanija.NazivAviokompanije}", font, XBrushes.Black, new XRect(182, 110, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.Date.ToString("dd. MMMM")}", font, XBrushes.Black, new XRect(182, 150, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.ToString("HH:mm")}", font, XBrushes.Black, new XRect(282, 150, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);

            graph.DrawString($"{RepozitorijSkyFlyReservation.prijavljeniKorisnik.ImeKorisnika} {RepozitorijSkyFlyReservation.prijavljeniKorisnik.PrezimeKorisnika}", font, XBrushes.Black, new XRect(448, 72, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.PolazisniAerodrom.NazivAerodroma}", font, XBrushes.Black, new XRect(448, 97, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.OdredisniAerodrom.NazivAerodroma}", font, XBrushes.Black, new XRect(448, 125, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.Date.ToString("dd.MM")}", font, XBrushes.Black, new XRect(448, 152, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.ToString("HH:mm")}", font, XBrushes.Black, new XRect(495, 152, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);

            graph.DrawString($"{let.BrojLeta}", font, XBrushes.Black, new XRect(25, 190, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{sjedalo.OznakaSjedala}", font, XBrushes.Black, new XRect(104, 190, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.Add(new TimeSpan(0, -45, 0)).ToString("HH:mm")}", font, XBrushes.Black, new XRect(282, 190, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{sjedalo.OznakaSjedala}", font, XBrushes.Black, new XRect(448, 182, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);
            graph.DrawString($"{let.DatumPolaska.Add(new TimeSpan(0, -45, 0)).ToString("HH:mm")}", font, XBrushes.Black, new XRect(495, 182, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft);

            pdf.Save(putanja + "\\BoardingPass\\karta.pdf");
            pdf.Dispose();

            SmtpClient client = new SmtpClient("smtp.gmail.com", 25);

            client.UseDefaultCredentials = false;
            NetworkCredential cred = new NetworkCredential("*****@*****.**", "sj6IWP3o");

            MailMessage Msg = new MailMessage();

            Msg.From = new MailAddress("*****@*****.**");

            Msg.To.Add($"{RepozitorijSkyFlyReservation.prijavljeniKorisnik.EmailKorisnika}");

            Msg.Subject = "Potvrda kupnje karte";

            Msg.Body = $"Poštovani {RepozitorijSkyFlyReservation.prijavljeniKorisnik.ImeKorisnika} {RepozitorijSkyFlyReservation.prijavljeniKorisnik.PrezimeKorisnika},\n\n" +
                       $"Na osnovu provedene kupnje karte za sjedalo {sjedalo.OznakaSjedala} na letu {let.BrojLeta} | {let.PolazisniAerodrom.NazivAerodroma}->{let.OdredisniAerodrom.NazivAerodroma} šaljemo Vam kartu za let.\n" +
                       "Karta se nalazi u pdf-u koji ste primili u ovoj poruci.\n" +
                       "Kartu koju ste primili koristite prilikom prijave na aerodromu.\n" +
                       "Molimo Vas da provjeru karte izvršite najkasnije 45 min prije polaska.\n\n" +
                       "S poštovanjem,\n" +
                       "SkyFlyReservation";

            Msg.Attachments.Add(new Attachment(putanja + "\\BoardingPass\\karta.pdf"));

            client.Credentials = cred;

            client.EnableSsl = true;

            client.Send(Msg);
            client.Dispose();
        }
        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);
            }
        }