// GET: Bills/Create public async Task <IActionResult> Create() { var userName = User.FindFirstValue(ClaimTypes.Name); var userService = new UserService(); var userId = await userService.GetUserId(userName); var userDetails = await userService.GetUserDetailByUserId(userId); ViewData["UsersFirstName"] = userDetails.FirstName; var userBillService = new UserBillService(); var billViewModel = new BillViewModel { Bill = new Bill(), RecurrenceTypeList = await userBillService.GetRecurrenceTypes() }; return(View(billViewModel)); }
public async Task <IActionResult> Create(BillViewModel billViewModel) { var userName = User.FindFirstValue(ClaimTypes.Name); var userService = new UserService(); var userId = await userService.GetUserId(userName); var userBillService = new UserBillService(); var recModel = UserBillService.GetRecModel(billViewModel); var recSchedule = userBillService.GetRecSchedule(billViewModel.RecurrenceTypeId, recModel); var isSuccess = userBillService.CreateNewUserBill(userId, billViewModel.Bill, recModel, recSchedule); if (isSuccess) { return(RedirectToAction("Index")); } ViewBag.ErrorMessage = "There was an error creating your bill. Please try again."; billViewModel.RecurrenceTypeList = await userBillService.GetRecurrenceTypes(); return(View(billViewModel)); }