wangfeng 4 yıl önce
ebeveyn
işleme
2823bed509

+ 44 - 39
src/main/java/com/diagbot/facade/KlDiagnoseFacade.java

@@ -223,50 +223,55 @@ public class KlDiagnoseFacade extends KlDiagnoseServiceImpl {
         int sum = 99;
         int baseGroup = 9;
         List<KlDiagnoseTypeVO> klDiagnoseTypeVO = klDiagnoseSaveVO.getKlDiagnoseTypeVO();
-        for (KlDiagnoseTypeVO data : klDiagnoseTypeVO) {
-            KlDiagnoseCondition klDiagnoseCondition = new KlDiagnoseCondition();
-            klDiagnoseCondition.setConditionType(data.getConditionType());//取出诊断的类型,2拟诊,3 确诊
-            sum = sum + 1;
-            klDiagnoseCondition.setConditionGroup(sum);
-            List<KlDiagnoseGroupVO> groupVO = data.getGroupVO();
-            for (KlDiagnoseGroupVO data2 : groupVO) {
-                baseGroup = baseGroup + 1;
-                klDiagnoseCondition.setDiagnoseId(klDiagnoseSaveVO.getId());
-                klDiagnoseCondition.setBaseGroup(baseGroup);//
-                klDiagnoseCondition.setFitNo(data2.getFitNo());
-                klDiagnoseConditionFacade.save(klDiagnoseCondition);
-                //明细
-                List<KlDiagnoseDetailVO> klDiagnoseDetail = data2.getKlDiagnoseDetail();
-                for (KlDiagnoseDetailVO detailVO : klDiagnoseDetail) {
-                    KlDiagnoseBase klDiagnoseBase = new KlDiagnoseBase();
-                    klDiagnoseBase.setGmtModified(now);
-                    klDiagnoseBase.setConceptId(detailVO.getBasConceptId());
-                    klDiagnoseBase.setType(detailVO.getBasType());
-                    klDiagnoseBase.setDescription(detailVO.getBasDescription());
-                    klDiagnoseBase.setMaxOperator(detailVO.getMaxOperator());
-                    klDiagnoseBase.setMaxValue(detailVO.getMaxVal());
-                    klDiagnoseBase.setMaxUnit(detailVO.getMaxUnit());
-                    klDiagnoseBase.setMinOperator(detailVO.getMinOperator());
-                    klDiagnoseBase.setMinValue(detailVO.getMinVal());
-                    klDiagnoseBase.setMinUnit(detailVO.getMinUnit());
-                    klDiagnoseBase.setStatus(1);
-                    klDiagnoseBase.setEqValue(detailVO.getEqValue());
-                    klDiagnoseBase.setEqOperator(detailVO.getEqOperator());
-                    klDiagnoseBase.setEqUnit(detailVO.getEqUnit());
-                    res = klDiagnoseBaseFacade.save(klDiagnoseBase);
-                    if (res) {
-                        KlDiagnoseCondition klDiagnoseConditionBase = new KlDiagnoseCondition();
-                        klDiagnoseConditionBase.setDiagnoseBaseId(klDiagnoseBase.getId());
-                        klDiagnoseConditionBase.setBaseGroup(baseGroup);
-                        klDiagnoseConditionBase.setConditionType(1);
-                        klDiagnoseConditionBase.setDiagnoseId(klDiagnoseSaveVO.getId());
-                        res = klDiagnoseConditionFacade.save(klDiagnoseConditionBase);
+        if (ListUtil.isNotEmpty(klDiagnoseTypeVO)) {
+            for (KlDiagnoseTypeVO data : klDiagnoseTypeVO) {
+                KlDiagnoseCondition klDiagnoseCondition = new KlDiagnoseCondition();
+                klDiagnoseCondition.setConditionType(data.getConditionType());//取出诊断的类型,2拟诊,3 确诊
+                sum = sum + 1;
+                klDiagnoseCondition.setConditionGroup(sum);
+                List<KlDiagnoseGroupVO> groupVO = data.getGroupVO();
+                for (KlDiagnoseGroupVO data2 : groupVO) {
+                    baseGroup = baseGroup + 1;
+                    klDiagnoseCondition.setDiagnoseId(klDiagnoseSaveVO.getId());
+                    klDiagnoseCondition.setBaseGroup(baseGroup);//
+                    klDiagnoseCondition.setFitNo(data2.getFitNo());
+                    klDiagnoseConditionFacade.save(klDiagnoseCondition);
+                    //明细
+                    List<KlDiagnoseDetailVO> klDiagnoseDetail = data2.getKlDiagnoseDetail();
+                    if (ListUtil.isNotEmpty(klDiagnoseDetail)) {
+                        for (KlDiagnoseDetailVO detailVO : klDiagnoseDetail) {
+                            if (null != detailVO) {
+                                KlDiagnoseBase klDiagnoseBase = new KlDiagnoseBase();
+                                klDiagnoseBase.setGmtModified(now);
+                                klDiagnoseBase.setConceptId(detailVO.getBasConceptId());
+                                klDiagnoseBase.setType(detailVO.getBasType());
+                                klDiagnoseBase.setDescription(detailVO.getBasDescription());
+                                klDiagnoseBase.setMaxOperator(detailVO.getMaxOperator());
+                                klDiagnoseBase.setMaxValue(detailVO.getMaxVal());
+                                klDiagnoseBase.setMaxUnit(detailVO.getMaxUnit());
+                                klDiagnoseBase.setMinOperator(detailVO.getMinOperator());
+                                klDiagnoseBase.setMinValue(detailVO.getMinVal());
+                                klDiagnoseBase.setMinUnit(detailVO.getMinUnit());
+                                klDiagnoseBase.setStatus(1);
+                                klDiagnoseBase.setEqValue(detailVO.getEqValue());
+                                klDiagnoseBase.setEqOperator(detailVO.getEqOperator());
+                                klDiagnoseBase.setEqUnit(detailVO.getEqUnit());
+                                res = klDiagnoseBaseFacade.save(klDiagnoseBase);
+                                if (res) {
+                                    KlDiagnoseCondition klDiagnoseConditionBase = new KlDiagnoseCondition();
+                                    klDiagnoseConditionBase.setDiagnoseBaseId(klDiagnoseBase.getId());
+                                    klDiagnoseConditionBase.setBaseGroup(baseGroup);
+                                    klDiagnoseConditionBase.setConditionType(1);
+                                    klDiagnoseConditionBase.setDiagnoseId(klDiagnoseSaveVO.getId());
+                                    res = klDiagnoseConditionFacade.save(klDiagnoseConditionBase);
+                                }
+                            }
+                        }
                     }
 
                 }
 
             }
-
         }
         return res;
     }