public ActionResult Assess(int id, FormCollection collection, ProgressReviewViewModel model) { if (ModelState.IsValid) { var review = db.ProgressReviews.Find(id); if (review != null) { review.EvalDescription = model.EvalDescription; review.LMId = model.LMId; review.PCId = model.PCId; review.PRCompletionStatus = model.PRCompletionStatus; review.PRDHApprovalStatus = model.PRDHApprovalStatus; review.PRHRAEvalDecision = model.PRHRAEvalDecision; review.PREvalDescription = model.PREvalDescription; review.SelfEvaluation = model.SelfEvaluation; review.AssessmentStatus = ProgressReview.Status.Submitted; review.SASubmissionDate = DateTime.Today; // add jquery datetime type review.CreationPCId = User.Identity.GetUserId <int>(); db.SaveChanges(); return(RedirectToAction("Index")); } else { return(HttpNotFound()); } } else { return(View()); } }
public ActionResult Create() { //var colleagueDep = db.Colleagues.Where(c => c.Id == model.LMId).Select(s => s.DepartmentId).Single(); //ViewBag.PCId = new SelectList(db.ProbationaryColleagues.Select(s => s.DepartmentId == colleagueDep), "Id", "Username"); // create performance scores view model var model = new ProgressReviewViewModel(); { foreach (var item in db.Competencies.ToList()) { model.Competencies.Add( new CompetencyViewModel { Id = item.CompetencyId, CompetencyName = item.CompetencyName, }); } var review = new ProgressReview { ReviewId = model.Id, PCId = model.PCId, LMId = User.Identity.IsAuthenticated ? User.Identity.GetUserId <int>() : db.Users.First().Id, }; ViewBag.PCId = new SelectList(db.Assignments.Where(l => l.LMAssignId == review.LMId).Select(p => p.ProbationaryColleague), "Id", "Fullname"); } return(View(model)); }
public ActionResult Edit(int id, FormCollection collection, ProgressReviewViewModel model) { if (ModelState.IsValid) { var review = db.ProgressReviews.Find(id); if (review != null) { review.EvalDescription = model.EvalDescription; review.TotalScore = model.TotalScore; review.PREvalDescription = model.PREvalDescription; review.SelfEvaluation = model.SelfEvaluation; //review.LMId = model.LMId; review.PCId = model.PCId; review.CreationPCId = model.CreationPCId; review.AssessmentStatus = model.AssessmentStatus; review.PRCompletionStatus = model.PRCompletionStatus; review.SASubmissionDate = model.SASubmissionDate; review.PRDHApprovalStatus = model.PRDHApprovalStatus; review.PRDHApproveDate = model.PRDHApproveDate; review.PRHRAEvalDecision = model.PRHRAEvalDecision; review.PRHRAEvalDate = model.PRHRAEvalDate; review.PRDHApprovesId = model.PRDHApprovesId; review.HREvaluatesId = model.HREvaluatesId; foreach (var item in model.Competencies) { var criteria = new PerformanceCriterion { ReviewId = review.ReviewId, CompetencyId = item.Id, Score = item.Score, }; db.Entry(criteria).State = System.Data.Entity.EntityState.Modified; //db.PerformanceCriterions.Add(criteria); } db.SaveChanges(); var tscore = db.PerformanceCriterions.Where(r => r.ReviewId == review.ReviewId).Select(s => s.Score).Sum(); review.TotalScore = tscore; db.SaveChanges(); return(RedirectToAction("Index")); } else { return(HttpNotFound()); } } else { return(View()); } }
public ActionResult Evaluate(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProgressReview review = db.ProgressReviews.Find(id); //ProgressReview review = db.ProgressReviews.Find(id).PRDHApprovalStatus== ProgressReview.ApprovalStatus.Approved; if (review == null) { return(HttpNotFound()); } ProgressReviewViewModel model = new ProgressReviewViewModel { Id = review.ReviewId, PRCompletionStatus = review.PRCompletionStatus, LMId = review.LMId, LMCreates = review.LMCreates.FullName, PCId = review.PCId, ProbationaryColleague = review.ProbationaryColleague.FullName, HREvaluatesId = review.HREvaluatesId, PRDHApprovalStatus = review.PRDHApprovalStatus, PRDHApprovesId = review.PRDHApprovesId, //DHApproval = review.DHApproval, PRDHApproveDate = review.PRDHApproveDate, PREvalDescription = review.PREvalDescription, SelfEvaluation = review.SelfEvaluation, AssessmentStatus = review.AssessmentStatus, SASubmissionDate = review.SASubmissionDate, EvalDescription = review.EvalDescription, TotalScore = review.TotalScore, CreationPCId = review.CreationPCId, //CreationPC = review.CreationPC.FullName, PRHRAEvalDecision = review.PRHRAEvalDecision, }; // use index template to show competency scores foreach (var item in db.PerformanceCriterions.Where(r => r.ReviewId == review.ReviewId).ToList()) { model.Competencies.Add( new CompetencyViewModel { Id = item.CompetencyId, CompetencyName = item.Competency.CompetencyName, Score = item.Score, }); } return(View(model)); }
public ActionResult Create(ProgressReviewViewModel model) { if (ModelState.IsValid) { // Create the review from the model var review = new ProgressReview { ReviewId = model.Id, PCId = model.PCId, LMId = User.Identity.IsAuthenticated ? User.Identity.GetUserId <int>() : db.Users.First().Id, EvalDescription = model.EvalDescription, TotalScore = model.TotalScore, SelfEvaluation = model.SelfEvaluation, PREvalDescription = model.PREvalDescription, PRCompletionStatus = ProgressReview.CompletionStatus.Incomplete, AssessmentStatus = ProgressReview.Status.Pending, PRSubmissionDate = DateTime.Today }; //Save the created review to the database db.ProgressReviews.Add(review); db.SaveChanges(); foreach (var item in model.Competencies) { var criteria = new PerformanceCriterion { ReviewId = review.ReviewId, CompetencyId = item.Id, Score = item.Score, }; db.PerformanceCriterions.Add(criteria); //db.SaveChanges(); } db.SaveChanges(); var tscore = db.PerformanceCriterions.Where(r => r.ReviewId == review.ReviewId).Select(s => s.Score).Sum(); review.TotalScore = tscore; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(model)); }
public ActionResult Assess(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProgressReview review = db.ProgressReviews.Find(id); if (review == null) { return(HttpNotFound()); } ProgressReviewViewModel model = new ProgressReviewViewModel { Id = review.ReviewId, PRCompletionStatus = ProgressReview.CompletionStatus.Complete, LMId = review.LMId, LMCreates = review.LMCreates.FullName, PCId = review.PCId, ProbationaryColleague = review.ProbationaryColleague.FullName, PRDHApprovalStatus = ProgressReview.ApprovalStatus.Pending, TotalScore = review.TotalScore,//db.PerformanceCriterions.Where(r => r.ReviewId == review.ReviewId).Select(s => s.Score).Sum(), EvalDescription = review.EvalDescription, PREvalDescription = review.PREvalDescription, SelfEvaluation = review.SelfEvaluation, SASubmissionDate = review.SASubmissionDate }; // use index template to show competency scores foreach (var item in db.PerformanceCriterions.Where(r => r.ReviewId == review.ReviewId).ToList()) { model.Competencies.Add( new CompetencyViewModel { Id = item.CompetencyId, CompetencyName = item.Competency.CompetencyName, Score = item.Score, }); } return(View(model)); }
//[Authorize(Roles = "Probationary Colleague")] public ActionResult Evaluate(int id, FormCollection collection, ProgressReviewViewModel model) { if (ModelState.IsValid) { var review = db.ProgressReviews.Find(id); if (review != null) { review.EvalDescription = model.EvalDescription; review.PREvalDescription = model.PREvalDescription; review.SelfEvaluation = model.SelfEvaluation; review.LMId = model.LMId; review.PCId = model.PCId; review.CreationPCId = model.CreationPCId; review.AssessmentStatus = model.AssessmentStatus; review.PRCompletionStatus = ProgressReview.CompletionStatus.Complete; review.SASubmissionDate = model.SASubmissionDate; review.PRDHApprovalStatus = model.PRDHApprovalStatus; review.PRDHApproveDate = model.PRDHApproveDate; review.PRHRAEvalDecision = model.PRHRAEvalDecision; review.PRHRAEvalDate = DateTime.Today; review.PRDHApprovesId = model.PRDHApprovesId; review.HREvaluatesId = User.Identity.GetUserId <int>(); db.SaveChanges(); return(RedirectToAction("Index")); } else { return(HttpNotFound()); } } else { ViewBag.CompetencyId = new SelectList(db.Competencies, "CompetencyId", "CompetencyName"); return(View()); } }
public ActionResult Approve(int id, FormCollection collection, ProgressReviewViewModel model) { if (ModelState.IsValid) { var review = db.ProgressReviews.Find(id); if (review != null) { //review.TotalScore = model.TotalScore; review.EvalDescription = model.EvalDescription; review.PREvalDescription = model.PREvalDescription; review.SelfEvaluation = model.SelfEvaluation; review.LMId = model.LMId; review.PCId = model.PCId; review.CreationPCId = model.CreationPCId; review.AssessmentStatus = model.AssessmentStatus; review.PRCompletionStatus = model.PRCompletionStatus; review.SASubmissionDate = model.SASubmissionDate; review.PRDHApprovalStatus = model.PRDHApprovalStatus; review.PRDHApproveDate = DateTime.Today; review.PRDHApprovesId = User.Identity.GetUserId <int>(); review.PRHRAEvalDecision = ProgressReview.EvaluationDecision.Pending; //db.Entry(review).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } else { return(HttpNotFound()); } } else { return(View()); } }