public ActionResult DeleteConfirmed(int id) { context.Configuration.ProxyCreationEnabled = false; string username = User.Identity.Name; ConsultingLetterOfCommand consultingletterofcommand = context.ConsultingLetterOfCommands.Single(x => x.ConsultingSuratPerintahID == id); ConsultingLetterOfCommand conletcom = new ConsultingLetterOfCommand(); ConsultingLetterOfCommandDetailDasar conletdas = new ConsultingLetterOfCommandDetailDasar(); ConsultingLetterOfCommandDetailUntuk conletunt = new ConsultingLetterOfCommandDetailUntuk(); ConsultingLetterOfCommandDetailTembusan conlettem = new ConsultingLetterOfCommandDetailTembusan(); context.ConsultingLetterOfCommands.Remove(consultingletterofcommand); var iduntuk = context.ConsultingLetterOfCommandDetailUntuks.Where(p => p.ConsultingSuratPerintahID.Equals(id)).Select(p => p.ConsultingLetterOfCommandDetailUntukID).FirstOrDefault(); var idtembusan = context.ConsultingLetterOfCommandDetailTembusans.Where(p => p.ConsultingSuratPerintahID.Equals(id)).Select(p => p.ConsultingLetterOfCommandDetailTembusanID).FirstOrDefault(); var iddasar = context.ConsultingLetterOfCommandDetailDasars.Where(p => p.ConsultingSuratPerintahID.Equals(id)).Select(p => p.ConsultingLetterOfCommandDetailDasarID).FirstOrDefault(); var Ldasar = context.ConsultingLetterOfCommandDetailDasars.Find(iddasar); var Ltembusan = context.ConsultingLetterOfCommandDetailTembusans.Find(idtembusan); var Luntuk = context.ConsultingLetterOfCommandDetailUntuks.Find(iduntuk); context.ConsultingLetterOfCommandDetailDasars.Remove(Ldasar); context.ConsultingLetterOfCommandDetailTembusans.Remove(Ltembusan); context.ConsultingLetterOfCommandDetailUntuks.Remove(Luntuk); context.SaveChanges(); auditTransact.CreateAuditTrail("Delete", id, "Consulting Letter Of Command", consultingletterofcommand, conletcom, username); auditTransact.CreateAuditTrail("Delete", id, "Consulting Letter Of Command Dasar", Ldasar, conletdas, username); auditTransact.CreateAuditTrail("Delete", id, "Consulting Letter Of Command Untuk", Luntuk, conletunt, username); auditTransact.CreateAuditTrail("Delete", id, "Consulting Letter Of Command Tembusan", Ltembusan, conlettem, username); TempData["message"] = "Consulting Letter Of Command successfully deleted!"; return(RedirectToAction("Index")); }
public ActionResult Create([Bind(Include = "ConsultingSuratPerintahID,NomorSP,ConsultingRequestID,EngagementName,EngagementID,StartDate,EndDate,PicID,SupervisorID,TeamLeaderID,Menimbang,Penutup,MemberID,Remarks")] ConsultingLetterOfCommand consultingletterofcommand, EngagementActivity engagementActivity, string ActivityName, string submit, string[] member, string ConsultingRequest, ConsultingLetterOfCommandDetailDasar Ldasar, ConsultingLetterOfCommandDetailTembusan Ltembusan, ConsultingLetterOfCommandDetailUntuk Luntuk, string[] dasar, string[] tembusan, string[] untuk) { if (ModelState.IsValid) { string username = User.Identity.Name; IQueryable <ConsultingRequest> cr = context.ConsultingRequests.Where(p => p.NoRequest.Equals(ConsultingRequest)); int ConsulId = 0; if (cr.Count() > 0 || cr != null) { ConsulId = cr.Select(p => p.ConsultingRequestID).FirstOrDefault(); } consultingletterofcommand.ConsultingRequestID = ConsulId; foreach (var mb in member) { consultingletterofcommand.MemberID += mb + ";"; } string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingletterofcommand.Status = "Draft"; } else if (submit == "Send Back") { consultingletterofcommand.Status = HelperController.GetStatusSendback(context, "Consulting Surat Perintah", consultingletterofcommand.Status); } else if (submit == "Approve") { consultingletterofcommand.Status = "Approve"; } else if (submit == "Submit For Review By" + user) { consultingletterofcommand.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingletterofcommand.Status = "Pending for Approve by" + user; } context.ConsultingLetterOfCommands.Add(consultingletterofcommand); //Engagement Activity //IQueryable<Activity> act = context.Activities.Where(p => p.Name.Equals(ActivityName)); //int ActivityID = 0; //if (act.Count() > 0 || act != null) // ActivityID = act.Select(p => p.ActivityID).FirstOrDefault(); engagementActivity.ActivityStr = ActivityName; engagementActivity.Name = consultingletterofcommand.EngagementName; engagementActivity.PICID = consultingletterofcommand.PicID; engagementActivity.TeamLeaderID = consultingletterofcommand.TeamLeaderID; engagementActivity.SupervisorID = consultingletterofcommand.SupervisorID; engagementActivity.MemberID = consultingletterofcommand.MemberID; context.EngagementActivities.Add(engagementActivity); //Letter of Command Dasar Ldasar.ConsultingSuratPerintahID = consultingletterofcommand.ConsultingSuratPerintahID; Ldasar.Dasar = null; foreach (var ds in dasar) { Ldasar.Dasar += ds + ";"; } context.ConsultingLetterOfCommandDetailDasars.Add(Ldasar); //Letter of Command Untuk Luntuk.ConsultingSuratPerintahID = consultingletterofcommand.ConsultingSuratPerintahID; Luntuk.Untuk = null; foreach (var utk in untuk) { Luntuk.Untuk += utk + ";"; } context.ConsultingLetterOfCommandDetailUntuks.Add(Luntuk); //Letter of Command Tembusan Ltembusan.ConsultingSuratPerintahID = consultingletterofcommand.ConsultingSuratPerintahID; Ltembusan.Tembusan = null; foreach (var tmb in tembusan) { Ltembusan.Tembusan += tmb + ";"; } context.ConsultingLetterOfCommandDetailTembusans.Add(Ltembusan); context.SaveChanges(); //assign engagementID in consulting SP consultingletterofcommand.EngagementID = engagementActivity.EngagementID; context.Entry(consultingletterofcommand).State = EntityState.Modified; //Review Relation Master ReviewRelationMaster rrm = new ReviewRelationMaster(); string page = "conleterdetail"; rrm.Description = page + consultingletterofcommand.ConsultingSuratPerintahID; context.ReviewRelationMasters.Add(rrm); context.SaveChanges(); ConsultingLetterOfCommand conletcom = new ConsultingLetterOfCommand(); ConsultingLetterOfCommandDetailDasar conletdasar = new ConsultingLetterOfCommandDetailDasar(); ConsultingLetterOfCommandDetailUntuk conletuntuk = new ConsultingLetterOfCommandDetailUntuk(); ConsultingLetterOfCommandDetailTembusan conlettembusan = new ConsultingLetterOfCommandDetailTembusan(); ConsultingLetterOfCommand conletnew = context.ConsultingLetterOfCommands.Find(consultingletterofcommand.ConsultingSuratPerintahID); auditTransact.CreateAuditTrail("Create", consultingletterofcommand.ConsultingSuratPerintahID, "Consulting Letter Of Command", conletcom, conletnew, username); auditTransact.CreateAuditTrail("Create", Ldasar.ConsultingLetterOfCommandDetailDasarID, "Consulting Letter Of Command Dasar", conletdasar, Ldasar, username); auditTransact.CreateAuditTrail("Create", Luntuk.ConsultingLetterOfCommandDetailUntukID, "Consulting Letter Of Command Untuk", conletuntuk, Luntuk, username); auditTransact.CreateAuditTrail("Create", Ltembusan.ConsultingLetterOfCommandDetailTembusanID, "Consulting Letter Of Command Tembusan", conlettembusan, Ltembusan, username); TempData["message"] = "Consulting Letter Of Command successfully created!"; return(RedirectToAction("Index")); } return(View(consultingletterofcommand)); }
public ActionResult Edit([Bind(Include = "ConsultingSuratPerintahID,NomorSP,ConsultingRequestID,EngagementName,Status,StartDate,EndDate,PicID,SupervisorID,TeamLeaderID,Menimbang,Penutup,MemberID,Remarks,EngagementID")] ConsultingLetterOfCommand consultingletterofcommand, string ConsultingRequest, string enggname, string submit, string ActivityName, string[] member, string[] Dasar, string[] Untuk, string[] Tembusan) { if (ModelState.IsValid) { string username = User.Identity.Name; context.Configuration.ProxyCreationEnabled = false; IQueryable <ConsultingRequest> cr = context.ConsultingRequests.Where(p => p.NoRequest.Equals(ConsultingRequest)); int ConsulId = 0; if (cr.Count() > 0 || cr != null) { ConsulId = cr.Select(p => p.ConsultingRequestID).FirstOrDefault(); } consultingletterofcommand.ConsultingRequestID = ConsulId; if (member != null) { foreach (var mb in member) { consultingletterofcommand.MemberID += mb + ";"; } } else { consultingletterofcommand.MemberID += ";"; } string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingletterofcommand.Status = "Draft"; } else if (submit == "Send Back") { consultingletterofcommand.Status = HelperController.GetStatusSendback(context, "Consulting Surat Perintah", consultingletterofcommand.Status); } else if (submit == "Approve") { consultingletterofcommand.Status = "Approve"; } else if (submit == "Submit For Review By" + user) { consultingletterofcommand.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingletterofcommand.Status = "Pending for Approve by" + user; } ConsultingLetterOfCommand oldData = context.ConsultingLetterOfCommands.AsNoTracking().Where(p => p.ConsultingSuratPerintahID.Equals(consultingletterofcommand.ConsultingSuratPerintahID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", consultingletterofcommand.ConsultingSuratPerintahID, "Consulting Letter Of Command", oldData, consultingletterofcommand, username); context.Entry(consultingletterofcommand).State = EntityState.Modified; context.SaveChanges(); ConsultingLetterOfCommandDetailDasar ConsultingletterOfCommandDetailDasar = context.ConsultingLetterOfCommandDetailDasars.Where(p => p.ConsultingSuratPerintahID == consultingletterofcommand.ConsultingSuratPerintahID).FirstOrDefault(); ConsultingletterOfCommandDetailDasar.Dasar = null; if (Dasar != null) { foreach (var ab in Dasar) { ConsultingletterOfCommandDetailDasar.Dasar += ab + ";"; } } else { ConsultingletterOfCommandDetailDasar.Dasar = ";"; } ConsultingLetterOfCommandDetailUntuk ConsultingletterOfCommandDetailUntuk = context.ConsultingLetterOfCommandDetailUntuks.Where(p => p.ConsultingSuratPerintahID == consultingletterofcommand.ConsultingSuratPerintahID).FirstOrDefault(); ConsultingletterOfCommandDetailUntuk.Untuk = null; if (Untuk != null) { foreach (var cd in Untuk) { ConsultingletterOfCommandDetailUntuk.Untuk += cd + ";"; } } else { ConsultingletterOfCommandDetailUntuk.Untuk = ";"; } ConsultingLetterOfCommandDetailTembusan ConsultingletterOfCommandDetailTembusan = context.ConsultingLetterOfCommandDetailTembusans.Where(p => p.ConsultingSuratPerintahID == consultingletterofcommand.ConsultingSuratPerintahID).FirstOrDefault(); ConsultingletterOfCommandDetailTembusan.Tembusan = null; if (Tembusan != null) { foreach (var ef in Tembusan) { ConsultingletterOfCommandDetailTembusan.Tembusan += ef + ";"; } } else { ConsultingletterOfCommandDetailTembusan.Tembusan = ";"; } var eng = context.EngagementActivities.Find(consultingletterofcommand.EngagementID); eng.Name = consultingletterofcommand.EngagementName; eng.PICID = consultingletterofcommand.PicID; eng.TeamLeaderID = consultingletterofcommand.TeamLeaderID; eng.SupervisorID = consultingletterofcommand.SupervisorID; eng.MemberID = consultingletterofcommand.MemberID; ConsultingLetterOfCommandDetailDasar oldDataDasar = context.ConsultingLetterOfCommandDetailDasars.AsNoTracking().Where(p => p.ConsultingLetterOfCommandDetailDasarID.Equals(ConsultingletterOfCommandDetailDasar.ConsultingLetterOfCommandDetailDasarID)).FirstOrDefault(); ConsultingLetterOfCommandDetailUntuk oldDataUntuk = context.ConsultingLetterOfCommandDetailUntuks.AsNoTracking().Where(p => p.ConsultingLetterOfCommandDetailUntukID.Equals(ConsultingletterOfCommandDetailUntuk.ConsultingLetterOfCommandDetailUntukID)).FirstOrDefault(); ConsultingLetterOfCommandDetailTembusan oldDataTembusan = context.ConsultingLetterOfCommandDetailTembusans.AsNoTracking().Where(p => p.ConsultingLetterOfCommandDetailTembusanID.Equals(ConsultingletterOfCommandDetailTembusan.ConsultingLetterOfCommandDetailTembusanID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", ConsultingletterOfCommandDetailDasar.ConsultingLetterOfCommandDetailDasarID, "Consulting Letter Of Command Dasar", oldDataDasar, ConsultingletterOfCommandDetailDasar, username); auditTransact.CreateAuditTrail("Update", ConsultingletterOfCommandDetailUntuk.ConsultingLetterOfCommandDetailUntukID, "Consulting Letter Of Command Untuk", oldDataUntuk, ConsultingletterOfCommandDetailUntuk, username); auditTransact.CreateAuditTrail("Update", ConsultingletterOfCommandDetailTembusan.ConsultingLetterOfCommandDetailTembusanID, "Consulting Letter Of Command Tembusan", oldDataTembusan, ConsultingletterOfCommandDetailTembusan, username); context.Entry(ConsultingletterOfCommandDetailDasar).State = EntityState.Modified; context.Entry(ConsultingletterOfCommandDetailUntuk).State = EntityState.Modified; context.Entry(ConsultingletterOfCommandDetailTembusan).State = EntityState.Modified; context.Entry(eng).State = EntityState.Modified; context.SaveChanges(); TempData["message"] = "Consulting Letter Of Command successfully updated!"; return(RedirectToAction("Index")); } return(View(consultingletterofcommand)); }