コード例 #1
0
        public async Task <IActionResult> Create(int IdPrijevoznik, [Bind("Id,Tip,Marka,Boja,RegistarskaOznaka,Ekolosko")] Vozilo vozilo)
        {
            if (ModelState.IsValid)
            {
                Vozilo novoVozilo = new Vozilo
                {
                    Tip               = vozilo.Tip,
                    Marka             = vozilo.Marka,
                    Boja              = vozilo.Boja,
                    RegistarskaOznaka = vozilo.RegistarskaOznaka,
                    Ekolosko          = vozilo.Ekolosko,
                    IdPrijevoznik     = IdPrijevoznik
                };
                _context.Add(novoVozilo);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Vozilo  {vozilo.RegistarskaOznaka} uspješno dodano";
                TempData[Constants.ErrorOccurred] = false;

                string urlString = "Details/" + IdPrijevoznik.ToString();
                return(RedirectToAction(urlString, "ProfiliKorisnika"));
            }
            ViewData["IdPrijevoznik"] = new SelectList(_context.Prijevoznik, "IdKorisnik", "IdKorisnik", vozilo.IdPrijevoznik);
            return(View(vozilo));
        }
コード例 #2
0
        public async Task <IActionResult> Create([Bind("Id,Oib,Ime,Prezime,Lozinka,TelBroj,Email")] Korisnik korisnik)
        {
            if (ModelState.IsValid)
            {
                _context.Add(korisnik);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Korisnik dodan.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            return(View(korisnik));
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("Id,Status")] StatusZahtjeva statusZahtjeva)
        {
            if (ModelState.IsValid)
            {
                _context.Add(statusZahtjeva);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Status zahtjeva  {statusZahtjeva.Status} uspješno dodan";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            return(View(statusZahtjeva));
        }
コード例 #4
0
        public async Task <IActionResult> Create([Bind("Id,Razlog")] RazlogNaplate razlogNaplate)
        {
            if (ModelState.IsValid)
            {
                _context.Add(razlogNaplate);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Razlog naplate  {razlogNaplate.Razlog} uspješno dodan";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            return(View(razlogNaplate));
        }
コード例 #5
0
        public async Task <IActionResult> Create([Bind("Id,Naziv,PostanskiBroj")] Mjesto mjesto)
        {
            if (ModelState.IsValid)
            {
                _context.Add(mjesto);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Mjesto {mjesto.Naziv} dodano.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            return(View(mjesto));
        }
コード例 #6
0
        public async Task <IActionResult> Create([Bind("Id,Vrsta")] VrstaNaplate vrstaNaplate)
        {
            if (ModelState.IsValid)
            {
                _context.Add(vrstaNaplate);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Vrsta naplate {vrstaNaplate.Vrsta} uspješno dodana";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            return(View(vrstaNaplate));
        }
コード例 #7
0
        public async Task <IActionResult> Create([Bind("IdKorisnik,NazivTvrtke")] Prijevoznik prijevoznik)
        {
            if (ModelState.IsValid)
            {
                _context.Add(prijevoznik);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Prijevoznik  {prijevoznik.IdKorisnik} uspješno dodan";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdKorisnik"] = new SelectList(_context.Korisnik, "Id", "Prezime", prijevoznik.IdKorisnik);
            return(View(prijevoznik));
        }
コード例 #8
0
        public async Task <IActionResult> Create([Bind("Id,OcjenaPrijevoznika,OcjenaNarucitelja,OpisUslugePrijevoznika,OpisUslugeNarucitelja,IdPonudaPrijevoza")] Prijevoz prijevoz)
        {
            if (ModelState.IsValid)
            {
                _context.Add(prijevoz);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Prijevoz dodan.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdPonudaPrijevoza"] = new SelectList(_context.PonudaPrijevoza, "Id", "Id", prijevoz.IdPonudaPrijevoza);
            return(View(prijevoz));
        }
コード例 #9
0
        public async Task <IActionResult> Create([Bind("IdKorisnik,ZahtijevaEko")] Narucitelj narucitelj)
        {
            if (ModelState.IsValid)
            {
                _context.Add(narucitelj);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Naručitelj {narucitelj.IdKorisnikNavigation} dodan.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdKorisnik"] = new SelectList(_context.Korisnik, "Id", "Prezime", narucitelj.IdKorisnik);
            return(View(narucitelj));
        }
コード例 #10
0
        public async Task <IActionResult> Create([Bind("Id,IdMjesto,IdVrstaLokacije,Ulica,KucniBroj")] Lokacija lokacija)
        {
            if (ModelState.IsValid)
            {
                _context.Add(lokacija);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Lokacija {lokacija.Ulica} {lokacija.KucniBroj} dodana.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdMjesto"]        = new SelectList(_context.Mjesto, "Id", "Naziv", lokacija.IdMjesto);
            ViewData["IdVrstaLokacije"] = new SelectList(_context.VrstaLokacije, "Id", "Vrsta", lokacija.IdVrstaLokacije);
            return(View(lokacija));
        }
コード例 #11
0
        public async Task <IActionResult> Create([Bind("Id,VrijemePocetka,VrijemeZavrsetka,CijenaNeizvrsenja,Sirina,Visina,Duiljina,Masa,Opis,IdStatusZahtjeva,IdNarucitelj")] Zahtjev zahtjev)
        {
            if (ModelState.IsValid)
            {
                _context.Add(zahtjev);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Zahtjev uspješno dodan";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdNarucitelj"]     = new SelectList(_context.Narucitelj, "IdKorisnik", "IdKorisnik", zahtjev.IdNarucitelj);
            ViewData["IdStatusZahtjeva"] = new SelectList(_context.StatusZahtjeva, "Id", "Status", zahtjev.IdStatusZahtjeva);
            return(View(zahtjev));
        }
コード例 #12
0
        public async Task <IActionResult> Create([Bind("Id,IdZahtjev,IdLokacija")] ZahtjevLokacija zahtjevLokacija)
        {
            if (ModelState.IsValid)
            {
                _context.Add(zahtjevLokacija);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Lokacija uspješno dodana zahtjevu";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdLokacija"] = new SelectList(_context.Lokacija, "Id", "Ulica", zahtjevLokacija.IdLokacija);
            ViewData["IdZahtjev"]  = new SelectList(_context.Zahtjev, "Id", "Opis", zahtjevLokacija.IdZahtjev);
            return(View(zahtjevLokacija));
        }
コード例 #13
0
        public async Task <IActionResult> EditiranjeVozila(int id, [Bind("Id,Tip,Marka,Boja,RegistarskaOznaka,Ekolosko")] Vozilo vozilo)
        {
            if (id != vozilo.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    //PRIJAVLJENI KORISNIK!!
                    // trenutno: Ivana, Id = 1
                    int prijavljeniKorisnikId = 2;
                    var prijevoznik           = _context.Prijevoznik.Where(p => p.IdKorisnik == prijavljeniKorisnikId).FirstOrDefault();

                    var voz = _context.Vozilo.Where(v => v.Id == vozilo.Id).FirstOrDefault();

                    voz.Tip               = vozilo.Tip;
                    voz.Marka             = vozilo.Marka;
                    voz.Boja              = vozilo.Boja;
                    voz.RegistarskaOznaka = vozilo.RegistarskaOznaka;
                    voz.Ekolosko          = vozilo.Ekolosko;
                    voz.IdPrijevoznik     = prijevoznik.IdKorisnik;

                    _context.Update(voz);
                    await _context.SaveChangesAsync();

                    TempData[Constants.Message]       = "Ažuriranje uspješno obavljeno";
                    TempData[Constants.ErrorOccurred] = false;

                    string urlString = "Details/" + prijevoznik.IdKorisnik.ToString();
                    return(RedirectToAction(urlString));
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!VoziloExists(vozilo.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            return(View(vozilo));
        }
コード例 #14
0
        public async Task <IActionResult> Create([Bind("Id,IdRazlog,IdVrstaNaplate,IdPrijevoz,RokIzvrsenjaNaplate")] Naplata naplata)
        {
            if (ModelState.IsValid)
            {
                _context.Add(naplata);
                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Naplata dodana.";
                TempData[Constants.ErrorOccurred] = false;
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdPrijevoz"]     = new SelectList(_context.Prijevoz, "Id", "Id", naplata.IdPrijevoz);
            ViewData["IdRazlog"]       = new SelectList(_context.RazlogNaplate, "Id", "Razlog", naplata.IdRazlog);
            ViewData["IdVrstaNaplate"] = new SelectList(_context.VrstaNaplate, "Id", "Vrsta", naplata.IdVrstaNaplate);
            return(View(naplata));
        }
コード例 #15
0
        public async Task <IActionResult> Create([Bind("Id")] ProsireniPrijevozViewModel prosireniPrijevoz)
        {
            if (ModelState.IsValid)
            {
                _context.Add(prosireniPrijevoz);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(prosireniPrijevoz));
        }
コード例 #16
0
        //public async Task<IActionResult> Create([Bind("Id,Cijena,RokIstekaPonude,RokOtkazaPonude,CijenaOtkaza,IdZahtjev,IdPrijevoznik,IdStatusPonude")] PonudaPrijevoza ponudaPrijevoza)
        public async Task <IActionResult> Create(int IdZahtjev, [Bind("Id,Cijena,RokIstekaPonude,RokOtkazaPonude,CijenaOtkaza")] PonudaPrijevoza ponudaPrijevoza)
        {
            var             userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            ApplicationUser user   = _context.Users.Where(u => u.Id == userId).FirstOrDefault();


            if (ModelState.IsValid)
            {
                //mijenjanje statusa zahtjeva u PristiglePonude ako već nije
                Zahtjev zahtjev = _context.Zahtjev.Where(z => z.Id == IdZahtjev)
                                  .Include(z => z.IdStatusZahtjevaNavigation)
                                  .Include(z => z.IdNaruciteljNavigation.IdKorisnikNavigation).FirstOrDefault();

                if (zahtjev.IdStatusZahtjevaNavigation.Status == "Otvoreno")
                {
                    StatusZahtjeva status = _context.StatusZahtjeva.Where(s => s.Status == "PristiglePonude").FirstOrDefault();
                    zahtjev.IdStatusZahtjeva = status.Id;
                    _context.Zahtjev.Update(zahtjev);
                }

                PonudaPrijevoza novaPonudaPrijevoza = new PonudaPrijevoza
                {
                    Id              = ponudaPrijevoza.Id,
                    Cijena          = ponudaPrijevoza.Cijena,
                    RokIstekaPonude = ponudaPrijevoza.RokIstekaPonude,
                    RokOtkazaPonude = ponudaPrijevoza.RokOtkazaPonude,
                    CijenaOtkaza    = ponudaPrijevoza.CijenaOtkaza,
                    IdZahtjev       = IdZahtjev,
                    IdPrijevoznik   = user.IdKorisnik,
                    IdStatusPonude  = 1
                };

                _context.Add(novaPonudaPrijevoza);

                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Ponuda prijevoza dodana.";
                TempData[Constants.ErrorOccurred] = false;

                PonudaPrijevoza ponuda = _context.PonudaPrijevoza.Where(p => p.Id == ponudaPrijevoza.Id).
                                         Include(p => p.IdPrijevoznikNavigation.IdKorisnikNavigation).FirstOrDefault();


                if (zahtjev.IdNaruciteljNavigation.IdKorisnikNavigation.PrimaEmail)
                {
                    var smtpClient = new SmtpClient
                    {
                        Host        = "smtp.gmail.com", // set your SMTP server name here
                        Port        = 587,              // Port
                        EnableSsl   = true,
                        Credentials = new NetworkCredential("*****@*****.**", "carryon1")
                    };

                    using (var message = new MailMessage("*****@*****.**", zahtjev.IdNaruciteljNavigation.IdKorisnikNavigation.Email)
                    {
                        Subject = "Primljena ponuda",
                        Body = "Poštovani korisniče " + zahtjev.IdNaruciteljNavigation.IdKorisnikNavigation.Ime + " "
                               + zahtjev.IdNaruciteljNavigation.IdKorisnikNavigation.Prezime + ", zaprimili ste ponudu prijevoza od korisnika "
                               + ponuda.IdPrijevoznikNavigation.IdKorisnikNavigation.Ime + " " +
                               ponuda.IdPrijevoznikNavigation.IdKorisnikNavigation.Prezime + ". Ponuda se odnosi na zahtjev s opisom: "
                               + zahtjev.Opis + "."
                    })
                    {
                        await smtpClient.SendMailAsync(message);
                    }
                }

                string urlString = "Details/" + IdZahtjev.ToString();
                return(RedirectToAction(urlString, "ProsireniZahtjevi"));
            }
            ViewData["IdPrijevoznik"]  = new SelectList(_context.Prijevoznik, "IdKorisnik", "IdKorisnik", ponudaPrijevoza.IdPrijevoznik);
            ViewData["IdStatusPonude"] = new SelectList(_context.StatusPonude, "Id", "Status", ponudaPrijevoza.IdStatusPonude);
            ViewData["IdZahtjev"]      = new SelectList(_context.Zahtjev, "Id", "Opis", ponudaPrijevoza.IdZahtjev);
            return(View(ponudaPrijevoza));
        }
コード例 #17
0
        // POST: Zahtjevi/Create
        public async Task <IActionResult> Create([Bind("Id,VrijemePocetka,VrijemeZavrsetka,CijenaNeizvrsenja,Sirina,Visina,Duiljina," +
                                                       "Masa,Opis, PocetnaLokacijaUlica, PocetnaLokacijaKucniBroj, PocetnoMjesto, PocetnoMjestoPbr," +
                                                       "OdredisnaLokacijaUlica, OdredisnaLokacijaKucniBroj, OdredisnoMjesto, OdredisnoMjestoPbr")] ProsireniZahtjevViewModel prosireniZahtjev)
        {
            if (ModelState.IsValid)
            {
                var             userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
                ApplicationUser user   = _context.Users.Where(u => u.Id == userId).FirstOrDefault();


                StatusZahtjeva status  = _context.StatusZahtjeva.Where(s => s.Status == "Otvoreno").FirstOrDefault();
                var            zahtjev = new Zahtjev
                {
                    Id                = prosireniZahtjev.Id,
                    VrijemePocetka    = prosireniZahtjev.VrijemePocetka,
                    VrijemeZavrsetka  = prosireniZahtjev.VrijemeZavrsetka,
                    CijenaNeizvrsenja = prosireniZahtjev.CijenaNeizvrsenja,
                    Sirina            = prosireniZahtjev.Sirina,
                    Visina            = prosireniZahtjev.Visina,
                    Duiljina          = prosireniZahtjev.Duiljina,
                    Masa              = prosireniZahtjev.Masa,
                    Opis              = prosireniZahtjev.Opis,
                    IdStatusZahtjeva  = status.Id,
                    IdNarucitelj      = user.IdKorisnik,
                };
                _context.Zahtjev.Add(zahtjev);


                //po?etno mjesto
                Mjesto pocetnoMjesto = null;
                if (_context.Mjesto.Any(m => m.PostanskiBroj == prosireniZahtjev.PocetnoMjestoPbr))
                {
                    pocetnoMjesto = _context.Mjesto.Where(m => m.PostanskiBroj == prosireniZahtjev.PocetnoMjestoPbr).FirstOrDefault();
                    TempData[Constants.Message]       = "Po?etno mjesto ve? postoji  u bazi ";
                    TempData[Constants.ErrorOccurred] = true;
                }
                else
                {
                    pocetnoMjesto = new Mjesto
                    {
                        Naziv         = prosireniZahtjev.PocetnoMjesto,
                        PostanskiBroj = prosireniZahtjev.PocetnoMjestoPbr
                    };
                    _context.Mjesto.Add(pocetnoMjesto);
                }


                //odredišno mjesto
                Mjesto odredisnoMjesto = null;
                if (_context.Mjesto.Any(m => m.PostanskiBroj == prosireniZahtjev.OdredisnoMjestoPbr))
                {
                    odredisnoMjesto                   = _context.Mjesto.Where(m => m.PostanskiBroj == prosireniZahtjev.OdredisnoMjestoPbr).FirstOrDefault();
                    TempData[Constants.Message]       = "Odredišno mjesto ve? postoji  u bazi ";
                    TempData[Constants.ErrorOccurred] = true;
                }
                else
                {
                    odredisnoMjesto = new Mjesto
                    {
                        Naziv         = prosireniZahtjev.OdredisnoMjesto,
                        PostanskiBroj = prosireniZahtjev.OdredisnoMjestoPbr
                    };
                    _context.Mjesto.Add(odredisnoMjesto);
                }


                //vrste lokacije
                var vrstaPocetna = await _context.VrstaLokacije.SingleOrDefaultAsync(m => m.Vrsta == "po?etna");

                var vrstaOdredišna = await _context.VrstaLokacije.SingleOrDefaultAsync(m => m.Vrsta == "odredišna");


                //po?etna lokacija
                Lokacija pocetnaLokacija = null;
                if (_context.Lokacija.Any(m => m.IdMjesto == pocetnoMjesto.Id &&
                                          m.Ulica == prosireniZahtjev.PocetnaLokacijaUlica &&
                                          m.KucniBroj == prosireniZahtjev.PocetnaLokacijaKucniBroj &&
                                          m.IdVrstaLokacije == 1))
                {
                    pocetnaLokacija = _context.Lokacija.Where(m =>
                                                              m.Ulica == prosireniZahtjev.PocetnaLokacijaUlica &&
                                                              m.KucniBroj == prosireniZahtjev.PocetnaLokacijaKucniBroj &&
                                                              m.IdMjesto == pocetnoMjesto.Id &&
                                                              m.IdVrstaLokacije == vrstaPocetna.Id).FirstOrDefault();
                    TempData[Constants.Message]       = "Po?etna lokacija ve? postoji  u bazi ";
                    TempData[Constants.ErrorOccurred] = true;
                }
                else
                {
                    pocetnaLokacija = new Lokacija
                    {
                        Ulica                     = prosireniZahtjev.PocetnaLokacijaUlica,
                        KucniBroj                 = prosireniZahtjev.PocetnaLokacijaKucniBroj,
                        IdMjestoNavigation        = pocetnoMjesto,
                        IdMjesto                  = pocetnoMjesto.Id,
                        IdVrstaLokacijeNavigation = vrstaPocetna,
                        IdVrstaLokacije           = 1
                    };
                    _context.Lokacija.Add(pocetnaLokacija);
                }


                //odredišna lokacija
                Lokacija odredisnaLokacija = null;
                if (_context.Mjesto.Any(m => m.PostanskiBroj == prosireniZahtjev.OdredisnoMjestoPbr) &&
                    _context.Lokacija.Any(m => m.Ulica == prosireniZahtjev.OdredisnaLokacijaUlica) &&
                    _context.Lokacija.Any(m => m.KucniBroj == prosireniZahtjev.OdredisnaLokacijaKucniBroj) &&
                    _context.Lokacija.Any(m => m.IdVrstaLokacije == 2))
                {
                    odredisnaLokacija = _context.Lokacija.Where(m =>
                                                                m.Ulica == prosireniZahtjev.OdredisnaLokacijaUlica &&
                                                                m.KucniBroj == prosireniZahtjev.OdredisnaLokacijaKucniBroj &&
                                                                m.IdMjesto == odredisnoMjesto.Id &&
                                                                m.IdVrstaLokacije == vrstaOdredišna.Id).FirstOrDefault();
                    TempData[Constants.Message]       = "Odredišna lokacija ve? postoji  u bazi ";
                    TempData[Constants.ErrorOccurred] = true;
                }
                else
                {
                    odredisnaLokacija = new Lokacija
                    {
                        Ulica                     = prosireniZahtjev.OdredisnaLokacijaUlica,
                        KucniBroj                 = prosireniZahtjev.OdredisnaLokacijaKucniBroj,
                        IdMjesto                  = odredisnoMjesto.Id,
                        IdMjestoNavigation        = odredisnoMjesto,
                        IdVrstaLokacijeNavigation = vrstaOdredišna,
                        IdVrstaLokacije           = 2,
                    };
                    _context.Lokacija.Add(odredisnaLokacija);
                }


                // zahtjev - po?etna lokacija
                var zahtjevPocetnaLokacija = new ZahtjevLokacija
                {
                    IdZahtjev           = zahtjev.Id,
                    IdLokacija          = pocetnaLokacija.Id,
                    IdZahtjevNavigation = zahtjev,
                };
                _context.ZahtjevLokacija.Add(zahtjevPocetnaLokacija);



                // zahtjev - odredišna lokacija
                var zahtjevOdredisnaLokacija = new ZahtjevLokacija
                {
                    IdZahtjev           = zahtjev.Id,
                    IdLokacija          = odredisnaLokacija.Id,
                    IdZahtjevNavigation = zahtjev,
                };
                _context.ZahtjevLokacija.Add(zahtjevOdredisnaLokacija);


                await _context.SaveChangesAsync();

                TempData[Constants.Message]       = $"Prosireni zahtjev uspješno dodan";
                TempData[Constants.ErrorOccurred] = false;
            }

            return(RedirectToAction(nameof(MojiZahtjevi)));
        }