Browse Source

校验结果

zhoutg 5 years ago
parent
commit
7f816843c8

+ 38 - 18
knowledgeman-service/src/main/java/com/diagbot/facade/DiagnoseFacade.java

@@ -418,7 +418,6 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
                                     flag = verifyExist(libSet, s.trim(), typeList);
                                     if (!flag) {
                                         sb.append(s).append("、");
-                                        bean.setVerifyRelation(bean.getRelation());
                                         DiagnoseQuestion diagnoseQuestion = createDiagnoseQuestion(bean.getDiagnoseId(), bean.getDisName(), bean.getType(),
                                                 s.trim(), DiagnoseFieldEnum.relation.getKey(), param, ++j);
                                         if (addDiagnoseQuestion(diagnosetQuestionSet, diagnoseQuestion)) {
@@ -441,19 +440,28 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
                             // 校验结果
                             if (StringUtil.isNotEmpty(bean.getResult())) {
                                 String oldVerifyResult = bean.getVerifyResult();
-                                typeList = DiagnoseTypeConvertUtil.diagnoseType2LibType(bean.getType(), DiagnoseFieldEnum.result.getKey());
-                                flag = verifyExist(libSet, bean.getResult(), typeList);
-                                if (!flag) {
-                                    bean.setVerifyResult(bean.getResult());
-                                    DiagnoseQuestion diagnoseQuestion = createDiagnoseQuestion(bean.getDiagnoseId(), bean.getDisName(), bean.getType(),
-                                            bean.getStandard(), DiagnoseFieldEnum.standard.getKey(), param, ++j);
-                                    if (addDiagnoseQuestion(diagnosetQuestionSet, diagnoseQuestion)) {
-                                        diagnoseQuestionList.add(diagnoseQuestion);
+                                String[] arr = bean.getResult().split("、");
+                                StringBuffer sb = new StringBuffer();
+                                for (String s : arr) {
+                                    typeList = DiagnoseTypeConvertUtil.diagnoseType2LibType(bean.getType(), DiagnoseFieldEnum.result.getKey());
+                                    flag = verifyExist(libSet, s.trim(), typeList);
+                                    if (!flag) {
+                                        sb.append(s).append("、");
+                                        DiagnoseQuestion diagnoseQuestion = createDiagnoseQuestion(bean.getDiagnoseId(), bean.getDisName(), bean.getType(),
+                                                s.trim(), DiagnoseFieldEnum.result.getKey(), param, ++j);
+                                        if (addDiagnoseQuestion(diagnosetQuestionSet, diagnoseQuestion)) {
+                                            diagnoseQuestionList.add(diagnoseQuestion);
+                                        }
+                                        diagnoseName.add(bean.getDisName());
                                     }
-                                    diagnoseName.add(bean.getDisName());
+                                }
+                                String errWord = sb.toString();
+                                if (StringUtil.isNotEmpty(errWord)) {
+                                    bean.setVerifyResult(errWord.substring(0, errWord.length() - 1));
                                 } else {
                                     bean.setVerifyResult(""); // 将原值清空
                                 }
+
                                 if (!oldVerifyResult.equals(bean.getVerifyResult())) {
                                     updateFlag = true;
                                 }
@@ -616,21 +624,33 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
                 String errWord = sb.toString();
                 if (StringUtil.isNotEmpty(errWord)) {
                     diagnoseDetail.setVerifyRelation(errWord.substring(0, errWord.length()-1));
+                } else {
+                    diagnoseDetail.setVerifyRelation(""); // 将原值清空
                 }
             }
 
             // 校验结果
             if (StringUtil.isNotEmpty(bean.getResult())) {
-                typeList = DiagnoseTypeConvertUtil.diagnoseType2LibType(bean.getType(), DiagnoseFieldEnum.result.getKey());
-                flag = verifyExist(set, bean.getResult(), typeList);
-                if (!flag) {
-                    diagnoseDetail.setVerifyResult(bean.getResult());
-                    DiagnoseQuestion diagnoseQuestion = createDiagnoseQuestion(diagnoseWrapper.getId(), diagnoseWrapper.getDisName(), bean.getType(),
-                            bean.getStandard(), DiagnoseFieldEnum.standard.getKey(), param, ++j);
-                    if (addDiagnoseQuestion(questionSet, diagnoseQuestion)) {
-                        diagnoseQuestionList.add(diagnoseQuestion);
+                String[] arr = bean.getResult().split("、");
+                StringBuffer sb = new StringBuffer();
+                for (String s : arr) {
+                    typeList = DiagnoseTypeConvertUtil.diagnoseType2LibType(bean.getType(), DiagnoseFieldEnum.result.getKey());
+                    flag = verifyExist(set, s.trim(), typeList);
+                    if (!flag) {
+                        sb.append(s).append("、");
+                        DiagnoseQuestion diagnoseQuestion = createDiagnoseQuestion(diagnoseWrapper.getId(), diagnoseWrapper.getDisName(), bean.getType(),
+                                s.trim(), DiagnoseFieldEnum.result.getKey(), param, ++j);
+                        if (addDiagnoseQuestion(questionSet, diagnoseQuestion)) {
+                            diagnoseQuestionList.add(diagnoseQuestion);
+                        }
                     }
                 }
+                String errWord = sb.toString();
+                if (StringUtil.isNotEmpty(errWord)) {
+                    diagnoseDetail.setVerifyResult(errWord.substring(0, errWord.length()-1));
+                } else {
+                    diagnoseDetail.setVerifyResult(""); // 将原值清空
+                }
             }
             diagnoseDetailList.add(diagnoseDetail);
         }