public ActionResult Edit([Bind(Include = "ConsultingDraftAgreementID,NoRequest,NoSurat,RequesterID,Date_Start,ActivityStr,Tujuan,RuangLingkup,Peran,Status")] ConsultingDraftAgreement consultingDraftAgreement, string submit) { if (ModelState.IsValid) { string username = User.Identity.Name; db.Configuration.ProxyCreationEnabled = false; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingDraftAgreement.Status = "Draft"; } else if (submit == "Send Back") { consultingDraftAgreement.Status = HelperController.GetStatusSendback(db, "Consulting Draft Agreement", consultingDraftAgreement.Status); } else if (submit == "Approve") { consultingDraftAgreement.Status = "Approve"; } else if (submit == "Submit For Review By" + user) { consultingDraftAgreement.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingDraftAgreement.Status = "Pending for Approve by" + user; string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> CIAUserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> CIAEmpList = new List <Employee>(); if (CIAUserIds.Count() > 0) { var CIAUsers = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (CIAUserIds.Contains(p.Id))).ToList(); foreach (var CIAUser in CIAUsers) { Employee empl = db.Employees.Where(p => p.Email.Equals(CIAUser.Email)).FirstOrDefault(); string emailContent = "Dear {0}, <BR/><BR/>Consulting Draft Agreement : {1} need your approval. Please click on this <a href=\"{2}\" title=\"CDA\">link</a> to show the Consulting Draft Agreement.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urlRequest = baseUrl + "/ConsultingDraftAgreements/Details/" + consultingDraftAgreement.ConsultingDraftAgreementID; emailTransact.SentEmailApproval(empl.Email, empl.Name, consultingDraftAgreement.NoSurat, emailContent, urlRequest); } } } ConsultingDraftAgreement oldData = db.ConsultingDraftAgreements.AsNoTracking().Where(p => p.ConsultingDraftAgreementID.Equals(consultingDraftAgreement.ConsultingDraftAgreementID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", consultingDraftAgreement.ConsultingDraftAgreementID, "Consulting Draft Agreement", oldData, consultingDraftAgreement, username); db.Entry(consultingDraftAgreement).State = EntityState.Modified; db.SaveChanges(); TempData["message"] = "Draft Agreement successfully updated!"; return(RedirectToAction("Index")); } //ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingDraftAgreement.ActivityID); return(View(consultingDraftAgreement)); }
public ActionResult Create([Bind(Include = "ConsultingDraftAgreementID,NoRequest,NoSurat,RequesterID,Date_Start,ActivityStr,Tujuan,RuangLingkup,Peran,Status")] ConsultingDraftAgreement consultingDraftAgreement) { if (ModelState.IsValid) { db.ConsultingDraftAgreements.Add(consultingDraftAgreement); db.SaveChanges(); TempData["message"] = "Draft Agreement successfully created!"; return(RedirectToAction("Index")); } //ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingDraftAgreement.ActivityID); return(View(consultingDraftAgreement)); }
public ActionResult DeleteConfirmed(int id) { db.Configuration.ProxyCreationEnabled = false; string username = User.Identity.Name; ConsultingDraftAgreement consultingDraftAgreement = db.ConsultingDraftAgreements.Find(id); ConsultingDraftAgreement condrag = new ConsultingDraftAgreement(); db.ConsultingDraftAgreements.Remove(consultingDraftAgreement); db.SaveChanges(); auditTransact.CreateAuditTrail("Delete", id, "Consulting Draft Agreement", consultingDraftAgreement, condrag, username); TempData["message"] = "Draft Agreement successfully deleted!"; return(RedirectToAction("Index")); }
// GET: ConsultingDraftAgreements/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingDraftAgreement consultingDraftAgreement = db.ConsultingDraftAgreements.Find(id); ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingDraftAgreement.RequesterID)).Select(p => p.Name).FirstOrDefault(); if (consultingDraftAgreement == null) { return(HttpNotFound()); } return(View(consultingDraftAgreement)); }
public ActionResult Preview(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingDraftAgreement consultingDraftAgreement = db.ConsultingDraftAgreements.Find(id); ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingDraftAgreement.RequesterID)).Select(p => p.Name).FirstOrDefault(); if (consultingDraftAgreement == null) { return(HttpNotFound()); } ViewBag.WordDocumentFilename = "KesepakatanBaru"; return(View(consultingDraftAgreement)); }
// GET: ConsultingDraftAgreements/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingDraftAgreement consultingDraftAgreement = db.ConsultingDraftAgreements.Find(id); if (consultingDraftAgreement == null) { return(HttpNotFound()); } ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingDraftAgreement.RequesterID)).Select(p => p.Name).FirstOrDefault(); ViewBag.datestart = consultingDraftAgreement.Date_Start.ToString("dd/MM/yyyy HH:mm"); //ViewBag.dateend = consultingDraftAgreement.Date_End.ToString("dd/MM/yyyy HH:mm"); return(View(consultingDraftAgreement)); }
public ActionResult Edit(string submit, string requester, [Bind(Include = "ConsultingRequestID,NoRequest,NoSurat,RequesterID,Date_Start,EvaluationResult,Status,ActivityStr")] ConsultingRequest consultingRequest, IEnumerable <HttpPostedFileBase> files) { if (ModelState.IsValid) { string username = User.Identity.Name; db.Configuration.ProxyCreationEnabled = false; int i = 0; HttpServerUtilityBase server = Server; List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; List <string> keepImages = new List <string>(); //object imagesTemp = Session["Images"]; var sessionImages = Session["Images"]; if (sessionImages != null) { Array arrKeepImages = (Array)sessionImages; foreach (var arrKeepImage in arrKeepImages) { keepImages.Add(arrKeepImage.ToString()); } bool getFiles = filesTransact.getFiles(consultingRequest.NoRequest.Replace("/", ""), out newFilesName, out paths, url, server); List <string> deletedFiles = paths.Except(keepImages).ToList(); bool deleteFiles = filesTransact.deleteFiles(deletedFiles, server); i = filesTransact.getLastNumberOfFiles(consultingRequest.NoRequest.Replace("/", ""), server); } foreach (var file in files) { if (file != null) { i = i + 1; bool addFile = filesTransact.addFile(consultingRequest.NoRequest.Replace("/", ""), i, file, server); } } Session.Remove("Images"); IQueryable <Employee> emp = db.Employees.Where(p => p.Name.Equals(requester)); int empId = 0; if (emp.Count() > 0 || emp != null) { empId = emp.Select(p => p.EmployeeID).FirstOrDefault(); } consultingRequest.RequesterID = empId; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingRequest.Status = "Draft"; } else if (submit == "Send Back") { consultingRequest.Status = HelperController.GetStatusSendback(db, "Consulting Request", consultingRequest.Status); } else if (submit == "Reject") { consultingRequest.Status = "Reject"; } else if (submit == "Approve") { consultingRequest.Status = "Approve"; ConsultingDraftAgreement consultingDraftAgreement = new ConsultingDraftAgreement(); consultingDraftAgreement.NoRequest = consultingRequest.NoRequest; consultingDraftAgreement.NoSurat = consultingRequest.NoSurat; consultingDraftAgreement.RequesterID = consultingRequest.RequesterID; consultingDraftAgreement.ActivityStr = consultingRequest.ActivityStr; //consultingDraftAgreement.ActivityID = consultingRequest.ActivityID; consultingDraftAgreement.Date_Start = consultingRequest.Date_Start; //consultingDraftAgreement.Date_End = consultingRequest.Date_End; consultingDraftAgreement.Status = "Draft"; db.ConsultingDraftAgreements.Add(consultingDraftAgreement); } else if (submit == "Submit For Review By" + user) { consultingRequest.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingRequest.Status = "Pending for Approve by" + user; string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> CIAUserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> CIAEmpList = new List <Employee>(); if (CIAUserIds.Count() > 0) { var CIAUsers = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (CIAUserIds.Contains(p.Id))).ToList(); foreach (var CIAUser in CIAUsers) { Employee empl = db.Employees.Where(p => p.Email.Equals(CIAUser.Email)).FirstOrDefault(); string emailContent = "Dear {0}, <BR/><BR/>Consulting Request : {1} need your approval. Please click on this <a href=\"{2}\" title=\"Consulting Request\">link</a> to show the Consulting Request.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urlRequest = baseUrl + "/ConsultingRequests/Details/" + consultingRequest.ConsultingRequestID; emailTransact.SentEmailApproval(empl.Email, empl.Name, consultingRequest.NoRequest, emailContent, urlRequest); } } } ConsultingRequest oldData = db.ConsultingRequests.AsNoTracking().Where(p => p.ConsultingRequestID.Equals(consultingRequest.ConsultingRequestID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", consultingRequest.ConsultingRequestID, "Consulting Request", oldData, consultingRequest, username); db.Entry(consultingRequest).State = EntityState.Modified; db.SaveChanges(); TempData["message"] = "Request successfully updated!"; return(RedirectToAction("Index")); } //ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingRequest.ActivityID); return(View(consultingRequest)); }