// GET: SavedAddresses/Create public ActionResult Create(string type, string waybillId) { SavedAddressViewModel viewModel = new SavedAddressViewModel(); viewModel.SavedAddress = new SavedAddress { Type = type }; viewModel.WaybillId = waybillId; viewModel.PageJumpType = type;//for jumping from pickup to savedAddress ViewBag.WaybillId = waybillId; ViewBag.ShippingAccountId = new SelectList(db.ShippingAccounts, "ShippingAccountId", "ShippingAccountNumber"); return(View(viewModel)); }
public ActionResult Create(string type_post, SavedAddressViewModel savedAddressViewModel) { if (!ModelState.IsValid) { return(View(savedAddressViewModel)); } SavedAddress savedAddress = new SavedAddress(); savedAddress = savedAddressViewModel.SavedAddress; /*Empty entry exception */ if (savedAddressViewModel.SavedAddress.NickName == null) { ViewBag.errorMessage = "You are required to assign a nickname to the location"; return(View(savedAddressViewModel)); } ViewBag.ShippingAccountId = new SelectList(db.ShippingAccounts, "ShippingAccountId", "ShippingAccountNumber", savedAddress.ShippingAccountId); var shippingAccount = (from s in db.ShippingAccounts where s.UserName == User.Identity.Name select s).First(); bool isExist = (from s in db.SavedAddresses where s.ShippingAccountId == shippingAccount.ShippingAccountId && s.NickName == savedAddress.NickName select s).Any(); if (isExist) { ViewBag.errorMessage = "The nickname already exists! Please choose another one"; return(View(savedAddressViewModel)); } /*Empty entry exception */ if (savedAddressViewModel.SavedAddress.PickupLocation == null && savedAddressViewModel.SavedAddress.Type == "pickup") { ViewBag.errorMessage2 = "Please enter a pickup location"; return(View(savedAddressViewModel)); } savedAddress.ShippingAccountId = shippingAccount.ShippingAccountId; db.SavedAddresses.Add(savedAddress); try { db.SaveChanges(); } catch (DbEntityValidationException e) { Console.WriteLine(e); } if (type_post == "CreateAndReturnToPickup") { return(RedirectToAction("Create", "Pickups", new { waybillId = savedAddressViewModel.WaybillId })); } return(RedirectToAction("Index")); }