Просмотр исходного кода

fix: 修复一个规则导入去重的bug

Scott 2 лет назад
Родитель
Сommit
244a9cde2a

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

@@ -401,22 +401,32 @@ public class MedicalInsRuleProjectServiceImpl extends ServiceImpl<MedicalInsRule
             return new ArrayList<>();
         }
         QueryWrapper<MedicalInsRuleProject> queryWrapper = new QueryWrapper<MedicalInsRuleProject>();
+        List<String> projectCodes = new ArrayList<>();
+        List<String> correlationProjectCodes = new ArrayList<>();
         for (MedicalInsRuleProject item : list) {
             String projectCode = item.getProjectCode();
             if (!StringUtils.hasText(projectCode)) {
                 log.error("根据模板导入时,没有找到projectCode请检查导入文件内容");
                 throw new JeecgBootException("没有找到项目编码,请检查导入内容");
             }
-            String projectCodeField = oConvertUtils.camelToUnderline("projectCode");
-            queryWrapper.in(projectCodeField, projectCode);
+//            queryWrapper.in(projectCodeField, projectCode);
+            projectCodes.add(projectCode);
             if (exportRuleTitle.getSelectedRoles().indexOf(CORRELATIONPROJECTCODE) > -1) {
-                String correlationProjectCodeField = oConvertUtils.camelToUnderline(CORRELATIONPROJECTCODE);
                 String correlationProjectCode = item.getCorrelationProjectCode();
                 if (StringUtils.hasText(correlationProjectCode)) {
-                    queryWrapper.in(correlationProjectCodeField, correlationProjectCode);
+//                    queryWrapper.in(correlationProjectCodeField, correlationProjectCode);
+                    correlationProjectCodes.add(correlationProjectCode);
                 }
             }
         }
+        if (!CollectionUtils.isEmpty(projectCodes)) {
+            String projectCodeField = oConvertUtils.camelToUnderline("projectCode");
+            queryWrapper.in(projectCodeField, projectCodes);
+        }
+        if (!CollectionUtils.isEmpty(correlationProjectCodes)) {
+            String correlationProjectCodeField = oConvertUtils.camelToUnderline(CORRELATIONPROJECTCODE);
+            queryWrapper.in(correlationProjectCodeField, correlationProjectCodes);
+        }
         return this.list(queryWrapper);
     }