From 64d3e9657fb45b6415b19e23f483d46a82efe939 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期一, 06 三月 2023 13:56:42 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/mapper/sys/AttachMapper.java         |   11 +++++
 src/main/java/com/lf/server/service/sys/AttachService.java       |    7 +++
 src/main/java/com/lf/server/service/all/UploadAttachService.java |   30 ++++++++++++++
 src/main/resources/mapper/sys/AttachMapper.xml                   |   13 ++++++
 src/main/java/com/lf/server/controller/sys/ResController.java    |   33 +++++++++++++++-
 5 files changed, 88 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/sys/ResController.java b/src/main/java/com/lf/server/controller/sys/ResController.java
index 46e4226..47b4970 100644
--- a/src/main/java/com/lf/server/controller/sys/ResController.java
+++ b/src/main/java/com/lf/server/controller/sys/ResController.java
@@ -5,6 +5,7 @@
 import com.lf.server.entity.all.ResponseMsg;
 import com.lf.server.entity.sys.ResEntity;
 import com.lf.server.entity.sys.UserEntity;
+import com.lf.server.helper.StringHelper;
 import com.lf.server.service.all.PermsService;
 import com.lf.server.service.all.UploadAttachService;
 import com.lf.server.service.data.DownloadService;
@@ -321,18 +322,44 @@
     })
     @ResponseBody
     @PostMapping(value = "/downloadReq")
-    public ResponseMsg<Object> downloadReq(String[] guids, HttpServletRequest req, HttpServletResponse res) {
+    public ResponseMsg<Object> downloadReqForGuids(String[] guids, HttpServletRequest req, HttpServletResponse res) {
         try {
             if (null == guids || guids.length == 0) {
-                return fail("闄勪欢Guid鏁扮粍涓虹┖");
+                return fail("Guid鏁扮粍涓虹┖");
             }
 
             UserEntity ue = tokenService.getCurrentUser(req);
-            //String guid = downloadService.zipFiles(ue, list, reqEntity.getPwd());
+            String guid = uploadAttachService.downloadReqForGuids(ue, guids);
 
             return success("");
         } catch (Exception ex) {
             return fail(ex, null);
         }
     }
+
+    @SysLog()
+    @ApiOperation(value = "璇锋眰涓嬭浇")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "tab", value = "琛ㄥ悕", dataType = "String", paramType = "body", example = "bd.b_borehole"),
+            @ApiImplicitParam(name = "guids", value = "闄勪欢Guid鏁扮粍", dataType = "String", paramType = "body", allowMultiple = true, example = "08e5b4ad-93b8-46f6-adaa-46a6274af4ce,6f94f4f8-6e8d-44e7-8803-3d068d34983f")
+    })
+    @ResponseBody
+    @PostMapping(value = "/downloadReq")
+    public ResponseMsg<Object> downloadReqForTabGuids(String tab, String[] guids, HttpServletRequest req, HttpServletResponse res) {
+        try {
+            if (StringHelper.isEmpty(tab)) {
+                return fail("琛ㄥ悕涓虹┖");
+            }
+            if (null != guids && guids.length == 0) {
+                guids = null;
+            }
+
+            UserEntity ue = tokenService.getCurrentUser(req);
+            String guid = uploadAttachService.downloadReqForTabGuids(ue, tab, guids);
+
+            return success(guid);
+        } catch (Exception ex) {
+            return fail(ex, null);
+        }
+    }
 }
diff --git a/src/main/java/com/lf/server/mapper/sys/AttachMapper.java b/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
index 7cc2c9a..88c2ea5 100644
--- a/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
+++ b/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
@@ -60,7 +60,7 @@
      * @param guids
      * @return
      */
