public ActionResult Create(Models.ProviderCreateModel provider) { if (ModelState.IsValid) { Provider tempprovider = new Provider(); tempprovider.Services = new List <Service>(); tempprovider.Insurances = new List <Insurance>(); Regex rgx = new Regex(@"\W"); tempprovider.Name = provider.Name.Trim(); tempprovider.Phone = provider.Phone == null ? "" : rgx.Replace(provider.Phone, ""); tempprovider.SlidingScale = provider.SlidingScale; tempprovider.DiscountCashPay = provider.DiscountCashPay; tempprovider.StateID = provider.StateID; tempprovider.Street = provider.Street.Trim(); tempprovider.Zip = provider.Zip; tempprovider.Website = provider.Website?.Trim(); tempprovider.City = provider.City.Trim(); tempprovider.Email = provider.Email?.Trim(); tempprovider.CreatedDate = DateTime.Now; tempprovider.GenderID = provider.GenderID; tempprovider.NationalityID = provider.NationalityID; if (provider.UploadedLocation?.ContentLength > 0) { string _FileName = Guid.NewGuid().ToString() + Path.GetExtension(provider.UploadedLocation.FileName); string _path = Path.Combine(Server.MapPath("~/Content/Images/Providers"), _FileName); tempprovider.IMGLocation = _FileName; provider.UploadedLocation.SaveAs(_path); } foreach (var service in provider.Services) { foreach (var selectedservice in service.SelectedService) { Service newservice = new Service(); //newservice.ProviderID = tempprovider.ID; newservice.ServiceID = selectedservice; tempprovider.Services.Add(newservice); } } foreach (var insurances in provider.Insurances) { foreach (var selectedinsurances in insurances.SelectedInsurance) { Insurance newinsurances = new Insurance(); newinsurances.InsureanceID = selectedinsurances; //newinsurances.ProviderID = tempprovider.ID; tempprovider.Insurances.Add(newinsurances); } } foreach (var type in provider.Types) { foreach (var selectedtype in type.SelectedType) { Type newtype = new Type(); newtype.TypeID = selectedtype; //newtype.ProviderID = tempprovider.ID; tempprovider.Types.Add(newtype); } } db.Providers.Add(tempprovider); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.StateID = new SelectList(db.States, "ID", "Name", provider.StateID); ViewBag.ListOfInsuranceCompanys = db.ListOfInsuranceCompanys.Where(m => m.Hide == false).OrderBy(m => m.Insurances).ToList(); ViewBag.ListOfServices = db.ListOfServices.Where(m => m.Hide == false).OrderBy(m => m.Name).ToList(); ViewBag.ListOfTypes = db.ListOfTypes.Where(m => m.Hide == false).OrderBy(m => m.Type).ToList(); ViewBag.GenderID = new SelectList(db.ListOfGenders.Where(m => m.Hide == false), "ID", "Gender"); ViewBag.NationalityID = new SelectList(db.ListOfNationalities.Where(m => m.Hide == false), "ID", "Nationality"); ViewBag.DiscountCashPay = new List <SelectListItem> { new SelectListItem { Text = "--- Select ---", Value = "" }, new SelectListItem { Text = "Unknown", Value = "" }, new SelectListItem { Text = "Yes", Value = true.ToString() }, new SelectListItem { Text = "No", Value = false.ToString() } }; ViewBag.SlidingScale = ViewBag.DiscountCashPay; return(View(provider)); }
// GET: Providers/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Provider provider = db.Providers.Find(id); if (provider == null) { return(HttpNotFound()); } ViewBag.StateID = new SelectList(db.States, "ID", "Name", provider.StateID); ViewBag.GenderID = new SelectList(db.ListOfGenders.Where(m => m.Hide == false), "ID", "Gender", provider.GenderID); ViewBag.NationalityID = new SelectList(db.ListOfNationalities.Where(m => m.Hide == false), "ID", "Nationality", provider.NationalityID); ViewBag.ListOfInsuranceCompanys = db.ListOfInsuranceCompanys.Where(mm => mm.Hide == false).ToList(); ViewBag.ListOfServices = db.ListOfServices.Where(m => m.Hide == false).OrderBy(m => m.Name).ToList(); ViewBag.ListOfTypes = db.ListOfTypes.Where(m => m.Hide == false).OrderBy(m => m.Type).ToList(); ViewBag.DiscountCashPay = new SelectList(new List <SelectListItem> { new SelectListItem { Text = "--- Select ---", Value = "" }, new SelectListItem { Text = "Unknown", Value = null }, new SelectListItem { Text = "Yes", Value = true.ToString() }, new SelectListItem { Text = "No", Value = false.ToString() } }, "Value", "Text", provider.DiscountCashPay); ViewBag.SlidingScale = new SelectList(new List <SelectListItem> { new SelectListItem { Text = "--- Select ---", Value = "" }, new SelectListItem { Text = "Unknown", Value = null }, new SelectListItem { Text = "Yes", Value = true.ToString() }, new SelectListItem { Text = "No", Value = false.ToString() } }, "Value", "Text", provider.SlidingScale); Models.ProviderCreateModel tempprovider = new Models.ProviderCreateModel(); Regex rgx = new Regex(@"\W"); tempprovider.Name = provider.Name.Trim(); tempprovider.Phone = provider.Phone == null ? "" : rgx.Replace(provider.Phone, ""); tempprovider.SlidingScale = provider.SlidingScale; tempprovider.DiscountCashPay = provider.DiscountCashPay; tempprovider.StateID = provider.StateID; tempprovider.Street = provider.Street.Trim(); tempprovider.Zip = provider.Zip; tempprovider.Website = provider.Website?.Trim(); tempprovider.City = provider.City.Trim(); tempprovider.Email = provider.Email?.Trim(); tempprovider.CreatedDate = DateTime.Now; tempprovider.GenderID = provider.GenderID; tempprovider.NationalityID = provider.NationalityID; tempprovider.IMGLocation = provider.IMGLocation; foreach (var item in provider.Services.Where(mm => mm.Hide == false)) { Models.ServicesCreateModel scm = new Models.ServicesCreateModel(); scm.ServiceID = item.ServiceID; scm.ProviderID = item.ProviderID; tempprovider.Services.Add(scm); } foreach (var item in provider.Insurances.Where(mm => mm.Hide == false)) { Models.InsurancesCreateModel scm = new Models.InsurancesCreateModel(); scm.InsureanceID = item.InsureanceID; scm.ProviderID = item.ProviderID; tempprovider.Insurances.Add(scm); } foreach (var item in provider.Types.Where(mm => mm.Hide == false)) { Models.TypesCreateModel scm = new Models.TypesCreateModel(); scm.TypeID = item.TypeID; scm.ProviderID = item.ProviderID; tempprovider.Types.Add(scm); } return(View(tempprovider)); }