Sfoglia il codice sorgente

excel 编码、关联编码循环嵌套

lenovodn 2 anni fa
parent
commit
c0a1b037cd

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/before/PatientInformationResponse.java

@@ -22,7 +22,7 @@ public class PatientInformationResponse implements Serializable {
     @ApiModelProperty(value = "患者姓名")
     private String patientName;
 
-    @ApiModelProperty(value = "性别;0=未说明,1=男,2=女,3=未知")
+    @ApiModelProperty(value = "性别;0 未知的性别 1 男性 2 女性 9 未说明性别")
     private String gender;
 
     @ApiModelProperty(value = "生日")

+ 9 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/DiagnoseItemsMapper.xml

@@ -9,8 +9,15 @@
         From medical_ins_rule_project_diagnose pd
                  left join diagnose_items d on pd.medical_diagnose_code = d.medical_diagnose_code
         where pd.medical_ins_rule_info_id = #{ew.medicalInsRuleInfoId}
-          and pd.medical_ins_project_code = #{ew.projectCode}
-          and pd.project_code_type = #{ew.projectCodeType}
+        <if test="ew.projectCode != null and ew.projectCode != ''">
+        and pd.medical_ins_project_code = #{ew.projectCode}
+        </if>
+        <if test="ew.projectCodeType != null and ew.projectCodeType != ''">
+        and pd.project_code_type = #{ew.projectCodeType}
+        </if>
+        <if test="ew.medicalDiagnoseCode != null and ew.medicalDiagnoseCode != ''">
+            and pd.medical_diagnose_code = #{ew.medicalDiagnoseCode}
+        </if>
 
     </select>
     <select id="dataValidation" resultType="org.jeecg.modules.medical.entity.DiagnoseItems">

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsRuleProjectDiagnoseServiceImpl.java

@@ -40,7 +40,7 @@ public class MedicalInsRuleProjectDiagnoseServiceImpl extends ServiceImpl<Medica
             diagnose.setMedicalInsProjectCode(projectCode);
             list.add(diagnose);
         }
-        boolean b = saveBatch(list);
+        boolean b = saveOrUpdateBatch(list);
         return b;
     }
 

+ 16 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsRuleProjectServiceImpl.java

@@ -320,6 +320,22 @@ public class MedicalInsRuleProjectServiceImpl extends ServiceImpl<MedicalInsRule
                         return item;
                     }).collect(Collectors.toList());
                     this.saveBatch(list, 500);
+                    if (fieldList.contains(MEDICALDIAGNOSECODE) || fieldList.contains(CORRELATIONMEDICALDIAGNOSECODE)) {
+                        Integer finalId1 = id;
+                        list.stream().forEach(it -> {
+                            if (StringUtils.hasText(it.getMedicalDiagnoseCode())) {
+                                List<String> code = Arrays.asList(it.getMedicalDiagnoseCode().split("\n"));
+                                Integer projectCodeType = 1;
+                                diagnoseService.saveDiagnose(code, projectCodeType, finalId1, it.getProjectCode());
+                            }
+                            if (StringUtils.hasText(it.getCorrelationMedicalDiagnoseCode())) {
+                                List<String> code = Arrays.asList(it.getCorrelationMedicalDiagnoseCode().split("\n"));
+                                Integer projectCodeType = 2;
+                                diagnoseService.saveDiagnose(code, projectCodeType, finalId1, it.getProjectCode());
+
+                            }
+                        });
+                    }
                     return Result.ok("文件导入成功!数据行数:" + list.size());
                 }
                 boolean hasCode = false;