-    public AttachEntity selectByGuids(String[] guids);
+    public List<AttachEntity> selectByGuids(String[] guids);
 
     /**
      * 鏍规嵁琛ㄥ悕鍜孏UID鏌ヨ
@@ -73,6 +73,15 @@
     public AttachEntity selectByTabAndGuid(String tab, String tabGuid, String guid);
 
     /**
+     * 鏍规嵁琛ㄥ悕鍜孏UID鏁扮粍鏌ヨ
+     *
+     * @param tab
+     * @param guids
+     * @return
+     */
+    public List<AttachEntity> selectByTabGuids(String tab, String[] guids);
+
+    /**
      * 鏍规嵁琛ㄥ拰GUID鏌ヨ
      *
      * @param tab
diff --git a/src/main/java/com/lf/server/service/all/UploadAttachService.java b/src/main/java/com/lf/server/service/all/UploadAttachService.java
index 071c50b..ec0a2f4 100644
--- a/src/main/java/com/lf/server/service/all/UploadAttachService.java
+++ b/src/main/java/com/lf/server/service/all/UploadAttachService.java
@@ -1,6 +1,5 @@
 package com.lf.server.service.all;
 
-import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.lf.server.controller.all.BaseController;
 import com.lf.server.entity.all.*;
@@ -405,4 +404,33 @@
 
         return entity;
     }
+
+    /**
+     * 璇锋眰涓嬭浇
+     */
+    public String downloadReqForGuids(UserEntity ue, String[] guids) {
+        List<AttachEntity> list = attachService.selectByGuids(guids);
+
+        return downloadReq(ue, list);
+    }
+
+    /**
+     * 璇锋眰涓嬭浇
+     */
+    public String downloadReqForTabGuids(UserEntity ue, String tab, String[] guids) {
+        List<AttachEntity> list = attachService.selectByTabGuids(tab, guids);
+
+        return downloadReq(ue, list);
+    }
+
+    /**
+     * 璇锋眰涓嬭浇
+     */
+    protected String downloadReq(UserEntity ue, List<AttachEntity> list) {
+        if (null == list || list.isEmpty()) {
+            return null;
+        }
+
+        return "";
+    }
 }
diff --git a/src/main/java/com/lf/server/service/sys/AttachService.java b/src/main/java/com/lf/server/service/sys/AttachService.java
index b6e6f01..b7c2994 100644
--- a/src/main/java/com/lf/server/service/sys/AttachService.java
+++ b/src/main/java/com/lf/server/service/sys/AttachService.java
@@ -47,7 +47,7 @@
     }
 
     @Override
-    public AttachEntity selectByGuids(String[] guids) {
+    public List<AttachEntity> selectByGuids(String[] guids) {
         return attachMapper.selectByGuids(guids);
     }
 
@@ -57,6 +57,11 @@
     }
 
     @Override
+    public List<AttachEntity> selectByTabGuids(String tab, String[] guids) {
+        return attachMapper.selectByTabGuids(tab, guids);
+    }
+
+    @Override
     public List<AttachEntity> selectByTab(String tab, String guid) {
         return attachMapper.selectByTab(tab, guid);
     }
diff --git a/src/main/resources/mapper/sys/AttachMapper.xml b/src/main/resources/mapper/sys/AttachMapper.xml
index 0039d80..0e8d504 100644
--- a/src/main/resources/mapper/sys/AttachMapper.xml
+++ b/src/main/resources/mapper/sys/AttachMapper.xml
@@ -44,6 +44,19 @@
         select * from lf.sys_attach where tab = #{tab} and tab_guid = #{tabGuid} and guid = #{guid} limit 1
     </select>
 
+    <select id="selectByTabGuids" resultType="com.lf.server.entity.sys.AttachEntity">
+        select * from lf.sys_attach
+        <where>
+            tab = #{tab}
+            <if test="guids != null">
+                and tab_guid in
+                <foreach item="guid" collection="guids" index="index" open="(" separator="," close=")">
+                    #{guid}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
     <select id="selectByTab" resultType="com.lf.server.entity.sys.AttachEntity">
         select * from lf.sys_attach where tab = #{tab} and tab_guid = #{guid}
     </select>

--
Gitblit v1.9.3