/// <summary> /// This action is for retrieving CEO approval's details /// </summary> /// <param name="id">document id</param> /// <returns>finance approval details view</returns> // GET: CostSheet/CEOeApprovalDetails //[Authorize(Roles = "Finance Employee, CEO, ProductionEmployee")] public ActionResult CEOApprovalDetails(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CostSheet costSheet = db.CostSheets.Find(id); if (costSheet == null) { return(HttpNotFound()); } var model = new CostSheetViewModel { CostSheetId = costSheet.CostSheetId, CostSheetName = costSheet.CostSheetName, Status = costSheet.Status, EventProject = costSheet.EventProject.Name, Employee = costSheet.Employee.FullName, CEODecision = costSheet.CEODecision, CEOFeedback = costSheet.CEOFeedback, }; ViewBag.CEOEmployeeId = new SelectList(db.Employees, "Id", "FullName"); ViewBag.EventProjectId = new SelectList(db.EventProjects, "EventProjectId", "FullName"); return(View(model)); }
/// <summary> /// This action gets a page that includes a cost sheet's details /// </summary> /// <param name="id">cost sheet id</param> /// <returns>cost sheet items view</returns> public ActionResult CostSheetItems(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CostSheet costSheet = db.CostSheets.Find(id); if (costSheet == null) { return(HttpNotFound()); } var model = new CostSheetViewModel { EventProjectId = costSheet.EventProjectId, CostSheetId = costSheet.CostSheetId, CostSheetName = costSheet.CostSheetName, Status = costSheet.Status, ProductionEmployee = costSheet.ProductionEmployee.FullName, }; ViewBag.ItemId = new SelectList(db.Items, "ItemId", "ItemPrice"); return(View(model)); }
public ActionResult AddCEOApproval(int id, CostSheetViewModel model) { if (ModelState.IsValid) { var costSheet = db.CostSheets.Find(id); if (costSheet == null) { return(HttpNotFound()); } if (model.CEODecision == CostSheetCEODecision.Approved) { model.Status = CostSheetStatus.CEOApproved; } else if (model.CEODecision == CostSheetCEODecision.Rejected) { model.Status = CostSheetStatus.CEORejected; } costSheet.CEOEmployeeId = User.Identity.GetUserId <int>(); costSheet.Status = model.Status; costSheet.CEODecision = model.CEODecision; costSheet.CEOFeedback = model.CEOFeedback; db.Entry(costSheet).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("CostSheetItems", "CostSheet", new { id = costSheet.CostSheetId })); } ViewBag.CEOEmployeeId = new SelectList(db.Employees, "Id", "FullName"); return(View()); }
/// <summary> /// Thi action gets the CEO approval page /// </summary> /// <param name="id">cost sheet id</param> /// <returns>Add CEO Approval view</returns> // GET: CostSheet/AddCEOApproval //[Authorize(Roles = "CEO")] public ActionResult AddCEOApproval(int?id) { if (id == null) { return(View("Error")); } CostSheet costSheet = db.CostSheets.Find(id); if (costSheet == null) { return(View("Error")); } var model = new CostSheetViewModel { CostSheetId = costSheet.CostSheetId, CostSheetName = costSheet.CostSheetName, Status = costSheet.Status, Employee = costSheet.Employee.FullName, CEODecision = costSheet.CEODecision, CEOFeedback = costSheet.CEOFeedback, }; ViewBag.CEOEmployeeId = new SelectList(db.Employees, "Id", "FullName"); return(View(model)); }
public ActionResult CostSheetPartial(CostSheetViewModel model) { if (ModelState.IsValid) { var project = db.EventProjects.Find(model.EventProjectId); if (project == null) { return(HttpNotFound()); } var costSheet = new CostSheet { CostSheetName = model.CostSheetName, Status = CostSheetStatus.Pending, ProductionEmployeeId = User.Identity.GetUserId <int>(), FinanceEmployeeId = User.Identity.GetUserId <int>(), CEOEmployeeId = User.Identity.GetUserId <int>(), EventProjectId = model.EventProjectId, }; ViewBag.ProductionEmployeeId = new SelectList(db.Employees, "ProductionEmployeeId", "FullName"); //ViewBag.CEOEmployeeId = new SelectList(db.Employees, "Id", "FullName"); //ViewBag.FinanceEmployeeId = new SelectList(db.Employees, "Id", "FullName"); //ViewBag.EventProjectId = new SelectList(db.EventProjects, "EventProjectId", "Name"); db.CostSheets.Add(costSheet); db.SaveChanges(); } ViewBag.ProductionEmployeeId = new SelectList(db.Employees, "ProductionEmployeeId", "FullName"); //ViewBag.CEOEmployeeId = new SelectList(db.Employees, "Id", "FullName"); //ViewBag.FinanceEmployeeId = new SelectList(db.Employees, "Id", "FullName"); //ViewBag.EventProjectId = new SelectList(db.EventProjects, "EventProjectId", "Name"); return(PartialView(model)); }
public frmCostSheet(UserInformation userinfo, string partNo, int routeNo) { InitializeComponent(); CostSheetViewModel vm = new CostSheetViewModel(userinfo, partNo, routeNo); this.DataContext = vm; if (vm.CloseAction == null) { vm.CloseAction = new Action(() => this.Close()); } }