コード例 #1
0
        public ActionResult Prihvati(int ZahtjevZaPrevozId)
        {
            ZahtjevZaPrevoz zzp = mc.ZahtjeviZaPrevoze.FirstOrDefault(x => x.Id == ZahtjevZaPrevozId);

            zzp.Status = ACCEPTED;
            Prevoz p = mc.Prevozi.FirstOrDefault(x => x.Id == zzp.PrevozId);

            p.BrojZauzetihMjesta++;
            if (p.BrojMjesta == p.BrojZauzetihMjesta)
            {
                p.SlobodnoMjesto = false;
            }
            try
            {
                mc.SaveChanges();
            }
            catch
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }


            messageControler.Posalji(Notification.ODOBREN_ZAHTJEV_ZA_PREVOZ, zzp.Prevoz.KorisnikId, zzp.Prevoz.Korisnik.ImePrezime, zzp.Prevoz.Korisnik.photoUrl, zzp.KorisnikId);
            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
コード例 #2
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,KompanijaId,TipPrevozaId,Opis,Slika")] Prevoz prevoz)
        {
            if (id != prevoz.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(prevoz);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PrevozExists(prevoz.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KompanijaId"]  = new SelectList(_context.Kompanija, "Id", "Naziv", prevoz.KompanijaId);
            ViewData["TipPrevozaId"] = new SelectList(_context.TipPrevoza, "Id", "Naziv", prevoz.TipPrevozaId);
            return(View(prevoz));
        }
コード例 #3
0
        public async Task <IActionResult> Edit(Guid id, [Bind("VrstaPrevoza,Cena,Id")] Prevoz prevoz)
        {
            if (id != prevoz.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(prevoz);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PrevozExists(prevoz.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(prevoz));
        }
コード例 #4
0
        // GET: ZahtjevZaPrevoz
        public ActionResult Posalji(ZahtjevZaPrevozVM zahtjev)
        {
            ZahtjevZaPrevoz zzp = new ZahtjevZaPrevoz();

            mc.ZahtjeviZaPrevoze.Add(zzp);
            zzp.DatumKreiranja = DateTime.Now;
            zzp.KorisnikId     = zahtjev.KorisnikId;
            zzp.Kolicina       = zahtjev.Kolicina;
            zzp.PrevozId       = zahtjev.PrevozId;
            zzp.Status         = PENDING;


            try {
                mc.SaveChanges();
            } catch {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }


            Korisnik k = mc.Korisnici.FirstOrDefault(x => x.Id == zahtjev.KorisnikId);
            Prevoz   p = mc.Prevozi.FirstOrDefault(x => x.Id == zahtjev.PrevozId);

            messageControler.Posalji(Notification.ZAHTJEV_ZA_PREVOZ, k.Id, k.ImePrezime, k.photoUrl, p.KorisnikId);
            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
コード例 #5
0
        public IActionResult Snimi(PrevozDodajUrediVM model)
        {
            if (!ModelState.IsValid)
            {
                model.Firma = _db.Firma.Select(x => new SelectListItem
                {
                    Value = x.Id.ToString(),
                    Text  = x.Naziv
                }).ToList();
                return(View("Dodaj", model));
            }
            Prevoz prevoz;

            if (model.Id != 0)
            {
                prevoz = _db.Prevoz.Find(model.Id);
            }
            else
            {
                prevoz = new Prevoz();
                _db.Prevoz.Add(prevoz);
            }


            prevoz.FirmaID        = model.FirmaID;
            prevoz.TipPrevoza     = model.TipPrevoza;
            prevoz.BrojMjesta     = model.BrojMjesta;
            prevoz.CijenaPoMjestu = model.CijenaPoMjestu;

            _db.SaveChanges();

            return(RedirectToAction("Index"));
        }
コード例 #6
0
        public int dodajPrevoz(Prevoz p)
        {
            try
            {
                String query            = "insert into PrevozAzure(id,ime,vrstaPrevoza,maxKapacitet,kapacitet,cijena,idDestinacije) " + "values (@id,@ime,@vrstaPrevoza,@maxKapacitet,@kapacitet,@cijena,@idDestinacije)";
                ConnectionStringAzure s = new ConnectionStringAzure();
                using (SqlConnection con = new SqlConnection(s.konekcija))
                {
                    SqlCommand cmd = con.CreateCommand();
                    cmd.CommandText = query;

                    SqlParameter id = new SqlParameter();
                    id.Value         = p.Id;
                    id.ParameterName = "id";
                    cmd.Parameters.Add(id);

                    SqlParameter ime = new SqlParameter();
                    ime.Value         = p.Ime;
                    ime.ParameterName = "ime";
                    cmd.Parameters.Add(ime);

                    SqlParameter vrstaPrevoza = new SqlParameter();
                    vrstaPrevoza.Value         = p.VrstaPrevoza;
                    vrstaPrevoza.ParameterName = "vrstaPrevoza";
                    cmd.Parameters.Add(vrstaPrevoza);

                    SqlParameter maxKapacitet = new SqlParameter();
                    maxKapacitet.Value         = p.MaximalniKapacitet;
                    maxKapacitet.ParameterName = "maxKapacitet";
                    cmd.Parameters.Add(maxKapacitet);

                    SqlParameter kapacitet = new SqlParameter();
                    kapacitet.Value         = p.Kapacitet;
                    kapacitet.ParameterName = "kapacitet";
                    cmd.Parameters.Add(kapacitet);

                    SqlParameter cijena = new SqlParameter();
                    cijena.Value         = p.CijenaPoOsobi;
                    cijena.ParameterName = "cijena";
                    cmd.Parameters.Add(cijena);

                    SqlParameter idDestinacije = new SqlParameter();
                    idDestinacije.Value         = p.PrevozDestinacija;
                    idDestinacije.ParameterName = "idDestinacije";
                    cmd.Parameters.Add(idDestinacije);

                    con.Open();
                    int r = cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    con.Close();
                    return(r);
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine("Exception PrevozAzure2: " + e.Message);
                return(0);
            }
        }
コード例 #7
0
        public async Task <IActionResult> Create([Bind("VrstaPrevoza,Cena,Id")] Prevoz prevoz)
        {
            if (ModelState.IsValid)
            {
                prevoz.Id = Guid.NewGuid();
                _context.Add(prevoz);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(prevoz));
        }
コード例 #8
0
        public async Task <IActionResult> Create([Bind("Id,KompanijaId,TipPrevozaId,Opis,Slika")] Prevoz prevoz)
        {
            if (ModelState.IsValid)
            {
                _context.Add(prevoz);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KompanijaId"]  = new SelectList(_context.Kompanija, "Id", "Naziv", prevoz.KompanijaId);
            ViewData["TipPrevozaId"] = new SelectList(_context.TipPrevoza, "Id", "Naziv", prevoz.TipPrevozaId);
            return(View(prevoz));
        }
コード例 #9
0
        public ActionResult IzbrisiPrevoz(int Id)
        {
            Prevoz         p = mc.Prevozi.FirstOrDefault(x => x.Id == Id);
            List <Stanice> s = mc.Stanice.Where(x => x.PrevozId == p.Id).ToList();

            mc.Stanice.RemoveRange(s);

            mc.Prevozi.Remove(p);

            try
            {
                mc.SaveChanges();
            }
            catch
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
コード例 #10
0
 public void UcitajPrevoze()
 {
     try
     {
         string query            = "SELECT * FROM PrevozAzure;";
         ConnectionStringAzure s = new ConnectionStringAzure();
         using (SqlConnection c = new SqlConnection(s.konekcija))
         {
             c.Open();
             if (c.State == System.Data.ConnectionState.Open)
             {
                 SqlCommand sc = c.CreateCommand();
                 sc.CommandText = query;
                 SqlDataReader reader = sc.ExecuteReader();
                 while (reader.Read())
                 {
                     VrstaPrevoza vrsta = (VrstaPrevoza)Enum.Parse(typeof(VrstaPrevoza), reader.GetString(6));
                     Prevoz       p     = new Prevoz(reader.GetString(5), vrsta, Convert.ToInt32(reader.GetDouble(7)), Convert.ToInt32(reader.GetDouble(8)), reader.GetDouble(9), reader.GetString(10));
                     Globalna.nasaAgencija.Prevozi.Add(p);
                 }
                 if (Globalna.nasaAgencija.Prevozi.Count == 0)
                 {
                     Globalna.idSvihPrevoza = 0;
                 }
                 else if (Globalna.nasaAgencija.Prevozi.Count != 0)
                 {
                     Globalna.idSvihPrevoza = Globalna.nasaAgencija.Prevozi.Count;
                 }
             }
             c.Close();
         }
     }
     catch (Exception e)
     {
         Debug.WriteLine("Exception PrevozAzure1: " + e.Message);
     }
 }
コード例 #11
0
        public IActionResult Snimi(PrevozDodajUrediVM model)
        {
            Prevoz prevoz;

            if (model.Id != 0)
            {
                prevoz = _db.Prevoz.Find(model.Id);
            }
            else
            {
                prevoz = new Prevoz();
                _db.Prevoz.Add(prevoz);
            }


            prevoz.FirmaID        = model.FirmaID;
            prevoz.TipPrevoza     = model.TipPrevoza;
            prevoz.BrojMjesta     = model.BrojMjesta;
            prevoz.CijenaPoMjestu = model.CijenaPoMjestu;

            _db.SaveChanges();

            return(RedirectToAction("Index"));
        }
コード例 #12
0
        public ActionResult Dodaj(PrevozVM.Info prevoz)
        {
            Prevoz prevozDB = mc.Prevozi.Where(x => x.Id == prevoz.Id).FirstOrDefault();

            if (prevoz.Id == 0)
            {
                prevozDB = new Prevoz();
                mc.Prevozi.Add(prevozDB);
            }
            Korisnik korisnik = mc.Korisnici.Where(x => x.UserId == prevoz.Korisnik.UserId).FirstOrDefault();

            prevozDB.Cijena             = prevoz.Cijena;
            prevozDB.BrojMjesta         = prevoz.BrojMjesta;
            prevozDB.Opis               = prevoz.Opis;
            prevozDB.KorisnikId         = korisnik.Id;
            prevozDB.Aktivno            = true;
            prevozDB.DatumKretanja      = prevoz.DatumKretanja;
            prevozDB.Telefon            = prevoz.Telefon;
            prevozDB.DatumKreiranja     = DateTime.Now;
            prevozDB.SlobodnoMjesto     = true;
            prevozDB.TipPrevoza         = prevoz.TipPrevoza;
            prevozDB.PrevoznoSredstvoId = prevoz.PrevoznoSredstvoId;



            try
            {
                mc.SaveChanges();
            }
            catch {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            if (prevoz.Stanice != null)
            {
                foreach (StanicaVM item in prevoz.Stanice)
                {
                    mc.Stanice.Add(new Stanice {
                        Grad         = item.Grad,
                        PrevozId     = prevozDB.Id,
                        Lng          = item.Lng,
                        Lat          = item.Lat,
                        RednaOdznaka = item.RednaOdznaka
                    });
                }



                try
                {
                    mc.SaveChanges();
                }
                catch
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
            }

            messageControler.PosaljiNaTopic(Notification.NOVI_PREVOZ, korisnik.ImePrezime, korisnik.photoUrl, Notification.PREVOZI_TOPIC);


            return(new HttpStatusCodeResult(HttpStatusCode.OK));
        }
コード例 #13
0
        public void kreirajPutovanje(DateTime datumPolaska, DateTime datumPovratka, int minimalniBrojPutnika, int maximalniBrojPutnika, string opisPutovanja, bool istaknutoPutovanje, int idAgencije, Destinacija infoDestinacije, Hotel infoHotela, Prevoz infoPrevoza, Double cijenaPutovanja)
        {
            Putovanje putovanje = new Putovanje(datumPolaska, datumPovratka, minimalniBrojPutnika, maximalniBrojPutnika, opisPutovanja, istaknutoPutovanje, idAgencije, infoDestinacije, infoHotela, infoPrevoza, cijenaPutovanja);

            Globalna.nasaAgencija.Putovanja.Add(putovanje);
        }
コード例 #14
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            Prevoz prevoz = null;
            string odabranaDestinacija = cDestinacije.SelectedItem.ToString();
            string odabraniHotel       = cHoteli.SelectedItem.ToString();

            if (rAutobus.IsChecked == true)
            {
                foreach (Prevoz p in Globalna.nasaAgencija.Prevozi)
                {
                    if (p.Ime.Equals(autobusi[cPrevoz.SelectedIndex].Substring(0, autobusi[cPrevoz.SelectedIndex].IndexOf(","))) && p.PrevozDestinacija.Equals(odabranaDestinacija))
                    {
                        prevoz = p;
                    }
                }
            }
            else
            {
                prevoz = null;
            }
            Boolean jelOK = validacijaPodataka();

            if (!jelOK)
            {
                var dialog = new MessageDialog("Postoje greške. Popravite pa ponovo kreirajte!");
                dialog.ShowAsync();
            }

            Destinacija novaDestinacija = new Destinacija("random", "random", Kontinent.Evropa);

            if (odabranaDestinacija != ("Ništa od ponuđenog"))
            {
                novaDestinacija = Globalna.nasaAgencija.Destinacije[cDestinacije.SelectedIndex];
            }
            if (odabranaDestinacija.Equals("Ništa od ponuđenog"))
            {
                Kontinent kon = new Kontinent();
                if (cKontinent.SelectedItem.ToString().Equals("Evropa"))
                {
                    kon = Kontinent.Evropa;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Azija"))
                {
                    kon = Kontinent.Azija;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Afrika"))
                {
                    kon = Kontinent.Afrika;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Sjeverna Amerika"))
                {
                    kon = Kontinent.SjevernaAmerika;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Južna Amerika"))
                {
                    kon = Kontinent.JuznaAmerika;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Antartika"))
                {
                    kon = Kontinent.Antartika;
                }
                if (cKontinent.SelectedItem.ToString().Equals("Australija"))
                {
                    kon = Kontinent.Australija;
                }
                novaDestinacija = new Destinacija(tDestinacija.Text, tDrzava.Text, kon, iSlikaDestinacije);
                putovanjeVM.dodajNovuDestinaciju(tDestinacija.Text, tDrzava.Text, kon, iSlikaDestinacije);
                DestinacijaAzure d = new DestinacijaAzure();
                d.dodajDestinaciju(novaDestinacija);
            }
            Hotel noviHotel = Globalna.nasaAgencija.Hoteli[cHoteli.SelectedIndex];

            if (odabraniHotel.Equals("Ništa od ponuđenog"))
            {
                putovanjeVM.dodajNoviHotel(tHotel.Text, 300, Convert.ToInt32(300 - sMax.Value), novaDestinacija, 120, iSlikaHotela);
                noviHotel = new Hotel(tHotel.Text, 500, Convert.ToInt32(500 - sMax.Value), novaDestinacija, 120, iSlikaHotela);
                HotelAzure h = new HotelAzure();
                h.dodajHotel(noviHotel);
            }
            else
            {
                foreach (Hotel h in Globalna.nasaAgencija.Hoteli)
                {
                    if (h.Ime.Equals(cHoteli.SelectedItem))
                    {
                        noviHotel = h;
                        break;
                    }
                }
            }

            if (jelOK)
            {
                putovanjeVM.kreirajPutovanje(dPolaska.Date.Value.Date, dPovratka.Date.Value.Date, Convert.ToInt32(sMin.Value), Convert.ToInt32(sMax.Value), "opis putovanja", istaknuto, Globalna.prijavljenaAgencijaId, novaDestinacija, noviHotel, prevoz, Convert.ToDouble(tCijena.Text));
                PutovanjeAzure p = new PutovanjeAzure();
                p.dodajPutovanje(Globalna.nasaAgencija.Putovanja[Globalna.nasaAgencija.Putovanja.Count - 1]);
                var dialog = new MessageDialog("Putovanje uspješno kreirano!");
                dialog.ShowAsync();
            }
        }