// GET: AuditPlanningMemorandums/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AuditPlanningMemorandum auditPlanningMemorandum = db.AuditPlanningMemorandums.Find(id); List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; HttpServerUtilityBase server = Server; bool getFiles = filesTransact.getFiles(auditPlanningMemorandum.NomerAPM.Replace("/", ""), out newFilesName, out paths, url, server); ViewBag.newFilesName = newFilesName; ViewBag.paths = paths; if (auditPlanningMemorandum == null) { return(HttpNotFound()); } ViewBag.SupervisorName = auditPlanningMemorandum.SupervisorID; ViewBag.TeamLeaderName = auditPlanningMemorandum.TeamLeaderID; ViewBag.PICIDName = auditPlanningMemorandum.PICID; ViewBag.MemberName = auditPlanningMemorandum.MemberID; ViewBag.NomerPrelim = db.Preliminaries.Where(p => p.PreliminaryID.Equals(auditPlanningMemorandum.PreliminaryID)).Select(p => p.NomorPreliminarySurvey).FirstOrDefault(); return(View(auditPlanningMemorandum)); }
// GET: AuditPlanningMemorandums/Create public ActionResult Create() { AnnualPlanningServices activity = new AnnualPlanningServices(); var activities = activity.GetAnnualPlanning().Where(p => p.Approval_Status == "Approve"); IEnumerable <SelectListItem> activityid = activities .Select(d => new SelectListItem { Value = d.AnnualPlanningID.ToString(), Text = d.Activity.Name }); string apmno = String.Empty; AuditPlanningMemorandum apm = db.AuditPlanningMemorandums.OrderByDescending(p => p.AuditPlanningMemorandumID).FirstOrDefault(); if (apm != null) { int nomerapm = Convert.ToInt32(apm.NomerAPM.Split('/')[1]) + 1; apmno = Convert.ToString("APM/" + nomerapm); } else { apmno = Convert.ToString("APM/" + 1); } ViewBag.apmnomer = apmno; return(View()); }
public async Task <ActionResult> Preview(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AuditPlanningMemorandum AuditPlanningMemorandum = await db.AuditPlanningMemorandums.FindAsync(id); ViewBag.WordDocumentFilename = "APM"; return(View(AuditPlanningMemorandum)); }
public string GetMember(string noapm) { AuditPlanningMemorandum apm = db.AuditPlanningMemorandums.Where(p => p.NomerAPM.Equals(noapm)).FirstOrDefault(); if (apm != null) { Preliminary pre = apm.Preliminary; //var memberId = pre.EngagementActivity.MemberID; //var teamleaderId = pre.EngagementActivity.TeamLeaderID; //var supervisorId = pre.EngagementActivity.SupervisorID; //var picId = pre.EngagementActivity.PICID; var memberId = apm.MemberID; var teamleaderId = apm.TeamLeaderID; var supervisorId = apm.SupervisorID; var picId = apm.PICID; string memberName = memberId; string nomerapm = apm.NomerAPM; //string engagement = pre.EngagementActivity.Name; string engagement = ""; if (apm.ActualEngagement != "" && apm.ActualEngagement != null) { engagement = apm.ActualEngagement; } else { engagement = pre.EngagementActivity.Name; } string activity = pre.Activity.Name; string apmStartDate = apm.Date_Start.ToShortDateString(); string apmEndDate = apm.Date_End.ToShortDateString(); if (teamleaderId == "" || supervisorId == "" || picId == "") { //string memberName = ""; string teamleaderName = ""; string supervisorName = ""; string picName = ""; string names = teamleaderName + "," + supervisorName + "," + picName; return(names + "," + memberName + "," + nomerapm + "," + engagement + "," + activity + ',' + apmStartDate + ',' + apmEndDate); } else { //string memberName = db.Employees.Find(memberId).Name; string teamleaderName = teamleaderId; string supervisorName = supervisorId; string picName = picId; string names = teamleaderName + "," + supervisorName + "," + picName; return(names + "," + memberName + "," + nomerapm + "," + engagement + "," + activity + ',' + apmStartDate + ',' + apmEndDate); } } else { return(",,,,,,"); } }
private bool sentSingleEmailAPM(string userToSentEmail, AuditPlanningMemorandum auditPlanningMemorandum) { string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); Employee emp = db.Employees.Where(p => p.Name.Equals(userToSentEmail)).FirstOrDefault(); if (emp != null) { string emailContent = "Dear {0}, <BR/><BR/>APM : {1} need your approval. Please click on this <a href=\"{2}\" title=\"APM\">link</a> to show the APM.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urll = baseUrl + "/AuditPlanningMemorandums/Details/" + auditPlanningMemorandum.AuditPlanningMemorandumID; emailTransact.SentEmailApproval(emp.Email, emp.Name, auditPlanningMemorandum.NomerAPM, emailContent, urll); } return(true); }
public ActionResult DeleteConfirmed(int id) { db.Configuration.ProxyCreationEnabled = false; string username = User.Identity.Name; AuditPlanningMemorandum auditPlanningMemorandum = db.AuditPlanningMemorandums.Find(id); AuditPlanningMemorandum aud = new AuditPlanningMemorandum(); db.AuditPlanningMemorandums.Remove(auditPlanningMemorandum); db.SaveChanges(); auditTransact.CreateAuditTrail("Delete", id, "AuditPlanningMemorandum", auditPlanningMemorandum, aud, username); TempData["message"] = "Audit Planning Memorandum successfully deleted!"; return(RedirectToAction("Index")); }
// GET: AuditPlanningMemorandums/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AuditPlanningMemorandum auditPlanningMemorandum = db.AuditPlanningMemorandums.Find(id); List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; HttpServerUtilityBase server = Server; var getFiles = filesTransact.getFiles(auditPlanningMemorandum.NomerAPM.Replace("/", ""), out newFilesName, out paths, url, server); ViewBag.newFilesName = newFilesName; ViewBag.paths = paths; if (auditPlanningMemorandum == null) { return(HttpNotFound()); } PreliminaryServices no = new PreliminaryServices(); var noap = no.GetPreliminary().Where(p => p.PreliminaryID == auditPlanningMemorandum.PreliminaryID); var memberId = db.AuditPlanningMemorandums.Find(auditPlanningMemorandum.AuditPlanningMemorandumID).MemberID; ViewBag.memberName = memberId; ViewBag.activid = db.Activities.Where(p => p.ActivityID.Equals(auditPlanningMemorandum.ActivityID)).Select(p => p.Name).FirstOrDefault(); ViewBag.supervisor = auditPlanningMemorandum.SupervisorID; ViewBag.leader = auditPlanningMemorandum.TeamLeaderID; ViewBag.pic = auditPlanningMemorandum.PICID; ViewBag.member = auditPlanningMemorandum.MemberID; ViewBag.nomer = db.Preliminaries.Where(p => p.PreliminaryID.Equals(auditPlanningMemorandum.PreliminaryID)).Select(p => p.NomorPreliminarySurvey).FirstOrDefault(); Preliminary pre = db.Preliminaries.Where(p => p.PreliminaryID.Equals(auditPlanningMemorandum.PreliminaryID)).FirstOrDefault(); ViewBag.enggname = pre.EngagementActivity.Name; return(View(auditPlanningMemorandum)); }
private bool sentEmailAPM(AuditPlanningMemorandum auditPlanningMemorandum, string 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 emp = db.Employees.Where(p => p.Email.Equals(CIAUser.Email)).FirstOrDefault(); if (emp != null) { string emailContent = "Dear {0}, <BR/><BR/>APM : {1} need your approval. Please click on this <a href=\"{2}\" title=\"APM\">link</a> to show the APM.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urll = baseUrl + "/AuditPlanningMemorandums/Details/" + auditPlanningMemorandum.AuditPlanningMemorandumID; emailTransact.SentEmailApproval(emp.Email, emp.Name, auditPlanningMemorandum.NomerAPM, emailContent, urll); } } } return(true); }
public ActionResult Update(string submit, [Bind(Include = "AuditPlanningMemorandumID,NomerAPM,PreliminaryID,Date_Start,Date_End,Status,ActivityID,TujuanAudit,RuangLingkupAudit,MetodologiAudit,DataDanDokumen,AttachmentMasterID,EntryMeetingDateStart,EntryMeetingDateEnd,WalktroughDateStart,WalktroughDateEnd,FieldWorkDateStart,FieldWorkDateEnd,ExitMeetingDateStart,ExitMeetingDateEnd,LHADateStart,LHADateEnd,PICID,SupervisorID,TeamLeaderID,MemberID,ReviewMasterID,Kesimpulan,ActualEngagement")] AuditPlanningMemorandum auditPlanningMemorandum, IEnumerable <HttpPostedFileBase> files) { if (ModelState.IsValid) { 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(auditPlanningMemorandum.NomerAPM.Replace("/", ""), out newFilesName, out paths, url, server); List <string> deletedFiles = paths.Except(keepImages).ToList(); bool deleteFiles = filesTransact.deleteFiles(deletedFiles, server); i = filesTransact.getLastNumberOfFiles(auditPlanningMemorandum.NomerAPM.Replace("/", ""), server); } foreach (var file in files) { if (file != null) { i = i + 1; bool addFile = filesTransact.addFile(auditPlanningMemorandum.NomerAPM.Replace("/", ""), i, file, server); } } Session.Remove("Images"); string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { auditPlanningMemorandum.Status = "Draft"; } else if (submit == "Send Back") { auditPlanningMemorandum.Status = HelperController.GetStatusSendback(db, "Audit Planning Memorandum", auditPlanningMemorandum.Status); } else if (submit == "Approve") { auditPlanningMemorandum.Status = "Approve"; } else if (submit == "Submit For Review By" + user) { auditPlanningMemorandum.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { auditPlanningMemorandum.Status = "Pending for Approve by" + user; string userToSentEmail = String.Empty; if (user.Trim() == "CIA") { userToSentEmail = auditPlanningMemorandum.PICID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Pengawas") { userToSentEmail = auditPlanningMemorandum.SupervisorID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Ketua Tim") { userToSentEmail = auditPlanningMemorandum.TeamLeaderID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Member") { userToSentEmail = auditPlanningMemorandum.MemberID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } } db.Entry(auditPlanningMemorandum).State = EntityState.Modified; string username = User.Identity.Name; db.Configuration.ProxyCreationEnabled = false; AuditPlanningMemorandum oldData = db.AuditPlanningMemorandums.AsNoTracking().Where(p => p.AuditPlanningMemorandumID.Equals(auditPlanningMemorandum.AuditPlanningMemorandumID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", auditPlanningMemorandum.AuditPlanningMemorandumID, "AuditPlanningMemorandum", oldData, auditPlanningMemorandum, username); db.SaveChanges(); TempData["message"] = "Audit Planning Memorandum successfully updated!"; return(RedirectToAction("Index")); } return(View(auditPlanningMemorandum)); }
public ActionResult Create(string nomerapm, string membernull, string enggname, EngagementActivity engga, AuditPlanningMemorandum audit, [Bind(Include = "AuditPlanningMemorandumID,NomerAPM,PreliminaryID,Date_Start,Date_End,Status,ActivityID,TujuanAudit,RuangLingkupAudit,MetodologiAudit,DataDanDokumen,AttachmentMasterID,EntryMeetingDateStart,EntryMeetingDateEnd,WalktroughDateStart,WalktroughDateEnd,FieldWorkDateStart,FieldWorkDateEnd,ExitMeetingDateStart,ExitMeetingDateEnd,LHADateStart,LHADateEnd,PICID,SupervisorID,TeamLeaderID,MemberID,ReviewMasterID,Kesimpulan,ActualEngagement")] AuditPlanningMemorandum auditPlanningMemorandum, IEnumerable <HttpPostedFileBase> files, string submit, string[] members, string supervisor, string pic, string leader, string nomer, string activid) { if (ModelState.IsValid) { HttpServerUtilityBase server = Server; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { auditPlanningMemorandum.Status = "Draft"; } else if (submit == "Send Back") { HelperController.GetStatusSendback(db, "Audit Planning Memorandum", auditPlanningMemorandum.Status); } else if (submit == "Approve") { auditPlanningMemorandum.Status = "Approve"; } else if (submit == "Submit For Review By" + user) { auditPlanningMemorandum.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { auditPlanningMemorandum.Status = "Pending for Approve by" + user; string userToSentEmail = String.Empty; if (user.Trim() == "CIA") { userToSentEmail = auditPlanningMemorandum.PICID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Pengawas") { userToSentEmail = auditPlanningMemorandum.SupervisorID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Ketua Tim") { userToSentEmail = auditPlanningMemorandum.TeamLeaderID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } else if (user.Trim() == "Member") { userToSentEmail = auditPlanningMemorandum.MemberID; if (userToSentEmail != null) { sentSingleEmailAPM(userToSentEmail, auditPlanningMemorandum); } else { sentEmailAPM(auditPlanningMemorandum, user.Trim()); } } } foreach (var mem in members) { auditPlanningMemorandum.MemberID += mem + ";"; } IQueryable <Preliminary> prel = db.Preliminaries.Where(p => p.NomorPreliminarySurvey.Equals(nomer)); int preID = 0; if (prel.Count() > 0 || prel != null) { preID = prel.Select(p => p.PreliminaryID).FirstOrDefault(); } auditPlanningMemorandum.PreliminaryID = preID; auditPlanningMemorandum.SupervisorID = supervisor; auditPlanningMemorandum.TeamLeaderID = leader; auditPlanningMemorandum.PICID = pic; IQueryable <Activity> act = db.Activities.Where(p => p.Name.Equals(activid)); int actid = 0; if (act.Count() > 0 || act != null) { actid = act.Select(p => p.ActivityID).FirstOrDefault(); } auditPlanningMemorandum.ActivityID = actid; auditPlanningMemorandum.NomerAPM = nomerapm; db.AuditPlanningMemorandums.Add(auditPlanningMemorandum); db.SaveChanges(); int i = 0; foreach (var file in files) { if (file != null) { i = i + 1; bool addFile = filesTransact.addFile(auditPlanningMemorandum.NomerAPM.Replace("/", ""), i, file, server); } } ReviewRelationMaster rrm = new ReviewRelationMaster(); string page = "apm"; rrm.Description = page + auditPlanningMemorandum.AuditPlanningMemorandumID; db.ReviewRelationMasters.Add(rrm); db.SaveChanges(); string username = User.Identity.Name; AuditPlanningMemorandum au = new AuditPlanningMemorandum(); auditTransact.CreateAuditTrail("Create", auditPlanningMemorandum.AuditPlanningMemorandumID, "AuditPlanningMemorandum", au, auditPlanningMemorandum, username); TempData["message"] = "Audit Planning Memorandum successfully created!"; return(RedirectToAction("Index")); } return(View(auditPlanningMemorandum)); }