From 35a6e242f935f942d70146e293213c7182e505ae Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期一, 07 七月 2025 21:11:53 +0800
Subject: [PATCH] 保养规范点检导入  设备二保 三保导入

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java |  472 ++++++++++++++++------------------------------------------
 1 files changed, 131 insertions(+), 341 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
index e8d2bc8..cfc3b53 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
@@ -17,11 +17,6 @@
 import org.jeecg.modules.eam.constant.BusinessCodeConst;
 import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
 import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
-import org.jeecg.modules.eam.dto.MaintenanceStandardImport;
-import org.jeecg.modules.eam.dto.SecondMaintenanceStandardImport;
-import org.jeecg.modules.eam.dto.ThirdMaintenanceStandardImport;
-import org.jeecg.modules.eam.dto.WeekMaintenanceStandardImport;
-import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
 import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
 import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
@@ -63,23 +58,25 @@
 
     /**
      * 娴佺▼鍚姩,淇濆瓨瀵瑰簲鐨勬暟鎹�
+     *
      * @param id
      * @return
      */
     @ApiOperation(value = "淇濆吇鏍囧噯-娴佺▼鍚姩淇濆瓨瀵瑰簲鐨勬暟鎹�", notes = "淇濆吇鏍囧噯-娴佺▼鍚姩淇濆瓨瀵瑰簲鐨勬暟鎹�")
     @GetMapping(value = "/saveEamMaintenanceStandardProcess")
