From 0add10ef126bfb861192df3e7c6574910c31a7ae Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 01 八月 2024 17:19:03 +0800
Subject: [PATCH] 版本规则管理所有接口上传(已测试待联调)

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsRevisionRuleController.java |  112 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 105 insertions(+), 7 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsRevisionRuleController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsRevisionRuleController.java
index 7e178b4..7b4c389 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsRevisionRuleController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsRevisionRuleController.java
@@ -1,15 +1,29 @@
 package com.vci.web.controller;
 
+import com.vci.constant.FrameWorkLangCodeConstant;
 import com.vci.dto.OsRevisionRuleDTO;
 import com.vci.pagemodel.OsRevisionRuleVO;
 import com.vci.starter.web.annotation.controller.VciUnCheckRight;
+import com.vci.starter.web.annotation.log.VciBusinessLog;
+import com.vci.starter.web.exception.VciBaseException;
 import com.vci.starter.web.pagemodel.BaseResult;
+import com.vci.starter.web.util.ControllerUtil;
+import com.vci.starter.web.util.LocalFileUtil;
 import com.vci.starter.web.util.VciBaseUtil;
 import com.vci.web.service.OsRevisionRuleServiceI;
+import com.vci.web.util.Func;
+import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 鐗堟湰瑙勫垯鎺у埗鍣�
@@ -33,7 +47,6 @@
      * @return
      */
     @GetMapping("/getVersionRuleAllList")
