public ActionResult CompleteJobSubmit(CompleteJobViewModel model) { string userId = User.Identity.GetUserId(); LogicService cmLogic = new LogicService(); bool jobUpdated = cmLogic.UpdateJobForUser(model.JobId, userId, model.Hours); if (jobUpdated) { bool jobCompleted = cmLogic.CompleteJobForUser(model.JobId, userId); if (jobCompleted) { return(RedirectToAction("ViewJob", "Jobs", new { jobId = model.JobId })); } else { return(RedirectToAction("Result", "Dashboard", new { statusCode = 1, message = "Failed To Complete Job" })); } } else { return(RedirectToAction("Result", "Dashboard", new { statusCode = 1, message = "Failed To Update Job" })); } }
public ActionResult CompleteJob(string jobId) { var model = new CompleteJobViewModel(); LogicService cmLogic = new LogicService(); //Generate list of expenses to display var matchingExpenseAssignments = cmLogic.GetAllExpenseAssignmentsForJob(jobId); List <ExpenseViewModel> expensesToDisplay = new List <ExpenseViewModel>(); foreach (JobExpenseDTO ea in matchingExpenseAssignments) { ExpenseViewModel expense = new ExpenseViewModel(); expense.ExpenseName = ea.Expense.Name; expense.ExpenseCost = ea.Expense.Cost.ToString(); expensesToDisplay.Add(expense); } model.AllExpensesForJob = expensesToDisplay; //Pass in job id from URL model.JobId = jobId; return(View(model)); }
public ActionResult CompleteJob(CompleteJobViewModel model) { string userId = User.Identity.GetUserId(); LogicService cmLogic = new LogicService(); //Send expense to logic bool expenseAdded = cmLogic.AddExpense(model.ExpenseToAdd.ExpenseName, model.ExpenseToAdd.ExpenseCost); if (expenseAdded) { //Add assign new expense to current job string expenseId = cmLogic.GetExpenseIdByName(model.ExpenseToAdd.ExpenseName); bool expenseAssigned = cmLogic.AssignExpense(model.JobId, expenseId, userId); if (expenseAssigned) { return(RedirectToAction("CompleteJob", "Jobs", new { jobId = model.JobId })); } else { return(RedirectToAction("Result", "Dashboard", new { statusCode = 1, message = "Failed To Assign Expense" })); } } else { return(RedirectToAction("Result", "Dashboard", new { statusCode = 1, message = "Failed To Add Expense" })); } }