// GET: ExitMeetings/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            MonitoringTindakLanjut monitoring = db.MonitoringTindakLanjut.Find(id);

            if (monitoring == null)
            {
                return(HttpNotFound());
            }

            return(View(monitoring));
        }
Beispiel #2
0
        public bool UpdateManagementResponse(int issueID, string managementResponse, string issueStatus, string dueDate, string picName, int emId)
        {
            RCMDetailRiskControlIssue issue = db.RCMDetailRiskControlIssue.Find(issueID);

            issue.ManagementResponse = managementResponse;
            issue.Status             = issueStatus;
            issue.Due_Date           = dueDate;
            issue.PICID           = picName != String.Empty ? db.Employees.Where(p => p.Name.Equals(picName)).FirstOrDefault().Name : null;
            db.Entry(issue).State = EntityState.Modified;
            if (issueStatus == "Agree")
            {
                FieldWork fw = db.FieldWorks.Where(p => p.RiskControlMatrixID.Equals(issue.RCMDetailRiskControl.RCMDetailRisk.RiskControlMatrixID)).FirstOrDefault();
                MonitoringTindakLanjut mon1 = db.MonitoringTindakLanjut.Where(d => d.RCMDetailRiskControlIssueID == issue.RCMDetailRiskControlIssueID && d.LetterOfCommandID == fw.LetterOfCommandID).FirstOrDefault();
                if (mon1 != null)
                {
                    db.MonitoringTindakLanjut.Remove(mon1);
                }

                MonitoringTindakLanjut mon = new MonitoringTindakLanjut();
                mon.RCMDetailRiskControlIssueID = issue.RCMDetailRiskControlIssueID;
                mon.Status            = "Open";
                mon.LetterOfCommandID = fw.LetterOfCommandID;
                db.MonitoringTindakLanjut.Add(mon);
            }
            else
            {
                FieldWork fw = db.FieldWorks.Where(p => p.RiskControlMatrixID.Equals(issue.RCMDetailRiskControl.RCMDetailRisk.RiskControlMatrixID)).FirstOrDefault();
                MonitoringTindakLanjut mon = db.MonitoringTindakLanjut.Where(d => d.RCMDetailRiskControlIssueID == issue.RCMDetailRiskControlIssueID && d.LetterOfCommandID == fw.LetterOfCommandID).FirstOrDefault();
                if (mon != null)
                {
                    db.MonitoringTindakLanjut.Remove(mon);
                }
            }
            ExitMeeting em = db.ExitMeetings.Find(emId);

            //em.StatusTanggapan = "Closed";
            db.Entry(em).State = EntityState.Modified;
            db.SaveChanges();
            return(true);
        }
        public ActionResult Edit([Bind(Include = "RCMDetailRiskControlIssueID,RCMDetailRiskControlID,NoRef,Title,Fact,Criteria,Impact,ImpactValue,Cause,Recommendation,ManagementResponse,FindingType,Status,Status_Approval,Status_App,Signification,Due_Date,Close_Date,CaseClose")] RCMDetailRiskControlIssue issue, IEnumerable <HttpPostedFileBase> files, string PICID)
        {
            if (ModelState.IsValid)
            {
                MonitoringTindakLanjut dbitem = db.MonitoringTindakLanjut.Where(d => d.RCMDetailRiskControlIssueID == issue.RCMDetailRiskControlIssueID).FirstOrDefault();
                if (dbitem != null)
                {
                    if (issue.CaseClose == "true")
                    {
                        dbitem.Status = "Close";
                    }
                    else
                    {
                        dbitem.Status = "Open";
                    }
                    db.Configuration.ProxyCreationEnabled = false;
                    db.Entry(dbitem).State = EntityState.Modified;
                    db.SaveChanges();
                }


                string username = User.Identity.Name;
                db.Configuration.ProxyCreationEnabled = false;
                RCMDetailRiskControlIssue oldData = db.RCMDetailRiskControlIssue.AsNoTracking().Where(p => p.RCMDetailRiskControlIssueID.Equals(issue.RCMDetailRiskControlIssueID)).FirstOrDefault();
                //auditTransact.CreateAuditTrail("Update", issue.RCMDetailRiskControlIssueID, "RCM Control Issue", oldData, issue, username);
                issue.PICID           = PICID;
                db.Entry(issue).State = EntityState.Modified;
                db.SaveChanges();
                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());
                    }
                    var           iss          = issue.NoRef.Split('/')[0] + issue.NoRef.Split('/')[1];
                    var           no           = issue.NoRef.Split('/')[2];
                    bool          getFiles     = filesTransact.getFiles(iss + no, out newFilesName, out paths, url, server);
                    List <string> deletedFiles = paths.Except(keepImages).ToList();
                    bool          deleteFiles  = filesTransact.deleteFiles(deletedFiles, server);

                    i = filesTransact.getLastNumberOfFiles(iss + no, server);
                }
                foreach (var file in files)
                {
                    if (file != null)
                    {
                        i = i + 1;
                        var  iss     = issue.NoRef.Split('/')[0] + issue.NoRef.Split('/')[1];
                        var  no      = issue.NoRef.Split('/')[2];
                        bool addFile = filesTransact.addFile(iss + no, i, file, server);
                    }
                }
                Session.Remove("Images");
                return(RedirectToAction("Index"));
            }
            return(View(issue));
        }