-    @VciUnCheckRight
     public BaseResult getVersionRuleAllList(){
         try {
             return BaseResult.dataList(revisionRuleServiceI.selectAllRevision());
@@ -51,7 +64,6 @@
      * @return
      */
     @GetMapping("/getUsedVersionRuleList")
-    @VciUnCheckRight
     public BaseResult getUsedVersionRuleList(String vrName){
         try {
             return BaseResult.dataList(revisionRuleServiceI.getUsedVersionRuleList(vrName));
@@ -69,7 +81,6 @@
      * @return
      */
     @PostMapping("/addVersionRule")
-    @VciUnCheckRight
     public BaseResult addVersionRule(@RequestBody OsRevisionRuleDTO osRevisionRuleDTO){
         try {
             return revisionRuleServiceI.addVersionRule(osRevisionRuleDTO) ? BaseResult.success("鐗堟湰瑙勫垯娣诲姞鎴愬姛锛�"):BaseResult.fail("鐗堟湰瑙勫垯娣诲姞澶辫触锛�");
@@ -86,17 +97,104 @@
      * @param osRevisionRuleDTO 鐗堟湰瑙勫垯鏁版嵁浼犺緭瀵硅薄
      * @return
      */
-    @PostMapping("/updateVersionRule")
-    @VciUnCheckRight
+    @PutMapping("/updateVersionRule")
     public BaseResult updateVersionRule(@RequestBody OsRevisionRuleDTO osRevisionRuleDTO){
         try {
-            return revisionRuleServiceI.updateVersionRule(osRevisionRuleDTO) ? BaseResult.success("鐗堟湰瑙勫垯娣诲姞鎴愬姛锛�"):BaseResult.fail("鐗堟湰瑙勫垯娣诲姞澶辫触锛�");
+            return revisionRuleServiceI.updateVersionRule(osRevisionRuleDTO) ? BaseResult.success("鐗堟湰瑙勫垯淇敼鎴愬姛锛�"):BaseResult.fail("鐗堟湰瑙勫垯淇敼澶辫触锛�");
         }catch (Exception e) {
             e.printStackTrace();
-            String exceptionMessage = "澧炲姞灞炴�ф椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e);
+            String exceptionMessage = "淇敼鐗堟湰瑙勫垯鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
             logger.error(exceptionMessage);
             return BaseResult.fail(exceptionMessage);
         }
     }
 
+    /**
+     * 鍒犻櫎鐗堟湰瑙勫垯
+     * @param osRevisionRuleDTOS 鐗堟湰瑙勫垯鏁版嵁浼犺緭瀵硅薄
+     * @return
+     */
+    @DeleteMapping("/deleteVersionRule")
+    public BaseResult deleteVersionRule(@RequestBody List<OsRevisionRuleDTO> osRevisionRuleDTOS){
+        try {
+            return revisionRuleServiceI.deleteVersionRule(osRevisionRuleDTOS) ? BaseResult.success("鐗堟湰瑙勫垯鍒犻櫎鎴愬姛锛�"):BaseResult.fail("鐗堟湰瑙勫垯鍒犻櫎澶辫触锛�");
+        }catch (Exception e) {
+            e.printStackTrace();
+            String exceptionMessage = "鍒犻櫎鐗堟湰瑙勫垯鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+            logger.error(exceptionMessage);
+            return BaseResult.fail(exceptionMessage);
+        }
+    }
+
+    /**
+     * 瀵煎嚭閫変腑鐨勭増鏈鍒�
+     * @param exportFileName 瀵煎嚭鐨勬枃浠跺悕
+     * @param vrNames 闇�瑕佸鍑虹殑瑙勫垯鑻辨枃鍚嶇О
+     * @param response
+     */
+    @GetMapping( "/exportVersionRule")
+    @VciBusinessLog(operateName = "瀵煎嚭鐗堟湰瑙勫垯")
+    public void exportVersionRule(String exportFileName,String vrNames, HttpServletResponse response){
+        try {
+            String excelPath = revisionRuleServiceI.exportVersionRule(exportFileName,vrNames,false);
+            ControllerUtil.writeFileToResponse(response,excelPath);
+        } catch (Exception e) {
+            String msg = "瀵煎嚭鐗堟湰瑙勫垯鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+            try {
+                //鍑洪敊鏃�
+                e.printStackTrace();
+                ControllerUtil.writeDataToResponse(response,"error_" + Func.format(new Date(),"yyyy-MM-dd HHmmss.sss") + ".txt", StringUtils.isNotBlank(msg)?msg.getBytes():new byte[0],null);
+            } catch (IOException ioException) {
+                ioException.printStackTrace();
+            }
+        }
+    }
+
+    /**
+     * 涓嬭浇鐗堟湰瑙勫垯瀵煎叆妯℃澘
+     * @param exportFileName
+     * @param response
+     */
+    @GetMapping( "/downloadAttributeTemplate")
+    @VciBusinessLog(operateName = "瀵煎嚭鐗堟湰瑙勫垯")
+    public void downloadVersionRuleTemplate(String exportFileName, HttpServletResponse response){
+        try {
+            String excelPath = revisionRuleServiceI.downloadVersionRuleTemplate(exportFileName);
+            ControllerUtil.writeFileToResponse(response,excelPath);
+        } catch (Exception e) {
+            String msg = "涓嬭浇鐗堟湰瑙勫垯瀵煎叆妯℃澘鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+            try {
+                //鍑洪敊鏃�
+                e.printStackTrace();
+                ControllerUtil.writeDataToResponse(response,"error_" + Func.format(new Date(),"yyyy-MM-dd HHmmss.sss") + ".txt", StringUtils.isNotBlank(msg)?msg.getBytes():new byte[0],null);
+            } catch (IOException ioException) {
+                ioException.printStackTrace();
+            }
+        }
+    }
+
+    /**
+     * 瀵煎叆鐗堟湰瑙勫垯
+     * @param file
+     * @return
+     */
+    @PostMapping("/importVersionRules")
+    @VciBusinessLog(operateName = "瀵煎叆鐗堟湰瑙勫垯")
+    public BaseResult importVersionRules(MultipartFile file){
+        String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + LocalFileUtil.getFileNameForIE(file.getOriginalFilename());
+        File file1 = new File(excelFileName);
+        try {
+            file.transferTo(new File(excelFileName));
+            if (file != null) {
+                return revisionRuleServiceI.importVersionRules(file1);
+            } else {
+                return BaseResult.fail(FrameWorkLangCodeConstant.IMPORT_FAIL, new String[]{"鏃犲鍏ョ殑鏂囦欢"});
+            }
+        }catch (Throwable e) {
+            throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e);
+        }finally {
+            file1.delete();
+        }
+    }
+
 }

--
Gitblit v1.9.3