From 65866894f615d7a1386cd7f030307322996450de Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 24 十月 2024 16:17:37 +0800
Subject: [PATCH] 文件柜导出接口上传,ui定义导出界面传参调整。

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsPvolumesController.java |   51 +++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 49 insertions(+), 2 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsPvolumesController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsPvolumesController.java
index 35c5619..7fff70c 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsPvolumesController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsPvolumesController.java
@@ -3,11 +3,15 @@
 import com.vci.corba.common.PLException;
 import com.vci.corba.framework.data.PvolumeInfo;
 import com.vci.dto.*;
+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.VciBaseUtil;
 import com.vci.web.service.OsActionServiceI;
 import com.vci.web.service.OsPvolumesServiceI;
+import com.vci.web.util.Func;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -15,6 +19,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -55,7 +60,7 @@
      * @param dto 鍗风殑浼犺緭淇℃伅
      * @return 淇濆瓨缁撴灉
      */
-    @GetMapping("/savePvolume")
+    @PostMapping("/savePvolume")
     public BaseResult savePvolume(@RequestBody OsPvolumeDTO dto){
         try {
             return osPvolumesServiceI.savePvolume(dto);
@@ -72,7 +77,7 @@
      * @param dto 鍗风殑浼犺緭淇℃伅
      * @return 淇敼缁撴灉
      */
-    @GetMapping("/updatePvolume")
+    @PostMapping("/updatePvolume")
     public BaseResult updatePvolume(@RequestBody OsPvolumeDTO dto){
         try {
             return osPvolumesServiceI.updatePvolume(dto);
@@ -100,4 +105,46 @@
             return objectBaseResult;
         }
     }
+
+    /**
+     * 涓烘枃浠舵煖鍒嗛厤鎴愬憳
+     * @param pvolumId
+     * @param userIds
+     * @return
+     */
+    @PostMapping("/savePvolumeUser")
+    public BaseResult savePvolumeUser(String pvolumId ,String[] userIds){
+        try {
+            return osPvolumesServiceI.savePvolumeUser(pvolumId,userIds) ? BaseResult.success("鏂囦欢鏌滃垎閰嶆垚鍛樻垚鍔燂紒"):BaseResult.fail("鏂囦欢鏌滃垎閰嶆垚鍛樺け璐ワ紒");
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        }
+    }
+
+    /**
+     * 瀵煎嚭閫変腑鐨勬枃浠舵煖淇℃伅
+     * @param exportFileName 瀵煎嚭鐨勬枃浠跺悕
+     * @param pvolumeIds 闇�瑕佸鍑虹殑灞炴�ц嫳鏂囧悕绉�
+     * @param response
+     */
+    @GetMapping( "/exportPvolumes")
+    @VciBusinessLog(operateName = "瀵煎嚭閫変腑鐨勬枃浠舵煖淇℃伅")
+    public void exportPvolumes(String exportFileName, String pvolumeIds, HttpServletResponse response){
+        try {
+            String excelPath = osPvolumesServiceI.exportPvolumes(exportFileName,pvolumeIds);
+            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();
+            }
+        }
+    }
+
 }

--
Gitblit v1.9.3