Beispiel #1
0
        public PartialViewResult IndexLessonsAddGridView(LL_IndexGridRowModel rowModel)
        {
            dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);

            BusinessUnitModel objBU = ServiceSystem.GetBusinessUnitByRigId(UtilitySystem.Settings.RigId);

            if (ModelState.IsValid)
            {
                var newLesson = new LessonLearnedModel()
                {
                    DateStarted       = DateTimeOffset.Now,
                    Title             = rowModel.Title,
                    ImpactLevel       = rowModel.ImpactLevel,
                    Status            = LessonsLearnedStatus.Open.ToString(),
                    SourceForm        = "Lessons Learned",
                    SourceRigFacility = UtilitySystem.Settings.RigId,
                    SourceBU          = objBU.Id,
                    TypeId            = rowModel.TypeId
                };
                dataModel.Add(newLesson);
            }
            else
            {
                ViewData["UpdateError"] = true;
            }
            return(IndexLessonsGridView());
        }
Beispiel #2
0
        public ActionResult ApprovalProcessApproval(int Id, int ApprovalId, int Approver, int Status, string Comment)
        {
            string                comment       = (Comment == "null") ? "" : Comment; // DevExpress sending the 'null' string when textbox is empty
            LessonLearnedModel    lessonLearned = (LessonLearnedModel)Session["LessonLearnedModel"];
            IIrmaServiceDataModel serviceSystem = IrmaServiceSystem.GetServiceModel(IrmaConstants.IrmaPobModels.Approval);
            ApprovalModel         approval      = serviceSystem.GetItem(string.Format("Id={0}", ApprovalId), "Id");

            approval.ApprovedDate     = DateTime.Now;
            approval.ApproverComments = Comment;
            approval.Status           = Status;
            lessonLearned.Approvals.FirstOrDefault(a => a.Id == ApprovalId).Status = Status;
            switch (Status)
            {
            case (int)IrmaConstants.ApprovalStatus.Approved:
                var approvedCount = lessonLearned.GetApprovals().Where(a => a.Status == (int)IrmaConstants.ApprovalStatus.Approved).Count();
                var totalCount    = lessonLearned.GetApprovals().Count();
                if (approvedCount == totalCount)     // Proceeds with the workflow / auto close
                {
                    lessonLearned.Status = "Closed";
                }
                break;

            case (int)IrmaConstants.ApprovalStatus.Rejected:
                lessonLearned.Status      = "Rejected";
                approval.ApproverComments = Comment;
                break;
            }
            dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            dataModel.Update(lessonLearned);
            serviceSystem.Update(approval);

            return(RedirectToAction("Edit", new { Id = Id }));
        }
Beispiel #3
0
        public ActionResult Cancel(int id)
        {
            LessonLearnedModel lessonLearned = OAPServiceSystem.GetLessonLearned(id);

            lessonLearned.Status = "Canceled";
            dataModel            = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            dataModel.Update(lessonLearned);
            return(RedirectToAction("Index"));
        }
Beispiel #4
0
        public ActionResult LessonsLearnedOriginatorsPartial()
        {
            LessonLearnedModel model = (LessonLearnedModel)Session["LessonLearnedModel"];

            ViewBag.IsEditable = model.IsEditable;
            foreach (var originator in model.Originators)
            {
                var user = ServiceSystem.GetUser(originator.PassportId);
                originator.Position = (int)user.Position;
            }
            return(PartialView("LessonLearnedOriginatorsPartial", model.Originators));
        }
Beispiel #5
0
        public static void AddApprover(ApprovalModel approvalModel, LessonLearnedModel lessonLearned)
        {
            IIrmaServiceDataModel dataModel = IrmaServiceSystem.GetServiceModel(IrmaConstants.IrmaPobModels.Approval);
            var approver = ServiceSystem.GetUser((int)approvalModel.Approver);

            approvalModel.Type          = (int)ApprovalModel.ApprovalType.LessonsLearnedApproval;
            approvalModel.RequestItemId = lessonLearned.Id;
            approvalModel.Name          = lessonLearned.Title;
            approvalModel.Requester     = UtilitySystem.CurrentUserId;
            approvalModel.RequestedDate = DateTime.Now;
            approvalModel.Position      = (int)approver.Position;

            approvalModel = dataModel.Add(approvalModel);
            lessonLearned.Approvals.Add(approvalModel);
        }
Beispiel #6
0
        public ActionResult Close(int?id)
        {
            if (!id.HasValue)
            {
                return(RedirectToAction("Index"));
            }

            dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            LessonLearnedModel lessonLearned = OAPServiceSystem.GetLessonLearned(id.Value);

            lessonLearned.Status          = "Closed";
            Session["LessonLearnedModel"] = lessonLearned;
            dataModel.Update(lessonLearned);

            return(RedirectToAction("Index"));
        }
Beispiel #7
0
        public ActionResult Edit(int id)
        {
            LessonLearnedModel lessonLearned = OAPServiceSystem.GetLessonLearned(id);

            Session["LessonLearnedModel"] = lessonLearned;
            ViewBag.LessonStatus          = lessonLearned.Status;

            LessonLearnedViewBag(ViewBag);
            ViewBag.IsEditable   = lessonLearned.IsEditable;
            ViewBag.ImpactLevels = Enum.GetNames(typeof(LessonsLearnedImpact)).ToList();

            if (lessonLearned != null)
            {
                return(View("LessonForm", lessonLearned));
            }
            return(RedirectToAction("Index"));
        }
