public virtual ActionResult EditBill(int billId) { AddEditBillViewModel vm = TempData["AddEditBillViewModel"] as AddEditBillViewModel; if (vm == null) { var bill = _accountService.GetBill(billId).Result; vm = new AddEditBillViewModel() { BillId = billId, BillGroupId = bill.BillGroupId, Name = bill.Name, Amount = bill.Amount, StartDate = bill.StartDate, EndDate = bill.EndDate, CategoryId = bill.CategoryId.HasValue ? bill.CategoryId.Value : 0, VendorId = bill.VendorId.HasValue ? bill.VendorId.Value : 0, Frequency = bill.RecurrenceFrequency, SecondaryStartDate = bill.StartDate2, SecondaryEndDate = bill.EndDate2, IncludeSecondaryDates = bill.StartDate2.HasValue }; } vm.IsEditMode = true; // available bill groups var billGroups = _accountService.GetAllBillGroups().Result; vm.AvailableBillGroups = billGroups.OrderBy(x => x.Name).Select(x => new BillGroupDto() { Id = x.Id, Name = x.Name }).ToList(); // available categories var categories = _accountService.GetAllCategories().Result; vm.AvailableCategories = categories.OrderBy(x => x.CategoryGroup.DisplayOrder).ThenBy(x => x.Name).Select(x => new CategoryDto() { Id = x.Id, Name = x.CategoryGroup.Name + " : " + x.Name }).ToList(); vm.AvailableCategories.Insert(0, new CategoryDto()); // available vendors var vendors = _accountService.GetAllVendors().Result; vm.AvailableVendors = vendors.OrderBy(x => x.Name).Select(x => new VendorDto() { Id = x.Id, Name = x.Name }).ToList(); vm.AvailableVendors.Insert(0, new VendorDto()); return PartialView("AddEditBill", vm); }
public virtual ActionResult EditBillPost(AddEditBillViewModel viewModel) { if (!ModelState.IsValid) { TempData["AddEditBillViewModel"] = viewModel; viewModel.IsError = true; return RedirectToAction(MVC.Account.Bill(viewModel.BillId)); } _accountService.UpdateBill(viewModel.BillId, viewModel.Name, viewModel.Amount, viewModel.BillGroupId, viewModel.CategoryId, viewModel.VendorId, viewModel.StartDate, viewModel.EndDate, viewModel.Frequency, viewModel.UpdateExisting, viewModel.IncludeSecondaryDates ? viewModel.SecondaryStartDate : null, viewModel.IncludeSecondaryDates ? viewModel.SecondaryEndDate : null); return RedirectToAction(MVC.Account.Bill(viewModel.BillId)); }
public virtual ActionResult AddBillPost(AddEditBillViewModel viewModel) { if (!ModelState.IsValid) { TempData["AddEditBillViewModel"] = viewModel; viewModel.IsError = true; return RedirectToAction(MVC.Account.Bills()); } var result = _accountService.AddBill(viewModel.Name, viewModel.Amount, viewModel.BillGroupId, viewModel.CategoryId, viewModel.VendorId, viewModel.StartDate, viewModel.EndDate, viewModel.Frequency, viewModel.SecondaryStartDate, viewModel.SecondaryEndDate); return RedirectToAction(MVC.Account.Bills()); }