public ActionResult UpdateSalesPerson(SalesPersonModel model) { if (ModelState.IsValid) { List <DataLibrary.Models.SalesPersonModel> salespersons = SalesPersonProcessor.LoadSalesPerson(); SalesPersonModel sessionModel = (SalesPersonModel)Session["SalespersonUpdateModel"]; //recreating list without the session model in it. salespersons = salespersons.Where(s => s.SalesPersonID != sessionModel.SalesPersonID).ToList(); //isolate(if any) duplicates salespersons = salespersons.Where(a => a.SalesPersonID == model.SalesPersonID || (a.FName == model.FName && a.LName == model.LName)).ToList(); //if the session model's identifying variables are the same as the parameter model, then it is okay to update (same account, same update) //if the session model's identifying variables are NOT the same, then it is NOT okay to update (updating the current model to a duplicate that already exists) //checking to see if the session model is the same as the parameter model. If same, update, if not, proceed. if (sessionModel.FName == model.FName && sessionModel.LName == model.LName) { //left as int for testing purposes int recordsCreated = SalesPersonProcessor.UpdateSalesPerson(model.SalesPersonID, model.FName, model.LName, model.Address, model.Phone, model.StartDate, model.TerminationDate, model.Manager); return(RedirectToAction("ViewSalesPerson")); } else { //if duplicates exist, throw alert and deny update. if (salespersons.Count() > 0) { TempData["DuplicateSalesperson"] = "You have entered a duplicate Salesperson, please enter a new salesperson."; return(View()); } else { //left as int for testing purposes int recordsCreated = SalesPersonProcessor.UpdateSalesPerson(model.SalesPersonID, model.FName, model.LName, model.Address, model.Phone, model.StartDate, model.TerminationDate, model.Manager); return(RedirectToAction("ViewSalesPerson")); } } } return(View()); }
public ActionResult CreateSalesPerson(SalesPersonModel model) { if (ModelState.IsValid) { List <DataLibrary.Models.SalesPersonModel> salespersons = SalesPersonProcessor.LoadSalesPerson(); salespersons = salespersons.Where(a => a.SalesPersonID == model.SalesPersonID || (a.FName == model.FName && a.LName == model.LName)).ToList(); if (salespersons.Count() > 0) { TempData["DuplicateSalesperson"] = "You have entered a duplicate Salesperson, please enter a new salesperson."; return(View()); } else { //left as int for testing purposes int recordsCreated = SalesPersonProcessor.CreateSalesPerson(model.SalesPersonID, model.FName, model.LName, model.Address, model.Phone, model.StartDate, model.TerminationDate, model.Manager); return(RedirectToAction("ViewSalesPerson")); } } return(View()); }
public ActionResult ViewSalesPerson() { ViewBag.Message = "View Salesperson page."; var data = SalesPersonProcessor.LoadSalesPerson(); List <SalesPersonModel> salespersons = new List <SalesPersonModel>(); foreach (var row in data) { salespersons.Add(new SalesPersonModel { SalesPersonID = row.SalesPersonID, FName = row.FName, LName = row.LName, Address = row.Address, Phone = row.Phone, StartDate = row.StartDate, TerminationDate = row.TerminationDate, Manager = row.Manager }); } return(View(salespersons)); }