-    public Result<?> saveEamMaintenanceStandardProcess(String id){
+    public Result<?> saveEamMaintenanceStandardProcess(String id) {
         return eamMaintenanceStandardService.saveEamMaintenanceStandardProcess(id);
     }
 
     /**
      * 娴佺▼瀹℃牳
+     *
      * @param eamMaintenanceStandardVo
      * @return
      */
     @ApiOperation(value = "淇濆吇鏍囧噯-娴佺▼瀹℃牳", notes = "淇濆吇鏍囧噯-娴佺▼瀹℃牳")
     @PostMapping(value = "/audit")
-    public Result<?> auditEamMaintenanceStandard(@RequestBody EamMaintenanceStandardVo eamMaintenanceStandardVo){
+    public Result<?> auditEamMaintenanceStandard(@RequestBody EamMaintenanceStandardVo eamMaintenanceStandardVo) {
         return eamMaintenanceStandardService.auditEamMaintenanceStandard(eamMaintenanceStandardVo);
     }
 
@@ -179,7 +176,8 @@
 
     /**
      * 鏌ヨ鏍囧噯鍒楄〃-鍓嶇灞曠ず璇ョ敤鎴锋嫢鏈夌殑鏍囧噯
-     * @param keyword 璁惧缂栧彿
+     *
+     * @param keyword             璁惧缂栧彿
      * @param maintenanceCategory 淇濆吇绫诲瀷
      * @return
      */
@@ -275,358 +273,150 @@
         return super.exportXls(request, eamMaintenanceStandard, EamMaintenanceStandard.class, "淇濆吇鏍囧噯");
     }
 
-    @PostMapping("/import")
-    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
-        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
-            // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
-            MultipartFile file = entity.getValue();
-            eamMaintenanceStandardService.importPointInspectionExcel(file);
-        }
-        return Result.ok("瀵煎叆鎴愬姛");
-    }
-
     /**
-     * 閫氳繃excel瀵煎叆鏁版嵁
-     *
-     * @param request
-     * @param response
-     * @return
-     */
-    @RequestMapping(value = "/inspectionImportExcel", method = RequestMethod.POST)
-    public Result<?> inspectionImportExcel(HttpServletRequest request, HttpServletResponse response) {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
-        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
-            // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
-            MultipartFile file = entity.getValue();
-            ImportParams params = new ImportParams();
-            params.setTitleRows(2);
-            params.setHeadRows(1);
-            params.setSheetNum(1);
-            params.setNeedSave(true);
-            EamMaintenanceStandardRequest standardRequest = new EamMaintenanceStandardRequest();
-            try {
-                //璇诲彇璁惧缂栧彿锛屽浘鐗囩瓑
-                readExcel(file, standardRequest);
-                EamEquipment equipment = eamEquipmentService.selectByEquipmentCode(standardRequest.getEquipmentCode());
-                if(equipment == null) {
-                    log.error("璁惧涓嶅瓨鍦細{}", standardRequest.getEquipmentCode());
-                    continue;
-                }
-                standardRequest.setStandardName(standardRequest.getEquipmentName() + "鐐规鏍囧噯");
-                standardRequest.setMaintenanceCategory(MaintenanceCategoryEnum.POINT_INSPECTION.name());
-                standardRequest.setEquipmentId(equipment.getId());
-                //璇诲彇淇濆吇鏄庣粏鍐呭
-                List<MaintenanceStandardImport> list = ExcelImportUtil.importExcel(file.getInputStream(), MaintenanceStandardImport.class, params);
-                //鏄庣粏椤�
-                List<EamMaintenanceStandardDetail> tableList = list.stream().map(EamMaintenanceStandardDetail::new).collect(Collectors.toList());
-                standardRequest.setTableDetailList(tableList);
-                String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
-                standardRequest.setStandardCode(codeSeq);
-                boolean b = eamMaintenanceStandardService.addMaintenanceStandard(standardRequest);
-                if (!b) {
-                    log.error("淇濆瓨澶辫触锛� {}", standardRequest.getEquipmentCode());
-                }
-            } catch (Exception e) {
-                //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-                String msg = e.getMessage();
-                log.error("鏂囦欢 {} 澶勭悊寮傚父锛� {}", file.getOriginalFilename(), msg, e);
-                //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-            } finally {
-                try {
-                    file.getInputStream().close();
-                } catch (IOException e) {
-                    log.error(e.getMessage(), e);
-                }
-            }
-        }
-        return Result.ok("鏂囦欢瀵煎叆瀹屾垚锛�");
-    }
-
-    /**
-     * 閫氳繃excel瀵煎叆鏁版嵁
-     *
-     * @param request
-     * @param response
-     * @return
-     */
-    @RequestMapping(value = "/weekMaintenanceImportExcel", method = RequestMethod.POST)
-    public Result<?> weekMaintenanceImportExcel(HttpServletRequest request, HttpServletResponse response) {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
-        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
-            // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
-            MultipartFile file = entity.getValue();
-            ImportParams params = new ImportParams();
-            params.setTitleRows(2);
-            params.setHeadRows(1);
-            params.setSheetNum(1);
-            params.setNeedSave(true);
-            EamMaintenanceStandardRequest standardRequest = new EamMaintenanceStandardRequest();
-            try {
-                //璇诲彇璁惧缂栧彿锛屽浘鐗囩瓑
-                readWeekExcel(file, standardRequest);
-                EamEquipment equipment = eamEquipmentService.selectByEquipmentCode(standardRequest.getEquipmentCode());
-                if(equipment == null) {
-                    log.error("璁惧涓嶅瓨鍦細{}", standardRequest.getEquipmentCode());
-                    continue;
-                }
-                standardRequest.setStandardName(standardRequest.getEquipmentName() + "鍛ㄤ繚鏍囧噯");
-                standardRequest.setMaintenanceCategory(MaintenanceCategoryEnum.WEEK_MAINTENANCE.name());
-                standardRequest.setEquipmentId(equipment.getId());
-                //璇诲彇淇濆吇鏄庣粏鍐呭
-                List<WeekMaintenanceStandardImport> list = ExcelImportUtil.importExcel(file.getInputStream(), WeekMaintenanceStandardImport.class, params);
-                //鏄庣粏椤�
-                List<EamMaintenanceStandardDetail> tableList = list.stream().map(EamMaintenanceStandardDetail::new).collect(Collectors.toList());
-                standardRequest.setTableDetailList(tableList);
-                String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
-                standardRequest.setStandardCode(codeSeq);
-                boolean b = eamMaintenanceStandardService.addMaintenanceStandard(standardRequest);
-                if (!b) {
-                    log.error("淇濆瓨澶辫触锛� {}", standardRequest.getEquipmentCode());
-                }
-            } catch (Exception e) {
-                //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-                String msg = e.getMessage();
-                log.error("鏂囦欢 {} 澶勭悊寮傚父锛� {}", file.getOriginalFilename(), msg, e);
-                //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-            } finally {
-                try {
-                    file.getInputStream().close();
-                } catch (IOException e) {
-                    log.error(e.getMessage(), e);
-                }
-            }
-        }
-        return Result.ok("鏂囦欢瀵煎叆瀹屾垚锛�");
-    }
-
-    /**
-     * 閫氳繃excel瀵煎叆鏁版嵁
-     *
-     * @param request
-     * @param response
-     * @return
-     */
-    @RequestMapping(value = "/secondMaintenanceImportExcel", method = RequestMethod.POST)
-    public Result<?> secondMaintenanceImportExcel(HttpServletRequest request, HttpServletResponse response) {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
-        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
-            // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
-            MultipartFile file = entity.getValue();
-            ImportParams params = new ImportParams();
-            params.setTitleRows(2);
-            params.setHeadRows(1);
-            params.setSheetNum(1);
-            params.setNeedSave(true);
-            EamMaintenanceStandardRequest standardRequest = new EamMaintenanceStandardRequest();
-            try {
-                //璇诲彇璁惧缂栧彿锛屽浘鐗囩瓑
-                readWeekExcel(file, standardRequest);
-                EamEquipment equipment = eamEquipmentService.selectByEquipmentCode(standardRequest.getEquipmentCode());
-                if(equipment == null) {
-                    log.error("璁惧涓嶅瓨鍦細{}", standardRequest.getEquipmentCode());
-                    continue;
-                }
-                standardRequest.setStandardName(standardRequest.getEquipmentName() + "浜屼繚鏍囧噯");
-                standardRequest.setMaintenanceCategory(MaintenanceCategoryEnum.SECOND_MAINTENANCE.name());
-                standardRequest.setEquipmentId(equipment.getId());
-                //璇诲彇淇濆吇鏄庣粏鍐呭
-                List<SecondMaintenanceStandardImport> list = ExcelImportUtil.importExcel(file.getInputStream(), SecondMaintenanceStandardImport.class, params);
-                //鏄庣粏椤�
-                List<EamMaintenanceStandardDetail> tableList = list.stream().map(EamMaintenanceStandardDetail::new).collect(Collectors.toList());
-                standardRequest.setTableDetailList(tableList);
-                String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
-                standardRequest.setStandardCode(codeSeq);
-                boolean b = eamMaintenanceStandardService.addMaintenanceStandard(standardRequest);
-                if (!b) {
-                    log.error("淇濆瓨澶辫触锛� {}", standardRequest.getEquipmentCode());
-                }
-            } catch (Exception e) {
-                //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-                String msg = e.getMessage();
-                log.error("鏂囦欢 {} 澶勭悊寮傚父锛� {}", file.getOriginalFilename(), msg, e);
-                //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-            } finally {
-                try {
-                    file.getInputStream().close();
-                } catch (IOException e) {
-                    log.error(e.getMessage(), e);
-                }
-            }
-        }
-        return Result.ok("鏂囦欢瀵煎叆瀹屾垚锛�");
-    }
-
-    /**
-     * 閫氳繃excel瀵煎叆鏁版嵁
-     *
-     * @param request
-     * @param response
-     * @return
-     */
-    @RequestMapping(value = "/thirdMaintenanceImportExcel", method = RequestMethod.POST)
-    public Result<?> thirdMaintenanceImportExcel(HttpServletRequest request, HttpServletResponse response) {
-        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
-        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
-            // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
-            MultipartFile file = entity.getValue();
-            ImportParams params = new ImportParams();
-            params.setTitleRows(2);
-            params.setHeadRows(1);
-            params.setSheetNum(1);
-            params.setNeedSave(true);
-            EamMaintenanceStandardRequest standardRequest = new EamMaintenanceStandardRequest();
-            try {
-                //璇诲彇璁惧缂栧彿锛屽浘鐗囩瓑
-                readWeekExcel(file, standardRequest);
-                EamEquipment equipment = eamEquipmentService.selectByEquipmentCode(standardRequest.getEquipmentCode());
-                if(equipment == null) {
-                    log.error("璁惧涓嶅瓨鍦細{}", standardRequest.getEquipmentCode());
-                    continue;
-                }
-                standardRequest.setStandardName(standardRequest.getEquipmentName() + "涓変繚鏍囧噯");
-                standardRequest.setMaintenanceCategory(MaintenanceCategoryEnum.THIRD_MAINTENANCE.name());
-                standardRequest.setEquipmentId(equipment.getId());
-                //璇诲彇淇濆吇鏄庣粏鍐呭
-                List<ThirdMaintenanceStandardImport> list = ExcelImportUtil.importExcel(file.getInputStream(), ThirdMaintenanceStandardImport.class, params);
-                //鏄庣粏椤�
-                List<EamMaintenanceStandardDetail> tableList = list.stream().map(EamMaintenanceStandardDetail::new).collect(Collectors.toList());
-                standardRequest.setTableDetailList(tableList);
-                String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
-                standardRequest.setStandardCode(codeSeq);
-                boolean b = eamMaintenanceStandardService.addMaintenanceStandard(standardRequest);
-                if (!b) {
-                    log.error("淇濆瓨澶辫触锛� {}", standardRequest.getEquipmentCode());
-                }
-            } catch (Exception e) {
-                //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-                String msg = e.getMessage();
-                log.error("鏂囦欢 {} 澶勭悊寮傚父锛� {}", file.getOriginalFilename(), msg, e);
-                //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
-            } finally {
-                try {
-                    file.getInputStream().close();
-                } catch (IOException e) {
-                    log.error(e.getMessage(), e);
-                }
-            }
-        }
-        return Result.ok("鏂囦欢瀵煎叆瀹屾垚锛�");
-    }
-
-    /**
-     * 璇诲彇Excel 绗竴琛岋紝 绗簩琛岀殑淇℃伅锛屽寘鎷浘鐗囦俊鎭�
-     * @param file
-     * @param request
-     */
-    private void readExcel(MultipartFile file, EamMaintenanceStandardRequest request) {
-        Workbook book = null;
-        boolean isXSSFWorkbook = false;
+     * 鐐规瀵煎叆
+    */
+    @PostMapping("/importPointInspection")
+    public Result<?> importPointInspectionExcel(HttpServletRequest request) {
         try {
-            book = WorkbookFactory.create(file.getInputStream());
-            if (book instanceof XSSFWorkbook) {
-                isXSSFWorkbook = true;
+            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+            Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+
+            Map<String, String> results = new LinkedHashMap<>();
+            int successCount = 0;
+            int failureCount = 0;
+
+            for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+                MultipartFile file = entity.getValue();
+                String fileName = file.getOriginalFilename();
+
+                Result<?> importResult = eamMaintenanceStandardService.importPointInspectionExcel(file);
+
+                if (importResult.isSuccess()) {
+                    results.put(fileName, "鎴愬姛: " + importResult.getMessage());
+                    successCount++;
+                } else {
+                    results.put(fileName, "澶辫触: " + importResult.getMessage());
+                    failureCount++;
+                }
             }
 
-            Sheet sheet = book.getSheetAt(0);
-            //绗竴琛岃鍙�
-            Row row = sheet.getRow(0);
-            //璁惧缂栫爜
-            Cell equipmentCode = row.getCell(15);
-            if(CellType.NUMERIC.equals(equipmentCode.getCellType())) {
-                request.setEquipmentCode(String.valueOf((int) equipmentCode.getNumericCellValue()));
-            }else if(CellType.STRING.equals(equipmentCode.getCellType())) {
-                request.setEquipmentCode(equipmentCode.getStringCellValue());
-            }
-            if (StringUtils.isBlank(request.getEquipmentCode())) {
-                throw new JeecgBootException("Excel銆� " + file.getOriginalFilename() + "銆戞病鏈夎鍙栧埌璁惧缂栧彿锛屽鍏ュけ璐ワ紒");
-            }
-            //鍒濆鏃ユ湡
-            Cell initialDate = row.getCell(11);
-            if (DateUtil.isCellDateFormatted(initialDate)) {
-                request.setInitialDate(initialDate.getDateCellValue());
-            } else {
-                request.setInitialDate(new Date());
-            }
-            //璁惧鍚嶇О
-            Cell equipmentName = row.getCell(13);
-            request.setEquipmentName(equipmentName.getStringCellValue());
+            // 鏋勫缓鍝嶅簲
+            Map<String, Object> response = new HashMap<>();
+            response.put("results", results);
+            response.put("totalFiles", fileMap.size());
+            response.put("successCount", successCount);
+            response.put("failureCount", failureCount);
 
-            //绗簩琛岃鍙�
-            row = sheet.getRow(1);
-            //淇濆吇鍛ㄦ湡
-            Cell period = row.getCell(11);
-            if (CellType.NUMERIC.equals(period.getCellType())) {
-                request.setMaintenancePeriod((int) period.getNumericCellValue());
+            if (failureCount == 0) {
+                return Result.ok("鎵�鏈夌偣妫�鏂囦欢瀵煎叆鎴愬姛"+response);
+            } else if (successCount == 0) {
+                return Result.error("鎵�鏈夌偣妫�鏂囦欢瀵煎叆澶辫触", response);
             } else {
-                //榛樿鐐规鍛ㄦ湡 1
-                request.setMaintenancePeriod(1);
+                return Result.error("閮ㄥ垎鐐规鏂囦欢瀵煎叆澶辫触", response);
             }
-            //鏂囦欢缂栫爜
-            Cell fileCode = row.getCell(13);
-            request.setFileCode(fileCode.getStringCellValue());
+
         } catch (Exception e) {
-            log.error("璇诲彇Excel淇℃伅澶辫触锛歿}", e.getMessage(), e);
+            log.error("鐐规瀵煎叆澶勭悊寮傚父", e);
+            return Result.error("鐐规瀵煎叆澶勭悊澶辫触: " + e.getMessage());
+        }
+    }
+
+
+    /**
+     * 浜屼繚瀵煎叆
+     */
+    @PostMapping("/importSecondMaintenanceStandard")
+    public Result<?> importSecondMaintenanceStandard(HttpServletRequest request) {
+        try {
+            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+            Map<String, String> results = new LinkedHashMap<>();
+            Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+
+            // 缁熻瀵煎叆缁撴灉
+            int successCount = 0;
+            int failureCount = 0;
+
+            for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+                MultipartFile file = entity.getValue();
+                String fileName = file.getOriginalFilename();
+
+                Result<?> importResult = eamMaintenanceStandardService.importMaintenanceStandard(file, "SECOND");
+
+                if (importResult.isSuccess()) {
+                    results.put(fileName, "鎴愬姛: " + importResult.getMessage());
+                    successCount++;
+                } else {
+                    results.put(fileName, "澶辫触: " + importResult.getMessage());
+                    failureCount++;
+                }
+            }
+
+            // 鏋勫缓鏈�缁堝搷搴�
+            Map<String, Object> response = new HashMap<>();
+            response.put("results", results);
+            response.put("totalFiles", fileMap.size());
+            response.put("successCount", successCount);
+            response.put("failureCount", failureCount);
+
+            if (failureCount > 0) {
+                return Result.error("閮ㄥ垎鏂囦欢瀵煎叆澶辫触", response);
+            }
+
+            return Result.ok("鎵�鏈夋枃浠跺鍏ユ垚鍔�"+response);
+
+        } catch (Exception e) {
+            log.error("瀵煎叆澶勭悊寮傚父", e);
+            return Result.error("瀵煎叆澶勭悊澶辫触: " + e.getMessage());
         }
     }
 
     /**
-     * 璇诲彇Excel 绗竴琛岋紝 绗簩琛岀殑淇℃伅
-     * @param file
-     * @param request
+     * 涓変繚瀵煎叆
      */
-    public void readWeekExcel(MultipartFile file, EamMaintenanceStandardRequest request) {
-        Workbook book = null;
-        boolean isXSSFWorkbook = false;
+    @PostMapping("/importThirdMaintenanceStandard")
+    public Result<?> importThirdMaintenanceStandard(HttpServletRequest request) {
         try {
-            book = WorkbookFactory.create(file.getInputStream());
-            if (book instanceof XSSFWorkbook) {
-                isXSSFWorkbook = true;
+            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+            Map<String, String> results = new LinkedHashMap<>();
+            Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+
+            // 缁熻瀵煎叆缁撴灉
+            int successCount = 0;
+            int failureCount = 0;
+
+            for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+                MultipartFile file = entity.getValue();
+                String fileName = file.getOriginalFilename();
+
+                Result<?> importResult = eamMaintenanceStandardService.importMaintenanceStandard(file, "THIRD");
+
+                if (importResult.isSuccess()) {
+                    results.put(fileName, "鎴愬姛: " + importResult.getMessage());
+                    successCount++;
+                } else {
+                    results.put(fileName, "澶辫触: " + importResult.getMessage());
+                    failureCount++;
+                }
             }
 
-            Sheet sheet = book.getSheetAt(0);
-            //绗竴琛岃鍙�
-            Row row = sheet.getRow(0);
-            //璁惧缂栫爜
-            Cell equipmentCode = row.getCell(10);
-            if(CellType.NUMERIC.equals(equipmentCode.getCellType())) {
-                request.setEquipmentCode(String.valueOf((int) equipmentCode.getNumericCellValue()));
-            }else if(CellType.STRING.equals(equipmentCode.getCellType())) {
-                request.setEquipmentCode(equipmentCode.getStringCellValue());
-            }
-            if (StringUtils.isBlank(request.getEquipmentCode())) {
-                throw new JeecgBootException("Excel銆� " + file.getOriginalFilename() + "銆戞病鏈夎鍙栧埌璁惧缂栧彿锛屽鍏ュけ璐ワ紒");
-            }
-            //鍒濆鏃ユ湡
-            Cell initialDate = row.getCell(6);
-            if (DateUtil.isCellDateFormatted(initialDate)) {
-                request.setInitialDate(initialDate.getDateCellValue());
-            } else {
-                request.setInitialDate(new Date());
-            }
-            //璁惧鍚嶇О
-            Cell equipmentName = row.getCell(8);
-            request.setEquipmentName(equipmentName.getStringCellValue());
+            // 鏋勫缓鏈�缁堝搷搴�
+            Map<String, Object> response = new HashMap<>();
+            response.put("results", results);
+            response.put("totalFiles", fileMap.size());
+            response.put("successCount", successCount);
+            response.put("failureCount", failureCount);
 
-            //绗簩琛岃鍙�
-            row = sheet.getRow(1);
-            //淇濆吇鍛ㄦ湡
-            Cell period = row.getCell(6);
-            if (CellType.NUMERIC.equals(period.getCellType())) {
-                request.setMaintenancePeriod((int) period.getNumericCellValue());
-            } else {
-                request.setMaintenancePeriod(null);
+            if (failureCount > 0) {
+                return Result.error("閮ㄥ垎鏂囦欢瀵煎叆澶辫触", response);
             }
-            //鏂囦欢缂栫爜
-            Cell fileCode = row.getCell(8);
-            request.setFileCode(fileCode.getStringCellValue());
+
+            return Result.ok("鎵�鏈夋枃浠跺鍏ユ垚鍔�"+response);
+
         } catch (Exception e) {
-            log.error("璇诲彇Excel淇℃伅澶辫触锛歿}", e.getMessage(), e);
+            log.error("瀵煎叆澶勭悊寮傚父", e);
+            return Result.error("瀵煎叆澶勭悊澶辫触: " + e.getMessage());
         }
     }
+
 }

--
Gitblit v1.9.3