Exemplo n.º 1
0
        private void AnimatedThreadWorkerDoLoad(object sender, DoWorkEventArgs e)
        {
            if (_currentCheck == null)
            {
                return;
            }

            if (_currentCheck.AuditCheck.Settings.WorkflowStatusId == WorkFlowStatus.Open.ItemId &&
                _currentCheck.AuditCheck.Settings.WorkflowStageId == WorkFlowStage.View.ItemId)
            {
                if (_currentCheck.PelRecord?.Auditor.ItemId == GlobalObjects.CaaEnvironment.IdentityUser.PersonnelId)
                {
                    _currentCheck.AuditCheck.Settings.IsAuditorReview = true;
                    GlobalObjects.CaaEnvironment.NewKeeper.Save(_currentCheck.AuditCheck);
                }
                else if (_currentCheck.PelRecord?.Auditee.ItemId == GlobalObjects.CaaEnvironment.IdentityUser.PersonnelId)
                {
                    _currentCheck.AuditCheck.Settings.IsAuditeeReview = true;
                    GlobalObjects.CaaEnvironment.NewKeeper.Save(_currentCheck.AuditCheck);
                }

                if (_currentCheck.AuditCheck.Settings.IsAuditorReview.HasValue && _currentCheck.AuditCheck.Settings.IsAuditeeReview.HasValue &&
                    _currentCheck.AuditCheck.Settings.IsAuditorReview.Value && _currentCheck.AuditCheck.Settings.IsAuditeeReview.Value)
                {
                    _currentCheck.AuditCheck.Settings.WorkflowStatusId = WorkFlowStatus.Review.ItemId;
                    GlobalObjects.CaaEnvironment.NewKeeper.Save(_currentCheck.AuditCheck);
                }
            }


            _currentCheck =
                GlobalObjects.CaaEnvironment.NewLoader.GetObjectById <CheckListDTO, CheckLists>(_currentCheck.ItemId);

            _currentCheck.EditionNumber = GlobalObjects.CaaEnvironment.NewLoader.GetObjectById <CheckListRevisionDTO, CheckListRevision>(_currentCheck.EditionId)?.Number.ToString() ?? "";
            if (_currentCheck.RevisionId.HasValue)
            {
                _currentCheck.RevisionNumber = GlobalObjects.CaaEnvironment.NewLoader.GetObjectById <CheckListRevisionDTO, CheckListRevision>(_currentCheck.RevisionId.Value)?.Number.ToString() ?? "";
            }

            _currentAuditCheck =
                GlobalObjects.CaaEnvironment.NewLoader.GetObject <AuditCheckDTO, AuditCheck>(new List <Filter>()
            {
                new Filter("AuditId", _auditId),
                new Filter("CheckListId", _currentCheck.ItemId),
            });
            if (_currentAuditCheck == null)
            {
                _currentAuditCheck = new AuditCheck()
                {
                    CheckListId = _currentCheck.ItemId,
                    AuditId     = _auditId
                };
                GlobalObjects.CaaEnvironment.NewKeeper.Save(_currentAuditCheck);
            }

            if (_currentAuditCheck.ItemId > 0)
            {
                _currentAuditCheckRecords = new List <AuditCheckRecord>(
                    GlobalObjects.CaaEnvironment.NewLoader.GetObjectList <AuditCheckRecordDTO, AuditCheckRecord>(
                        new Filter("AuditRecordId", _currentAuditCheck.ItemId)));
            }
            else
            {
                _currentAuditCheckRecords = new List <AuditCheckRecord>();
            }


            var records =
                GlobalObjects.CaaEnvironment.NewLoader.GetObjectList <CheckListRecordDTO, CheckListRecords>(
                    new Filter("CheckListId", _currentCheck.ItemId));


            foreach (var rec in records)
            {
                var find = _currentAuditCheckRecords.FirstOrDefault(i => i.CheckListRecordId == rec.ItemId);
                if (find == null)
                {
                    var newRecord = new AuditCheckRecord()
                    {
                        CheckListRecordId = rec.ItemId,
                        AuditRecordId     = _currentAuditCheck.ItemId,
                        CheckListRecord   = rec
                    };
                    GlobalObjects.CaaEnvironment.NewKeeper.Save(newRecord);

                    _currentAuditCheckRecords.Add(newRecord);
                }
                else
                {
                    find.CheckListRecord = rec;
                }
            }

            _currentCheck.CheckListRecords.Clear();
            _currentCheck.CheckListRecords.AddRange(records);

            _currentCheck.Level = GlobalObjects.CaaEnvironment.NewLoader.GetObjectById <FindingLevelsDTO, FindingLevels>(_currentCheck.Settings.LevelId) ??
                                  FindingLevels.Unknown;
        }
Exemplo n.º 2
0
 public AuditCheckControl(AuditCheckRecord auditCheckRecord) : this()
 {
     AuditCheckRecord = auditCheckRecord;
     UpdateInformation();
 }