コード例 #1
0
        public void AddFindingToRigChecklist()
        {
            try
            {
                var checklist = RigOapChecklistRepository.Get(Guid.Parse("48b56dc8-2bf3-e811-87f1-0050569674e7"));
                var question  = checklist.Questions.FirstOrDefault();

                if (question != null)
                {
                    var finding = new RigOapChecklistQuestionFinding
                    {
                        CapaId                    = 1,
                        CriticalityId             = 1,
                        FindingDate               = DateTime.UtcNow,
                        FindingSubTypeId          = 1,
                        FindingTypeId             = 1,
                        Reason                    = "Test",
                        Status                    = "Open",
                        RigOapChecklistQuestionId = question.Id
                    };

                    if (question.Findings == null)
                    {
                        question.Findings = new List <RigOapChecklistQuestionFinding>();
                    }
                    question.Findings.Add(finding);
                    RigOapChecklistRepository.Update(checklist);
                }
            }
            catch (System.Exception e)
            {
                //throw;
            }
        }
コード例 #2
0
        public ActionResult DeleteFinding(RigOapChecklistQuestionFinding model)
        {
            return(TryCatchCollectionDisplayPartialView <RigOapChecklistQuestionFinding>("GenericlistFindingPartial", GridConstants.RigFindingsErrorsKey, () =>
            {
                var checklist = RigChecklist;
                if (checklist != null)
                {
                    var question = checklist.Questions.FirstOrDefault(q => q.Id == model.RigOapChecklistQuestionId);

                    var qFindings = GetClient <OapChecklistFindingClient>().GetAllFindingsForQuestionAsync(question.Id).Result.Result.Data;

                    if ((question != null) && qFindings.Any(f => f.Id == model.Id))
                    {
                        var client = GetClient <OapChecklistFindingClient>();
                        var response = client.DeleteFindingAsync(model.Id).Result;

                        if ((response != null) && response.Result.Errors.Any())
                        {
                            CommonUtilities.DisplayGridErrors(response.Result.Errors, GridConstants.RigFindingsErrorsKey, ViewData);
                        }
                        else
                        {
                            RigChecklist = GetClient <RigOapChecklistClient>().GetCompleteChecklistAsync(RigChecklist.Id).Result.Result.Data;
                        }
                    }
                }

                return GetQuestionFindings(RigChecklist.Questions);
            }));
        }
コード例 #3
0
        private bool UpdateFindingValues(RigOapChecklistQuestionFinding finding)
        {
            var updated = false;

            if (Finding.FindingTypeId != finding.FindingTypeId)
            {
                Finding.FindingTypeId = finding.FindingTypeId;
                updated = true;
            }

            if (Finding.FindingSubTypeId != finding.FindingSubTypeId)
            {
                Finding.FindingSubTypeId = finding.FindingSubTypeId;
                updated = true;
            }

            if (Finding.CriticalityId != finding.CriticalityId)
            {
                Finding.CriticalityId = finding.CriticalityId;
                updated = true;
            }

            if (Finding.IsRepeat != finding.IsRepeat)
            {
                Finding.IsRepeat = finding.IsRepeat;
                updated          = true;
            }

            if (Finding.IsRepeat != finding.IsRepeat)
            {
                Finding.IsRepeat = finding.IsRepeat;
                updated          = true;
            }

            if (!string.IsNullOrEmpty(Finding.FileName) && !string.IsNullOrEmpty(finding.FileName))
            {
                if (!Finding.FileName.Equals(finding.FileName))
                {
                    Finding.FileName   = finding.FileName;
                    Finding.FileStream = finding.FileStream;
                    updated            = true;
                }
            }
            else if (!string.IsNullOrEmpty(Finding.FileName) && string.IsNullOrEmpty(finding.FileName))
            {
                Finding.FileName   = finding.FileName;
                Finding.FileStream = finding.FileStream;
                updated            = true;
            }
            else if (string.IsNullOrEmpty(Finding.FileName) && !string.IsNullOrEmpty(finding.FileName))
            {
                Finding.FileName   = finding.FileName;
                Finding.FileStream = finding.FileStream;
                updated            = true;
            }

            return(updated);
        }
コード例 #4
0
        public ActionResult SaveFinding(RigOapChecklistQuestionFinding finding)
        {
            if (UpdateFindingValues(finding))
            {
                var success = GetClient <OapChecklistFindingClient>().UpdateFindingAsync(Finding).Result.Result.Data;
                return(List(Finding.Id));
            }

            return(TryCatchDisplayPartialView("FindingPagePartial", FindingPageErrorsKey, () => Finding));
        }
コード例 #5
0
        public ActionResult CreateFinding(RigOapChecklistQuestionFinding model)
        {
            return(TryCatchCollectionDisplayPartialView <RigOapChecklistQuestionFinding>("GenericlistFindingPartial", "RigFindingsErrorsKey", () =>
            {
                var findings = GetQuestionFindings(RigChecklist, model.RigOapChecklistQuestionId);
                if ((findings != null) && !findings.Any(f => f.Id == Guid.Empty && f.FindingDate == model.FindingDate && f.FindingTypeId == model.FindingTypeId && f.FindingSubTypeId == model.FindingSubTypeId))
                {
                    var client = GetClient <OapChecklistFindingClient>();
                    var response = client.AddFindingAsync(model).Result;

                    if ((response != null) && response.Result.Errors.Any())
                    {
                        CommonUtilities.DisplayGridErrors(response.Result.Errors, GridConstants.RigFindingsErrorsKey, ViewData);
                    }
                    else
                    {
                        RigChecklist = GetClient <RigOapChecklistClient>().GetCompleteChecklistAsync(RigChecklist.Id).Result.Result.Data;
                    }
                }

                return GetQuestionFindings(RigChecklist.Questions);
            }));
        }
コード例 #6
0
 public WebApiResult <bool> UpdateFinding([FromBody] RigOapChecklistQuestionFinding finding)
 {
     return(TryCatch <UpdateOapChecklistQuestionFindingRequest, bool>(new UpdateOapChecklistQuestionFindingRequest(finding)));
 }
コード例 #7
0
 public WebApiResult <RigOapChecklistQuestionFinding> AddFinding([FromBody] RigOapChecklistQuestionFinding finding)
 {
     return(TryCatch <AddOapChecklistQuestionFindingRequest, RigOapChecklistQuestionFinding>(new AddOapChecklistQuestionFindingRequest(finding)));
 }
コード例 #8
0
 public UpdateOapChecklistQuestionFindingRequest(RigOapChecklistQuestionFinding finding)
 {
     Finding = finding;
 }