public ActionResult Add(int year = 0, int make = 0, int model = 0, int style = 0) { ViewBag.year = year; ViewBag.make = make; ViewBag.model = model; ViewBag.style = style; List<string> error_messages = new List<string>(); if (year > 0 && make > 0 && model > 0 && style > 0) { try { CurtDevDataContext db = new CurtDevDataContext(); // Make sure we don't already have this vehicle int vCount = (from v in db.Vehicles where v.yearID.Equals(year) && v.makeID.Equals(make) && v.modelID.Equals(model) && v.styleID.Equals(style) select v).Count<Vehicles>(); try { YearMake ym = db.YearMakes.Where(x => x.yearID.Equals(year)).Where(x => x.makeID.Equals(make)).First<YearMake>(); } catch { YearMake ym = new YearMake { yearID = year, makeID = make }; db.YearMakes.InsertOnSubmit(ym); db.SubmitChanges(); } try { MakeModel mm = db.MakeModels.Where(x => x.makeID.Equals(make)).Where(x => x.modelID.Equals(model)).First<MakeModel>(); } catch { MakeModel mm = new MakeModel { makeID = make, modelID = model }; db.MakeModels.InsertOnSubmit(mm); db.SubmitChanges(); } try { ModelStyle ms = db.ModelStyles.Where(x => x.modelID.Equals(model)).Where(x => x.styleID.Equals(style)).First<ModelStyle>(); } catch { ModelStyle ms = new ModelStyle { modelID = model, styleID = style }; db.ModelStyles.InsertOnSubmit(ms); db.SubmitChanges(); } if (vCount == 0) { Vehicles new_vehicle = new Vehicles { yearID = year, makeID = make, modelID = model, styleID = style, dateAdded = DateTime.Now }; db.Vehicles.InsertOnSubmit(new_vehicle); db.SubmitChanges(); return RedirectToAction("Index"); } else { error_messages.Add("We already have this vehicle in the database."); } } catch (Exception e) { error_messages.Add(e.Message); } } ViewBag.error_messages = error_messages; // Get Years List<Year> years = Models.Vehicle.GetYears(); ViewBag.years = years; // Get Makes List<Make> makes = Models.Vehicle.GetMakes(); ViewBag.makes = makes; // Get Models List<Model> models = Models.Vehicle.GetModels(); ViewBag.models = models; // Get Styles List<Style> styles = Models.Vehicle.GetStyles(); ViewBag.styles = styles; // Get the modules for the logged in user List<module> modules = new List<module>(); modules = Users.GetUserModules(Convert.ToInt32(Session["userID"])); ViewBag.Modules = modules; return View(); }
public string AddStyle(string style,int modelID) { string response = ""; style = Uri.UnescapeDataString(style); CurtDevDataContext db = new CurtDevDataContext(); ModelStyle ms = new ModelStyle(); if (style.Length > 0 && modelID > 0) { // Make sure this style doesn't exist int sCount = (from s in db.Styles join mos in db.ModelStyles on s.styleID equals mos.styleID where s.style1.Equals(style) && mos.modelID.Equals(modelID) select s).Count<Style>(); if (sCount == 0) { Style new_style = new Style(); try { new_style = db.Styles.Where(x => x.style1.Equals(style)).First<Style>(); } catch { new_style = new Style { style1 = style.Trim() }; db.Styles.InsertOnSubmit(new_style); db.SubmitChanges(); } try { ms = new ModelStyle { styleID = new_style.styleID, modelID = modelID }; db.ModelStyles.InsertOnSubmit(ms); db.SubmitChanges(); JavaScriptSerializer ser = new JavaScriptSerializer(); response = ser.Serialize(new_style); } catch (Exception e) { response = "[{\"error\":\"" + e.Message + "\"}]"; } } else { response = "This style already exists for this model."; } } return response; }