Browse Source

数据校验

zhaops 3 years ago
parent
commit
6b455b7028

+ 38 - 5
cdssman-service/src/main/java/com/diagbot/facade/StaticImportFacade.java

@@ -12,10 +12,7 @@ import com.diagbot.enums.StatusEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.KlConceptDetailService;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.ExcelUtils;
-import com.diagbot.util.ListUtil;
-import com.diagbot.util.UserUtils;
+import com.diagbot.util.*;
 import org.apache.commons.compress.utils.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -140,10 +137,46 @@ public class StaticImportFacade {
                 .filter(StaticExcelWrapper::nonNull)
                 .collect(Collectors.toList());
 
+        //数据校验
+        for (StaticExcelWrapper item : list) {
+            if (null == item.getType()
+                    || StringUtil.isBlank(item.getName())
+                    || StringUtil.isBlank(item.getTitle())
+                    || StringUtil.isBlank(item.getContent())
+                    || StringUtil.isBlank(item.getContentType())) {
+                item.setCorrect(0);
+                item.setMessage("1、数据不完整————有必填项(类型、名称、标题、内容、内容类型)未填;2、数据有误");
+            }
+            if (null == item.getOrderNo()) {
+                item.setCorrect(0);
+                item.setMessage("数据不完整————有必填项(类型、名称、标题、内容、内容类型)未填;2、数据有误");
+            }
+        }
+
+        List<String> errorList = list.stream().filter(i -> i.getCorrect().equals(0))
+                .map(i -> i.getName() + "_" + i.getType())
+                .distinct()
+                .collect(Collectors.toList());
+
+        if (ListUtil.isNotEmpty(errorList)) {
+            for (StaticExcelWrapper item : list) {
+                if (errorList.contains(item.getName() + "_" + item.getType())) {
+                    item.setCorrect(0);
+                    item.setMessage("数据不完整————有必填项(类型、名称、标题、内容、内容类型)未填;2、数据有误");
+                }
+            }
+        }
+
         List<String> nameAndTypeList = list.stream()
+                .filter(i -> i.getCorrect().equals(1))
                 .map(i -> i.getName() + "_" + i.getType())
                 .distinct()
                 .collect(Collectors.toList());
+
+        //标准词校验失败
+        if (ListUtil.isEmpty(nameAndTypeList)) {
+            return list;
+        }
         List<KlConcept> conceptList = klConceptFacade.list(new QueryWrapper<KlConcept>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("status", StatusEnum.Enable.getKey())
@@ -222,4 +255,4 @@ public class StaticImportFacade {
 
         return list;
     }
-}
+}