public ActionResult CreateDates(ContractCreateDatesViewModel datesViewModel) { //load contract from db var contract = db.Contracts.Find(datesViewModel.ContractId); contract.ContractBegin = datesViewModel.ContractBegin; contract.ContractEnd = datesViewModel.ContractEnd; db.Entry(contract).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "Contract")); }
//********************************************************************************************************************************* // GET: Contract/Create/CreateDates public ActionResult CreateDates(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //David Create and populate the ViewModel var model = new ContractCreateDatesViewModel(); //Set the Contract Id !!before initialization with Helper model.ContractId = (int)id; model = CreateDatesHelper(model); return(View(model)); }
public ActionResult CreateDates(ContractCreateDatesViewModel model, string submit) { if (ModelState.IsValid) //If all values are accepted { //load contract var contract = db.Contracts.Find(model.ContractId); //set contract from model contract.ContractBegin = model.ContractBegin; //db.Entry(contract).Reference(c => c.ContractEnd).Load(); if (model.ContractEnd != null) { contract.ContractEnd = model.ContractEnd; } else { db.Entry(contract).Reference(c => c.CancellationPeriod).Load(); contract.CancellationPeriod = model.CancellationPeriod; } contract.CancellationDate = model.CancellationDate; contract.MinContractDuration = model.MinContractDuration; contract.AutoExtension = model.AutoExtension; //Set Contract Status contract.ContractStatus = HelperUtility.checkContractStatus(contract, db); db.Entry(contract).State = EntityState.Modified; db.SaveChanges(); //Decide which button was pressed...then redirect if (submit == continueBtn) { return(RedirectToAction("CreateCosts", new { id = contract.Id })); } else { return(RedirectToAction("Index")); } } //Repeat Model Initialization of SelectLists -> See GET: ActionMethod model = CreateDatesHelper(model); //initialization:end return(View(model)); }
// GET: Contract/Create/CreateGeneral public ActionResult CreateDates(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //David Create and populate the ViewModel var datesViewModel = new ContractCreateDatesViewModel(); //Set the Contract Id var contract = db.Contracts.Find(id); datesViewModel.ContractId = contract.Id; return(View(datesViewModel)); }
//CreateDatesHelper public ContractCreateDatesViewModel CreateDatesHelper(ContractCreateDatesViewModel model) { Contract contract = db.Contracts.Find(model.ContractId); if (contract != null) { model.ContractBegin = (model.ContractBegin != null) ? model.ContractBegin : contract.ContractBegin; model.ContractEnd = (model.ContractEnd != null) ? model.ContractEnd : contract.ContractEnd; model.CancellationPeriod = (model.CancellationPeriod != null) ? model.CancellationPeriod : ((contract.CancellationPeriod != null) ? contract.CancellationPeriod : null); model.CancellationDate = (model.CancellationDate != null) ? model.CancellationDate : contract.CancellationDate; model.MinContractDuration = (model.MinContractDuration != null) ? model.MinContractDuration : contract.MinContractDuration; model.AutoExtension = (model.AutoExtension != null) ? model.AutoExtension : contract.AutoExtension; } //Enum does not need Dropdownlist initialization: Runtimetypes //Add Contract to View to display its information in following Forms (like Status and Name) model.Contract = contract; return(model); }