public ActionResult ProgressNew(MitigationActionModel ma)
        {
            ActionProgress    ap = new ActionProgress();
            MitigationsAction mc = new MitigationsAction();

            if (db.ActionProgresses.Count() == 0)
            {
                ap.ActionProgressID = 1;
            }
            else
            {
                var id = db.ActionProgresses.OrderByDescending(p => p.ActionProgressID).First();
                ap.ActionProgressID = id.ActionProgressID + 1;
            }

            ap.ActionID        = ma.actionId;
            ap.RecordDate      = DateTime.Now;
            ap.ActionProgress1 = ma.ActionProgress;
            db.ActionProgresses.Add(ap);
            db.SaveChanges();

            mc = db.MitigationsActions.Single(p => p.ActionID == ma.actionId);
            mc.TotalProgress = ma.ActionProgress;
            db.SaveChanges();

            return(RedirectToAction("ProgressIndex", new { id = ma.actionId }));
        }
        public ActionResult MitigationActionEdit(int id)
        {
            MitigationsAction     ma = new MitigationsAction();
            MitigationActionModel mm = new MitigationActionModel();

            ma = db.MitigationsActions.Single(p => p.ActionID == id);
            mm.mitigationactioncode = ma.ActionCode;
            var mid = db.RiskMitigations.Single(p => p.MitigationId == ma.MitigationId);

            mm.mitigationcode = mid.MitigationCode;
            mm.pic            = ma.PIC2;
            mm.require        = ma.Require;
            mm.limitDate      = ma.LimitDate;
            mm.isRKAP1        = (bool)ma.RKAPF;
            mm.actionId       = ma.ActionID;
            mm.actionName     = ma.ActionName;
            mm.mitigationid   = ma.MitigationId;
            mm.biaya          = ma.Biaya;
            if (ma.TotalProgress == null)
            {
                mm.totalProgress = 0;
            }
            else
            {
                mm.totalProgress = (decimal)ma.TotalProgress;
            }

            return(View(mm));
        }
        public ActionResult MitigationActionEdit(MitigationActionModel ma)
        {
            MitigationsAction ac = new MitigationsAction();

            ac = db.MitigationsActions.Single(m => m.ActionCode == ma.mitigationactioncode);

            ac.ActionName = ma.actionName;
            ac.LimitDate  = ma.limitDate;
            ac.PIC2       = ma.pic;
            ac.Require    = ma.require;
            ac.Biaya      = ma.biaya;
            ac.RKAPF      = ma.isRKAP1;
            db.SaveChanges();

            return(RedirectToAction("MitigationActionList", new { id = ac.MitigationId }));
        }
        public ActionResult MitigationActionNew(MitigationActionModel ma)
        {
            var userData = Utils.LoadUserDataFromSession();
            //if (ModelState.IsValid)
            //{
            //    try
            //    {
            //        using (TransactionScope trans = new TransactionScope())
            //        {
            MitigationsAction ac = new MitigationsAction();

            ac.ActionCode   = ma.mitigationactioncode;
            ac.MitigationId = ma.mitigationid;

            var rm = new RiskMitigation();

            rm = db.RiskMitigations.SingleOrDefault(p => p.MitigationId == ma.mitigationid);

            ac.ActionDate    = DateTime.Now;
            ac.ActionName    = ma.actionName;
            ac.BizUnitId     = userData.BizUnitId;
            ac.BranchId      = userData.BranchId;
            ac.DeptId        = userData.DeptId;
            ac.DivisionId    = userData.DivisionId;
            ac.LimitDate     = ma.limitDate;
            ac.PIC2          = ma.pic;
            ac.Require       = ma.require;
            ac.RKAPF         = ma.isRKAP1;
            ac.SubBranchId   = userData.SubBranchId;
            ac.SubDeptId     = userData.SubDeptId;
            ac.SubDivId      = userData.SubDivId;
            ac.UserId        = userData.UserId;
            ac.ImpactLevelId = rm.ImpactLevelId;
            ac.ImpactLevel   = rm.ImpactLevel;
            ac.ProbLevel     = rm.ProbLevel;
            ac.ProbLevelId   = rm.ProbLevelId;
            db.MitigationsActions.Add(ac);
            db.SaveChanges();

            ActionApproval    ap = new ActionApproval();
            MitigationsAction id = new MitigationsAction();

            id             = db.MitigationsActions.Single(p => p.ActionCode == ma.mitigationactioncode);
            ap.ActionID    = id.ActionID;
            ap.BizUnitId   = userData.BizUnitId;
            ap.BranchId    = userData.BranchId;
            ap.DeptId      = userData.DeptId;
            ap.DivisionId  = userData.DivisionId;
            ap.SubBranchId = userData.SubBranchId;
            ap.SubDeptId   = userData.SubDeptId;
            ap.SubDivId    = userData.SubDivId;
            db.ActionApprovals.Add(ap);
            db.SaveChanges();
            //            trans.Complete();
            return(RedirectToAction("MitigationActionEdit", new { id = id.ActionID }));
            //        }
            //    }
            //    catch
            //    {
            //        return View();
            //    }
            //}
            //return RedirectToAction("MitigationActionEdit");
        }