Ver código fonte

文化中心

dengsixing 10 horas atrás
pai
commit
44e77f35c9

+ 16 - 4
src/main/java/com/fdkankan/external/service/impl/XinxizhongxinServiceImpl.java

@@ -62,12 +62,18 @@ public class XinxizhongxinServiceImpl implements XinxizhongxinService {
         file.transferTo(tempFile);
 
         // 这里 需要指定读用哪个class去读,然后读取第一个sheet 同步读取会自动finish
-        List<ZgxxzxPushLog> list = EasyExcel.read(tempFile).head(ZgxxzxPushLog.class).sheet().doReadSync();
-        if (CollUtil.isEmpty(list)) {
-            throw new BusinessException(ErrorCode.SYSTEM_ERROR.code(), "excel数据有误");
+        List<ZgxxzxPushLog> list = null;
+        try {
+            list = EasyExcel.read(tempFile).head(ZgxxzxPushLog.class).sheet().doReadSync();
+            list = list.stream().filter(v->StrUtil.isNotEmpty(v.getNum())).collect(Collectors.toList());
+            if (CollUtil.isEmpty(list)) {
+                throw new BusinessException(ErrorCode.SYSTEM_ERROR.code(), "表格模板或填写错误");
+            }
+        }catch (Exception e){
+            throw new BusinessException(ErrorCode.SYSTEM_ERROR.code(), "表格模板或填写错误");
         }
         List<String> numList = list.stream().map(v -> v.getNum()).collect(Collectors.toList());
-        List<Scene> sceneList = sceneService.list(QueryWrapper.create().in(Scene::getSceneCode, numList).eq(Scene::getStatus, 2));
+        List<Scene> sceneList = sceneService.list(QueryWrapper.create().in(Scene::getSceneCode, numList).eq(Scene::getStatus, 2).eq(Scene::getDeleted, 0));
         Map<String, Scene> dbNumMap = sceneList.stream().collect(Collectors.toMap(v -> v.getSceneCode(), v -> v));
         Set<String> errorNumList = numList.stream().filter(num -> !dbNumMap.keySet().contains(num)).collect(Collectors.toSet());
         if (CollUtil.isNotEmpty(errorNumList)) {
@@ -85,6 +91,12 @@ public class XinxizhongxinServiceImpl implements XinxizhongxinService {
         zgxxzxPushLogService.saveBatch(list);
     }
 
+    public static void main(String[] args) {
+        List<ZgxxzxPushLog> list = EasyExcel.read("D:\\Downloads\\数据推送.xls").head(ZgxxzxPushLog.class).sheet().doReadSync();
+        System.out.println(123);
+
+    }
+
     @Override
     public PageInfo<ZgxxzxPushLog> taskList(TaskPageRequest request) {
         QueryWrapper queryWrapper = QueryWrapper.create().orderBy(ZgxxzxPushLog::getId, false);