From da59bd81334e7b4ddeaaa401f27c5b93797fde46 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期四, 20 二月 2025 10:36:18 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 cnas-manage/src/main/java/com/ruoyi/manage/controller/ManageControlPlanListController.java |  129 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 129 insertions(+), 0 deletions(-)

diff --git a/cnas-manage/src/main/java/com/ruoyi/manage/controller/ManageControlPlanListController.java b/cnas-manage/src/main/java/com/ruoyi/manage/controller/ManageControlPlanListController.java
new file mode 100644
index 0000000..55a714e
--- /dev/null
+++ b/cnas-manage/src/main/java/com/ruoyi/manage/controller/ManageControlPlanListController.java
@@ -0,0 +1,129 @@
+package com.ruoyi.manage.controller;
+
+import com.alibaba.excel.EasyExcel;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.alibaba.excel.read.listener.PageReadListener;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.exception.ErrorException;
+import com.ruoyi.manage.pojo.ManageControlPlanList;
+import com.ruoyi.manage.service.ManageControlPlanListService;
+import com.ruoyi.manage.vo.ManageControlPlanListVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.poi.ss.formula.functions.T;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 閲嶅ぇ椋庨櫓鍥犵礌鍒嗘瀽鍙婃帶鍒惰鍒掓竻鍗� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-11-15 02:58:30
+ */
+@Api(tags = "閲嶅ぇ椋庨櫓鍥犵礌鍒嗘瀽鍙婃帶鍒惰鍒掓竻鍗�")
+@RestController
+@RequestMapping("/manageControlPlanList")
+public class ManageControlPlanListController {
+
+
+    @Resource
+    private ManageControlPlanListService manageControlPlanListService;
+
+
+
+    @ApiOperation(value = "鍒嗛〉鏌ヨ")
+    @GetMapping("/getPageList")
+    public Result<IPage<ManageControlPlanListVo>> getPageList(Page page) {
+        return Result.success(manageControlPlanListService.getPageList(page));
+    }
+
+    @ApiOperation(value = "鎵瑰噯")
+    @GetMapping("/approvalOfControlPlanChecklist")
+    public Result<?> approvalOfControlPlanChecklist(Integer approve, Integer status){
+        manageControlPlanListService.update(Wrappers.<ManageControlPlanList>lambdaUpdate()
+                .set(ManageControlPlanList::getApprove, approve)
+                .set(ManageControlPlanList::getApproveStatus, status)
+                .set(ManageControlPlanList::getApproveDate, LocalDateTime.now()));
+        return Result.success();
+    }
+
+    @ApiOperation(value = "瀹℃壒")
+    @GetMapping("/riskAnalysisApprovalOfControlPlanChecklist")
+    public Result<?> riskAnalysisApprovalOfControlPlanChecklist(Integer approval, Integer status){
+        manageControlPlanListService.update(Wrappers.<ManageControlPlanList>lambdaUpdate()
+                .set(ManageControlPlanList::getApproval, approval)
+                .set(ManageControlPlanList::getApprovalStatus, status)
+                .set(ManageControlPlanList::getApprovalDate, LocalDateTime.now()));
+        return Result.success();
+    }
+
+    @PostMapping("/importControlPlanList")
+    public void importControlPlanList(MultipartFile file) throws IOException {
+        boolean excelFile = isExcelFile(file);
+        if (!excelFile) {
+            throw new ErrorException("璇峰鍏xcel鏂囦欢锛�");
+        }
+        EasyExcel.read(file.getInputStream(), ManageControlPlanList.class, new PageReadListener<ManageControlPlanList>(dataList -> {
+            Integer userId = SecurityUtils.getUserId().intValue();
+            dataList.forEach(i -> {
+                i.setEditor(userId);
+                i.setEditorDate(LocalDateTime.now());
+                i.setApproveStatus(0);
+                i.setApprovalStatus(0);
+            });
+            manageControlPlanListService.saveOrUpdateBatch(dataList);
+        })).sheet().doRead();
+    }
+
+    @ApiOperation(value = "鏂板")
+    @PostMapping("/analysisOfMajorRiskFactorsAdded")
+    public void analysisOfMajorRiskFactorsAdded(@RequestBody ManageControlPlanList manageControlPlanList) throws IOException {
+        Integer userId = SecurityUtils.getUserId().intValue();
+        manageControlPlanList.setEditor(userId);
+        manageControlPlanList.setEditorDate(LocalDateTime.now());
+        manageControlPlanListService.saveOrUpdate(manageControlPlanList);
+    }
+
+    @ApiOperation(value = "鍒犻櫎")
+    @GetMapping("/deleteSignificantRiskFactorAnalysis")
+    public void deleteSignificantRiskFactorAnalysis(Integer id) throws IOException {
+        manageControlPlanListService.removeById(id);
+    }
+
+    /**
+     *
+     * @return
+     */
+
+    @ApiOperation(value = "閲嶅ぇ椋庨櫓鍥犵礌鍒嗘瀽鍙婃帶鍒惰鍒掓竻鍗�")
+    @GetMapping("/exportSignificantRiskFactors")
+    public void exportSignificantRiskFactors(HttpServletResponse response){
+        manageControlPlanListService.exportPersonTraining(response);
+    }
+
+    public static boolean isExcelFile(MultipartFile file) {
+        if (file.isEmpty()) {
+            return false;
+        }
+        String originalFilename = file.getOriginalFilename();
+        if (originalFilename == null) {
+            return false;
+        }
+        String[] parts = originalFilename.split("\\.");
+        if (parts.length == 0) {
+            return false;
+        }
+        String fileExtension = parts[parts.length - 1].toLowerCase();
+        return fileExtension.equals("xls") || fileExtension.equals("xlsx");
+    }
+}

--
Gitblit v1.9.3