// GET: AnnualPlannings/Edit/5 public ActionResult Edit(int?id, AnnualPlanning annual) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AnnualPlanning annualPlanning = db.AnnualPlannings.Find(id); if (annualPlanning == null) { return(HttpNotFound()); } ActivityServices activity = new ActivityServices(); var activities = activity.GetActivity().Where(p => p.Status == "Approve"); IEnumerable <SelectListItem> activityid = activities .Select(d => new SelectListItem { Value = d.ActivityID.ToString(), Text = d.Name }); ViewBag.ActivityID = activityid; ViewBag.membereng = new MultiSelectList(db.Employees, "EmployeeID", "Name"); ViewBag.membereng1 = new MultiSelectList(db.Employees, "EmployeeID", "Name"); ViewBag.Tahun = annualPlanning.Tahun; return(View(annualPlanning)); }
public ActionResult Update(string submit, [Bind(Include = "AnnualPlanningID,Date_Start,Date_End,Status,Approval_Status,Tahun,ActivityID,PICID,SupervisorID,TeamLeaderID,MemberID")] AnnualPlanning annualPlanning, string member, EngagementActivity engagementActivity) { if (ModelState.IsValid) { string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { annualPlanning.Approval_Status = "Draft"; } else if (submit == "Send Back") { annualPlanning.Approval_Status = HelperController.GetStatusSendback(db, "Annual Planning", annualPlanning.Approval_Status); } else if (submit == "Approve") { annualPlanning.Approval_Status = "Approve"; } else if (submit == "Submit For Review By" + user) { annualPlanning.Approval_Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { annualPlanning.Approval_Status = "Pending for Approve by" + user; //send email to approve user string activname = db.Activities.Where(p => p.ActivityID.Equals(annualPlanning.ActivityID)).Select(p => p.Name).FirstOrDefault(); string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> UserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> EmpList = new List <Employee>(); if (UserIds.Count() > 0) { var users = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (UserIds.Contains(p.Id))).ToList(); foreach (var userr in users) { Employee emp = db.Employees.Where(p => p.Email.Equals(userr.Email)).FirstOrDefault(); if (emp != null) { string emailContent = "Dear {0}, <BR/><BR/>There is a Annual Planning that need your approval. Please click on this <a href=\"{2}\" title=\"Annual Planning\">link</a> to show the Annual Planning.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string url = baseUrl + "/AnnualPlannings/Details/" + annualPlanning.AnnualPlanningID; emailTransact.SentEmailApproval(emp.Email, emp.Name, activname, emailContent, url); } } } } db.Entry(annualPlanning).State = EntityState.Modified; string username = User.Identity.Name; db.Configuration.ProxyCreationEnabled = false; AnnualPlanning oldData = db.AnnualPlannings.AsNoTracking().Where(p => p.AnnualPlanningID.Equals(annualPlanning.AnnualPlanningID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", annualPlanning.AnnualPlanningID, "AnnualPlanning", oldData, annualPlanning, username); db.SaveChanges(); TempData["message"] = "Annual Planning successfully updated!"; return(RedirectToAction("Index")); } ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", annualPlanning.ActivityID); return(View(annualPlanning)); }
public ActionResult DeleteConfirmed(int id) { db.Configuration.ProxyCreationEnabled = false; string username = User.Identity.Name; AnnualPlanning annualPlanning = db.AnnualPlannings.Find(id); AnnualPlanning emp = new AnnualPlanning(); db.AnnualPlannings.Remove(annualPlanning); db.SaveChanges(); auditTransact.CreateAuditTrail("Delete", id, "AnnualPlanning", annualPlanning, emp, username); TempData["message"] = "Annual Planning successfully deleted!"; return(RedirectToAction("Index")); }
// GET: AnnualPlannings/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AnnualPlanning annualPlanning = db.AnnualPlannings.Find(id); if (annualPlanning == null) { return(HttpNotFound()); } return(View(annualPlanning)); }
//GET: AnnualPlannings/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AnnualPlanning annualPlanning = db.AnnualPlannings.Find(id); if (annualPlanning == null) { return(HttpNotFound()); } annualPlanning.Enga = (from b in db.EngagementActivities where b.ActivityID == annualPlanning.ActivityID select b).ToList(); return(View(annualPlanning)); }
public ActionResult Create(string submit, [Bind(Include = "AnnualPlanningID,Date_Start,Date_End,Status,Approval_Status,Tahun,ActivityID,PICID,SupervisorID,TeamLeaderID,MemberID")] AnnualPlanning annualPlanning, string[] member, string supervisor, string pic, string leader, EngagementActivity engagementActivity) { if (ModelState.IsValid) { HttpServerUtilityBase server = Server; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { annualPlanning.Approval_Status = "Draft"; } else if (submit == "Approve") { annualPlanning.Approval_Status = "Approve"; } else if (submit == "Send Back") { annualPlanning.Approval_Status = HelperController.GetStatusSendback(db, "Annual Planning", annualPlanning.Approval_Status); } else if (submit == "Submit For Review By" + user) { annualPlanning.Approval_Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { annualPlanning.Approval_Status = "Pending for Approve by" + user; string activname = db.Activities.Where(p => p.ActivityID.Equals(annualPlanning.ActivityID)).Select(p => p.Name).FirstOrDefault(); string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> UserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> EmpList = new List <Employee>(); if (UserIds.Count() > 0) { var users = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (UserIds.Contains(p.Id))).ToList(); foreach (var userr in users) { Employee emp = db.Employees.Where(p => p.Email.Equals(userr.Email)).FirstOrDefault(); if (emp != null) { string emailContent = "Dear {0}, <BR/><BR/>There is a Annual Planning that need your approval. Please click on this <a href=\"{2}\" title=\"Annual Planning\">link</a> to show the Annual Planning.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string url = baseUrl + "/AnnualPlannings/Details/" + annualPlanning.AnnualPlanningID; emailTransact.SentEmailApproval(emp.Email, emp.Name, activname, emailContent, url); } } } } db.AnnualPlannings.Add(annualPlanning); db.SaveChanges(); string username = User.Identity.Name; AnnualPlanning an = new AnnualPlanning(); auditTransact.CreateAuditTrail("Create", annualPlanning.AnnualPlanningID, "AnnualPlanning", an, annualPlanning, username); ReviewRelationMaster rrm = new ReviewRelationMaster(); string page = "apl"; rrm.Description = page + annualPlanning.AnnualPlanningID; db.ReviewRelationMasters.Add(rrm); db.SaveChanges(); TempData["message"] = "Annual Planning successfully created!"; return(RedirectToAction("Index")); } ActivityServices activity = new ActivityServices(); var activities = activity.GetActivity().Where(p => p.Status == "Approve"); IEnumerable <SelectListItem> activityid = activities .Select(d => new SelectListItem { Value = d.ActivityID.ToString(), Text = d.Name }); ViewBag.ActivityID = activityid; ViewBag.membereng = new MultiSelectList(db.Employees, "EmployeeID", "Name"); ViewBag.membereng1 = new MultiSelectList(db.Employees, "EmployeeID", "Name"); return(View(annualPlanning)); }