Эх сурвалжийг харах

通用导入成功 返回值修改

shiqian 4 жил өмнө
parent
commit
938d7c71dc

+ 4 - 3
boman-modules/boman-file/src/main/java/com/boman/file/controller/ExcelController.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.boman.common.core.web.domain.AjaxResult;
 import com.boman.domain.dto.ImportExcelDto;
 import com.boman.file.service.ISysFileService;
+import com.sun.org.apache.regexp.internal.RE;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -48,13 +49,13 @@ public class ExcelController {
      */
     @PostMapping("/import")
     public AjaxResult importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
-        List<JSONObject> result = null;
         try {
-            result = fileService.importExcelCommon(multipartFile, tableName);
+            return fileService.importExcelCommon(multipartFile, tableName);
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return AjaxResult.success(result);
+
+        return AjaxResult.error("失败");
     }
 
 

+ 2 - 1
boman-modules/boman-file/src/main/java/com/boman/file/service/FastDfsSysFileServiceImpl.java

@@ -1,6 +1,7 @@
 package com.boman.file.service;
 
 import com.alibaba.fastjson.JSONObject;
+import com.boman.common.core.web.domain.AjaxResult;
 import com.boman.domain.dto.ImportExcelDto;
 import org.apache.commons.io.FilenameUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -76,7 +77,7 @@ public class FastDfsSysFileServiceImpl implements ISysFileService
      * @return java.util.List<com.alibaba.fastjson.JSONObject>
      */
     @Override
-    public List<JSONObject> importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
+    public AjaxResult importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
         return null;
     }
 }

+ 2 - 1
boman-modules/boman-file/src/main/java/com/boman/file/service/ISysFileService.java

@@ -1,6 +1,7 @@
 package com.boman.file.service;
 
 import com.alibaba.fastjson.JSONObject;
+import com.boman.common.core.web.domain.AjaxResult;
 import com.boman.domain.dto.ImportExcelDto;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -47,5 +48,5 @@ public interface ISysFileService
      * @param tableName     tableName
      * @return java.util.List<com.alibaba.fastjson.JSONObject>
      */
-    List<JSONObject> importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception;
+    AjaxResult importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception;
 }

+ 2 - 5
boman-modules/boman-file/src/main/java/com/boman/file/service/LocalSysFileServiceImpl.java

@@ -93,7 +93,7 @@ public class LocalSysFileServiceImpl implements ISysFileService
      * @return java.util.List<com.alibaba.fastjson.JSONObject>
      */
     @Override
-    public List<JSONObject> importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
+    public AjaxResult importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
         Objects.requireNonNull(multipartFile, "multipartFile is empty");
         ObjectUtils.requireNonNull(tableName, "tableName is empty");
 
@@ -107,10 +107,7 @@ public class LocalSysFileServiceImpl implements ISysFileService
         dto.setDataList(list);
         dto.setTableName(tableName);
 
-        AjaxResult ajaxResult = remoteObjService.importCommonData(dto);
-
-
-        return null;
+        return remoteObjService.importCommonData(dto);
     }
 
     /**f

+ 2 - 1
boman-modules/boman-file/src/main/java/com/boman/file/service/MinioSysFileServiceImpl.java

@@ -1,6 +1,7 @@
 package com.boman.file.service;
 
 import com.alibaba.fastjson.JSONObject;
+import com.boman.common.core.web.domain.AjaxResult;
 import com.boman.domain.dto.ImportExcelDto;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -79,7 +80,7 @@ public class MinioSysFileServiceImpl implements ISysFileService
      * @return java.util.List<com.alibaba.fastjson.JSONObject>
      */
     @Override
-    public List<JSONObject> importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
+    public AjaxResult importExcelCommon(MultipartFile multipartFile, String tableName) throws Exception {
         return null;
     }
 }

+ 1 - 2
boman-web-core/src/main/java/com/boman/web/core/controller/ImportExportExcelController.java

@@ -28,8 +28,7 @@ public class ImportExportExcelController {
     public AjaxResult importCommonData(@RequestBody ImportExcelDto dto) {
         List<JSONObject> dataList = dto.getDataList();
         String tableName = dto.getTableName();
-        service.importCommonData(tableName, dataList);
-        return AjaxResult.success();
+        return service.importCommonData(tableName, dataList);
     }
 
 

+ 2 - 1
boman-web-core/src/main/java/com/boman/web/core/service/excel/IImportExportExcelService.java

@@ -1,6 +1,7 @@
 package com.boman.web.core.service.excel;
 
 import com.alibaba.fastjson.JSONObject;
+import com.boman.common.core.web.domain.AjaxResult;
 
 import java.util.List;
 
@@ -17,5 +18,5 @@ public interface IImportExportExcelService {
      * @param dataList  需要保存的数据
      * @return void
      */
-    void importCommonData(String tableName, List<JSONObject> dataList);
+    AjaxResult importCommonData(String tableName, List<JSONObject> dataList);
 }

+ 17 - 10
boman-web-core/src/main/java/com/boman/web/core/service/excel/ImportExportExcelServiceImpl.java

@@ -34,25 +34,32 @@ public class ImportExportExcelServiceImpl implements IImportExportExcelService {
      * @return void
      */
     @Override
-    public void importCommonData(String tableName, List<JSONObject> dataList) {
-        requireNonNull(tableName, "tableName is empty");
-        requireNonNull(dataList, "dataList is empty");
+    public AjaxResult importCommonData(String tableName, List<JSONObject> dataList) {
+        requireNonNull(tableName, "importCommonData tableName is empty");
+        requireNonNull(dataList, "importCommonData dataList is empty");
 
         List<String> result = new ArrayList<>(dataList.size());
         FormDataDto dto = new FormDataDto();
         dto.setTable(tableName);
         dto.setObjId(-1L);
-        for (JSONObject data : dataList) {
+        for (int i = 0; i < dataList.size(); i++) {
+            JSONObject data = dataList.get(i);
             dto.setFixedData(data);
-            AjaxResult ajaxResult = cmdService.objectSave(dto);
-            if (AjaxResult.checkSuccess(ajaxResult)) {
-                result.add("成功, data: " + data.toJSONString());
-            } else {
-                result.add("失败, data: " + data.toJSONString());
+            AjaxResult ajaxResult;
+            try {
+                ajaxResult = cmdService.objectSave(dto);
+            } catch (Exception e) {
+                result.add("第" + i + "条导入失败, 失败原因为: " + e.getMessage());
+                e.printStackTrace();
+                continue;
+            }
+
+            if (AjaxResult.checkFail(ajaxResult)) {
+                result.add("第" + i + "条导入失败, 数据为: " + data.toJSONString());
             }
         }
 
-        System.err.println(result);
+        return AjaxResult.success("成功", result);
     }