Exemple #1
0
        public void DoInspect()
        {
            if (CurrentRecipe == null)
            {
                return;
            }

            int id = 0;
            //아이디에 따른 검사 반복이 필요. 추후 수정 필요.
            IParameter parameter = CreateParameter(id);

            parameter.Id = DateTime.Now.ToString();

            IInspectedResult inspectedResult = _container.Resolve <IInspectedResult>();

            inspectedResult.Id         = parameter.Id;
            inspectedResult.ResultType = ResultType.Ng;
            foreach (string name in Properties.Settings.Default.AlgorithmNames)
            {
                IAlgorithm algorithm = _container.Resolve <IAlgorithm>(name);
                if (algorithm.DoInspect(parameter, ref inspectedResult) == false)
                {
                    break;
                }
            }

            IMessageInfo messageInfo = _container.Resolve <IMessageInfo>();

            messageInfo.Level       = 1;
            messageInfo.Category    = "검사";
            messageInfo.Description = inspectedResult.Description;
            App.Locator.MessageViewModel.MessageInfoList.Add(messageInfo);

            OpenResultWindow(inspectedResult);

            string filePath = String.Format(@"{0}\Result\{1}.json", FolderTool.WorkingFolderFullPath, DateTime.Now.ToString("yyyyMMdd-HHmmss"));

            JsonTool <IInspectedResult> .Export(filePath, inspectedResult);
        }