From ad853219d4a8c85eaf8c51e66e6efc49df5433bc Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 09 七月 2025 18:51:22 +0800
Subject: [PATCH] art: 技术状态鉴定规范3个导入-接口修改

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java |  173 +++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 142 insertions(+), 31 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java
index 3697fa0..70448c1 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationStandardController.java
@@ -10,16 +10,22 @@
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.modules.eam.constant.BusinessCodeConst;
+import org.jeecg.modules.eam.constant.TechnicalStatusEvaluationStandardEnum;
 import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
 import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationStandardRequest;
 import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationStandardService;
 import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
+import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
 
 import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.util.Arrays;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Description: 鎶�鏈姸鎬侀壌瀹氳鑼�
@@ -71,7 +77,7 @@
         if (CollectionUtil.isEmpty(request.getTableDetailList())) {
             return Result.error("妫�鏌ラ」涓嶈兘涓虹┖锛�");
         }
-        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MAINTENANCE_STANDARD_CODE_RULE);
+        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.TECHNICAL_STATUS_EVALUATION_STANDARD_CODE_RULE);
         request.setStandardCode(codeSeq);
         boolean b = eamTechnicalStatusEvaluationStandardService.addEamTechnicalStatusEvaluationStandard(request);
         if (!b) {
@@ -104,31 +110,28 @@
     }
 
     /**
-     * 閫氳繃id鍒犻櫎
+     * 鍗囩増
      *
-     * @param id
+     * @param request
      * @return
      */
-    @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-閫氳繃id鍒犻櫎")
-    @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-閫氳繃id鍒犻櫎", notes = "鎶�鏈姸鎬侀壌瀹氳鑼�-閫氳繃id鍒犻櫎")
-    @DeleteMapping(value = "/delete")
-    public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
-        eamTechnicalStatusEvaluationStandardService.removeById(id);
-        return Result.OK("鍒犻櫎鎴愬姛!");
-    }
-
-    /**
-     * 鎵归噺鍒犻櫎
-     *
-     * @param ids
-     * @return
-     */
-    @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎵归噺鍒犻櫎")
-    @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎵归噺鍒犻櫎", notes = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎵归噺鍒犻櫎")
-    @DeleteMapping(value = "/deleteBatch")
-    public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
-        this.eamTechnicalStatusEvaluationStandardService.removeByIds(Arrays.asList(ids.split(",")));
-        return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+    @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鍗囩増")
+    @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鍗囩増", notes = "鎶�鏈姸鎬侀壌瀹氳鑼�-鍗囩増")
+    @PutMapping(value = "/upgrade")
+    public Result<?> upgrade(@RequestBody EamTechnicalStatusEvaluationStandardRequest request) {
+        if (request == null) {
+            return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒");
+        }
+        if (CollectionUtil.isEmpty(request.getTableDetailList())) {
+            return Result.error("淇濆吇椤逛笉鑳戒负绌猴紒");
+        }
+        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.TECHNICAL_STATUS_EVALUATION_STANDARD_CODE_RULE);
+        request.setStandardCode(codeSeq);
+        boolean b = eamTechnicalStatusEvaluationStandardService.upgrade(request);
+        if (!b) {
+            return Result.error("鍗囩増澶辫触锛�");
+        }
+        return Result.OK("鍗囩増鎴愬姛!");
     }
 
     /**
@@ -146,15 +149,123 @@
     }
 
     /**
-     * 閫氳繃excel瀵煎叆鏁版嵁
+     * 鎻愪氦
      *
-     * @param request
-     * @param response
+     * @param id
      * @return
      */
-    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
-    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
-        return super.importExcel(request, response, EamTechnicalStatusEvaluationStandard.class);
+    @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎻愪氦")
+    @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎻愪氦", notes = "鎶�鏈姸鎬侀壌瀹氳鑼�-鎻愪氦")
+    @GetMapping(value = "/submit")
+    public Result<?> submit(@RequestParam(name = "id", required = true) String id) {
+        EamTechnicalStatusEvaluationStandard entity = eamTechnicalStatusEvaluationStandardService.getById(id);
+        if (entity != null) {
+            entity.setStandardStatus(TechnicalStatusEvaluationStandardEnum.ENABLE.name());
+            eamTechnicalStatusEvaluationStandardService.updateById(entity);
+        }
+        return Result.OK("鎻愪氦鎴愬姛!");
     }
 
+    /**
+     * 瀹夊叏瑁呯疆妫�鏌ユ槑缁嗗鍏�
+     *
+     * @param request
+     * @return
+     */
+    @PostMapping(value = "/importSafetyEquipmentCheck")
+    public Result<?> importSafetyEquipmentCheck(HttpServletRequest request) {
+        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 = eamTechnicalStatusEvaluationStandardService.importSafetyEquipmentCheck(file);
+            if (importResult.isSuccess()) {
+                successCount++;
+            } else {
+                results.put(fileName, importResult.getMessage());
+                failureCount++;
+            }
+        }
+        // 鏋勫缓鏈�缁堝搷搴�
+        return getResult(results, fileMap.size(), successCount, failureCount);
+    }
+
+    /**
+     * 瀹夊叏瑁呯疆妫�鏌ユ槑缁嗗鍏�
+     *
+     * @param request
+     * @return
+     */
+    @PostMapping(value = "/importPrecisionCheck")
+    public Result<?> importPrecisionCheck(HttpServletRequest request) {
+        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 = eamTechnicalStatusEvaluationStandardService.importPrecisionCheck(file);
+            if (importResult.isSuccess()) {
+                successCount++;
+            } else {
+                results.put(fileName, importResult.getMessage());
+                failureCount++;
+            }
+        }
+        // 鏋勫缓鏈�缁堝搷搴�
+        return getResult(results, fileMap.size(), successCount, failureCount);
+    }
+
+
+    /**
+     * 瀹夊叏瑁呯疆妫�鏌ユ槑缁嗗鍏�
+     *
+     * @param request
+     * @return
+     */
+    @PostMapping(value = "/importOtherCheck")
+    public Result<?> importOtherCheck(HttpServletRequest request) {
+        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 = eamTechnicalStatusEvaluationStandardService.importOtherCheck(file);
+            if (importResult.isSuccess()) {
+                successCount++;
+            } else {
+                results.put(fileName, importResult.getMessage());
+                failureCount++;
+            }
+        }
+        // 鏋勫缓鏈�缁堝搷搴�
+        return getResult(results, fileMap.size(), successCount, failureCount);
+    }
+
+    @NotNull
+    private Result<?> getResult(Map<String, String> results, int fileCount, int successCount, int failureCount) {
+        List<String> response = new ArrayList<>();
+        response.add("鎬绘枃浠舵暟锛�" + fileCount);
+        response.add("鎴愬姛鏁帮細" + successCount);
+        response.add("澶辫触鏁帮細" + failureCount);
+        if (failureCount > 0) {
+            response.add("閿欒淇℃伅锛�" + results.values());
+            return Result.error("閮ㄥ垎鏂囦欢瀵煎叆澶辫触锛�" + response);
+        }
+        return Result.ok("鎵�鏈夋枃浠跺鍏ユ垚鍔燂細" + response);
+    }
+
+
 }

--
Gitblit v1.9.3