public ActionResult AddPurchaseAccountStep5(AddPurchaseAccountVM mAddPurchaseAccountVm) { if (ModelState.IsValid) { return(RedirectToAction(Stepper2.NextStep())); } return(View(mAddPurchaseAccountVm)); }
public ActionResult AddPurchaseAccountStep3(AddPurchaseAccountVM mAddPurchaseAccountVm) { if (!ModelState.IsValid) { return(View(mAddPurchaseAccountVm)); } var purchaseAcc = TempAccountAsAddPurchaseAccountVM(); if (purchaseAcc.PurchasedUnits == null || purchaseAcc.PurchasedUnits.Count == 0) { ModelState.AddModelError("", "No Unit has been selected!"); return(View(mAddPurchaseAccountVm)); } return(RedirectToAction(Stepper2.NextStep())); }
private void AddContractsToUnits(AddPurchaseAccountVM purchaseAcc) { foreach (var unit in purchaseAcc.PurchasedUnits) { if (unit.Contracts == null) { unit.Contracts = new List <ServiceContract>(); foreach (var contract in _contractService.GetDefaultContractsForModel(unit.Stock.ModelId)) { var startIndexFrom = purchaseAcc.PurchasedUnits.Count * 1000; var serviceContract = _accountService.CreateServiceContractFromContract( unit.Contracts.NextIndex(c => c.ContractId, startIndexFrom), purchaseAcc.StartDate, contract); unit.Contracts.Add(serviceContract); } } } }
public ActionResult AddPurchaseAccountStep6(AddPurchaseAccountVM mAddPurchaseAccountVm) { if (ModelState.IsValid) { var purAcc = TempAccountAsAddPurchaseAccountVM(); if (TryUpdateModel(purAcc)) { var newAccount = new PurchaseAccount { AlternateAddressInstructions = purAcc.AlternateAddressInstructions, AlternateAddress = purAcc.AlternateAddress, CustomerId = purAcc.CustomerId, Customer = _customerService.GetCustomer(purAcc.CustomerId), OneOffItems = new List <OneOffItem>(), PurchasedUnits = new List <PurchaseUnit>(), }; foreach (var unit in purAcc.PurchasedUnits) { var newUnit = new PurchaseUnit { PurchasedDate = unit.PurchasedDate, RetailCost = unit.RetailCost, DiscountedAmount = unit.DiscountedAmount, //Stock = unit.Stock, StockId = unit.StockId, Contracts = unit.Contracts.Select(c => new ServiceContract { ContractTypeId = c.ContractTypeId, //ContractType = c.ContractType, ContractLengthInMonths = c.ContractLengthInMonths, StartDate = c.StartDate, Charge = c.Charge, ExpiryDate = c.ExpiryDate, PaymentPeriodId = c.PaymentPeriodId, }).ToList(), }; newAccount.PurchasedUnits.Add(newUnit); } foreach (var oneOffItem in purAcc.OneOffItems) { var newOneOffItem = new OneOffItem { Description = oneOffItem.Description, Charge = oneOffItem.Charge, Date = purAcc.StartDate, Quantity = oneOffItem.Quantity, OneOffTypeId = oneOffItem.OneOffTypeId }; newAccount.OneOffItems.Add(newOneOffItem); } if (ExecuteRepositoryAction(() => { _accountService.AddTempAccount(newAccount); _accountService.CommitChanges(); })) { Session["_accountId"] = newAccount.CustomerAccountId; return(RedirectToAction(Stepper2.NextStep())); } } } return(View(mAddPurchaseAccountVm)); }