Example #1
0
        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);
        }
Example #2
0
        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));
        }
Example #3
0
        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());
        }