Beispiel #1
0
        public IActionResult NoviPrijevoz()
        {
            var model = new PrijevozNoviVM();

            model.nacinPlacanja = Enum.GetValues(typeof(NacinPlacanja)).Cast <NacinPlacanja>().Select(v => new SelectListItem
            {
                Text  = v.ToString(),
                Value = ((int)v).ToString()
            }).ToList();

            model.tipPrijevoza = Enum.GetValues(typeof(TipPrijevoza)).Cast <TipPrijevoza>().Select(v => new SelectListItem
            {
                Text  = v.ToString(),
                Value = ((int)v).ToString()
            }).ToList();

            return(View(nameof(NoviPrijevoz), model));
        }
Beispiel #2
0
        public async Task <IActionResult> NoviPrijevozSnimiAsync(PrijevozNoviVM model)
        {
            if (!ModelState.IsValid)
            {
                return(View(nameof(NoviPrijevoz), model));
            }
            //kreiranje klijenta
            string username = model.Email;
            await _signInManager.CreateAsync(new ApplicationUser
            {
                UserName          = username,
                Email             = username,
                Ime               = model.Ime,
                Prezime           = model.Prezime,
                Adresa            = model.Adresa,
                Grad              = _context.Grad.Where(g => g.GradID == 1).SingleOrDefault(),
                JMBG              = model.jmbg,
                DatumRodjenja     = DateTime.Parse(model.DatumRodjenja),
                DatumRegistracije = System.DateTime.Now,
                Spol              = model.Spol,
                Slika             = "nema",
            });

            var klijent = await _signInManager.FindByEmailAsync(username);

            //pravljenje novog prijevoza
            Prijevoz novi = new Prijevoz();

            novi.DatumRezervacije = DateTime.Now;
            novi.DatumPrijevoza   = DateTime.Parse(model.DatumPrijevoza);
            novi.NacinPlacanja    = model.NacinPlacanja;
            novi.TipPrijevoza     = model.TipPrijevoza;
            novi.Klijent          = klijent;

            //na osnovu tipa prijevoza se generise cijene
            if (model.TipPrijevoza == 1)
            {
                novi.CijenaCekanjaPoSatu = 10;
                novi.CijenaPoKilometru   = 2;
                novi.CijenaPoVozacu      = 50;
            }
            else if (model.TipPrijevoza == 2)
            {
                novi.CijenaCekanjaPoSatu = 8;
                novi.CijenaPoKilometru   = 1;
                novi.CijenaPoVozacu      = 30;
            }
            else
            {
                novi.CijenaCekanjaPoSatu = 5;
                novi.CijenaPoKilometru   = 0.8;
                novi.CijenaPoVozacu      = 20;
            }

            //postavljanje broj vozaca i vozila na 0
            novi.BrojVozaca = 0;
            novi.BrojVozila = 0;

            _context.Add(novi);
            _context.SaveChanges();


            int pID = _context.Prijevoz.Where(p => p.Klijent.Email == klijent.Email).Select(s => s.PrijevozID).SingleOrDefault();

            return(RedirectToAction(nameof(DodajVozilaPrijevoz), new { id = pID }));
        }