Beispiel #8
0
        public ActionResult SubmitForApproval()
        {
            LessonLearnedModel lessonLearned = (LessonLearnedModel)Session["LessonLearnedModel"];

            if (lessonLearned == null)
            {
                return(RedirectToAction("Index"));
            }
            var approvals         = lessonLearned.Approvals.Where(a => a.Type == (int)ApprovalModel.ApprovalType.LessonsLearnedApproval);
            var approvalDataModel = IrmaServiceSystem.GetServiceModel(IrmaConstants.IrmaPobModels.Approval);

            foreach (var approval in approvals)
            {
                approval.Status = (int)IrmaConstants.ApprovalStatus.PendingApproval;
                approvalDataModel.Update(approval);
            }
            lessonLearned.Status = "Pending Approval";
            dataModel            = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            dataModel.Update(lessonLearned);

            return(RedirectToAction("Edit", new { Id = lessonLearned.Id }));
        }
Beispiel #9
0
        public static LessonLearnedModel GetLessonLearned(int id)
        {
            var dataModel = GetServiceModel(OAPDataModelType.LessonLearned);
            LessonLearnedModel lessonLearned = dataModel.GetItem(string.Format("Id={0}", id), "Id");

            IIrmaServiceDataModel approvalDataModel = IrmaServiceSystem.GetServiceModel(IrmaConstants.IrmaPobModels.Approval);

            var approvals = approvalDataModel.GetItems(
                string.Format("RequestItemId={0}", lessonLearned.Id), "Id").Cast <ApprovalModel>().ToList();

            foreach (var approver in approvals)
            {
                var user = ServiceSystem.GetUser((int)approver.Approver);
                approver.Position = (int)user.Position;
                approver.Initialize();
            }
            lessonLearned.Approvals = approvals;

            dataModel = OAPServiceSystem.GetServiceModel(OAPDataModelType.LessonLearnedType);
            LessonLearnedType lessonType = (LessonLearnedType)dataModel.GetItem(string.Format("Id={0}", lessonLearned.TypeId), "Id");

            lessonLearned.Type = lessonType;

            lessonLearned.Attachments = ServiceSystem.GetAttachments("Lessons Learned", lessonLearned.Id.ToString());

            dataModel = GetServiceModel(OAPDataModelType.LessonLearnedOriginator);
            var originators = dataModel.GetItems(string.Format("LessonId={0}", lessonLearned.Id), "Id").Cast <LessonLearnedOriginatorModel>().ToList();

            foreach (var originator in originators)
            {
                var user = ServiceSystem.GetUser(originator.PassportId);
                originator.Position = (int)user.Position;
            }
            lessonLearned.Originators = originators;

            return(lessonLearned);
        }
Beispiel #10
0
        public PartialViewResult ControlAddGridRow(LL_IndexGridRowModel rowModel, string SourceForm, int SourceFormId)
        {
            dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            BusinessUnitModel objBU = ServiceSystem.GetBusinessUnitByRigId(UtilitySystem.Settings.RigId);

            if (ModelState.IsValid)
            {
                var newLesson = new LessonLearnedModel()
                {
                    DateStarted       = DateTimeOffset.Now,
                    Title             = rowModel.Title,
                    ImpactLevel       = rowModel.ImpactLevel,
                    SourceRigFacility = UtilitySystem.Settings.RigId,
                    SourceBU          = objBU.Id,
                    TypeId            = rowModel.TypeId,
                    Status            = LessonsLearnedStatus.Open.ToString(),
                    SourceForm        = SourceForm,
                    SourceFormId      = SourceFormId,
                    SourceFormURL     = Request.UrlReferrer.AbsoluteUri
                };
                newLesson = dataModel.Add(newLesson);
                dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearnedOriginator);
                LessonLearnedOriginatorModel originator = new LessonLearnedOriginatorModel();
                originator.LessonId = newLesson.Id;
                string      key         = HttpContext.Session.SessionID + "_UserSessionInfo";
                UserSession userSession = (UserSession)HttpContext.Session[key];
                originator.PassportId  = userSession.UserId;
                originator.RigFacility = UtilitySystem.Settings.RigId;
                dataModel.Add(originator);
            }
            else
            {
                ViewBag.UpdateError = string.Join(",", ModelState.Values.SelectMany(e => e.Errors).Select(e => e.ErrorMessage));
            }
            return(Control(SourceForm, SourceFormId));
        }
Beispiel #11
0
        public RedirectToRouteResult Save([ModelBinder(typeof(DevExpressEditorsBinder))] LessonLearnedModel formLessonModel)
        {
            LessonLearnedModel lessonLearned = (LessonLearnedModel)Session["LessonLearnedModel"];
            List <LessonLearnedOriginatorModel> originators = lessonLearned.Originators;

            if (originators.Count == 0)
            {
                return(RedirectToAction("Edit", new { Id = lessonLearned.Id }));
            }

            lessonLearned.TypeId            = formLessonModel.TypeId;
            lessonLearned.Title             = formLessonModel.Title;
            lessonLearned.SourceBU          = formLessonModel.SourceBU;
            lessonLearned.SourceRigFacility = formLessonModel.SourceRigFacility;
            lessonLearned.Topic             = formLessonModel.Topic;
            lessonLearned.ImpactLevel       = formLessonModel.ImpactLevel;
            lessonLearned.eMocId            = formLessonModel.eMocId;
            lessonLearned.Description       = formLessonModel.Description;

            dataModel = OAPServiceSystem.GetServiceModel(OAPServiceSystem.OAPDataModelType.LessonLearned);
            dataModel.Update(lessonLearned);

            return(RedirectToAction("Edit", new { Id = lessonLearned.Id }));
        }