From 56c25bcb0dc03aae78aba23f32ebbf548b866332 Mon Sep 17 00:00:00 2001
From: xing <xingjs@qq.com>
Date: 星期三, 22 二月 2023 14:11:09 +0800
Subject: [PATCH] 20230221@xingjs@提交官网一张图相关内容接口

---
 src/main/java/com/lf/server/helper/WebHelper.java |   51 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 43 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/lf/server/helper/WebHelper.java b/src/main/java/com/lf/server/helper/WebHelper.java
index 23937bb..57a4a1b 100644
--- a/src/main/java/com/lf/server/helper/WebHelper.java
+++ b/src/main/java/com/lf/server/helper/WebHelper.java
@@ -21,9 +21,7 @@
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.sql.Timestamp;
-import java.util.Calendar;
-import java.util.Random;
-import java.util.UUID;
+import java.util.*;
 
 /**
  * Web甯姪绫�
@@ -307,13 +305,14 @@
      * @throws Exception 寮傚父
      */
     public static void download(String file, String fileName, HttpServletResponse res) throws Exception {
-        if (StringHelper.isNull(fileName)) {
-            fileName = URLEncoder.encode(FileHelper.getFileName(file), "UTF-8");
+        if (StringHelper.isEmpty(fileName)) {
+            fileName = StringHelper.YMDHMS2_FORMAT.format(new Date());
         }
+        fileName = URLEncoder.encode(fileName, "UTF-8").replace("+", "%20");
 
         // 璁剧疆鍝嶅簲澶翠腑鏂囦欢鐨勪笅杞芥柟寮忎负闄勪欢鏂瑰紡锛屼互鍙婅缃枃浠跺悕
-        res.setHeader("Content-Disposition", "attachment; filename=" + fileName);
-        // 璁剧疆鍝嶅簲澶寸殑缂栫爜鏍煎紡涓篣TF-8
+        res.setHeader("Content-Disposition", "attachment; filename*=UTF-8''" + fileName);
+        // 璁剧疆鍝嶅簲澶寸殑缂栫爜鏍煎紡涓� UTF-8
         res.setCharacterEncoding("UTF-8");
 
         // 閫氳繃response瀵硅薄璁剧疆鍝嶅簲鏁版嵁鏍煎紡(濡傦細"text/plain; charset=utf-8")
@@ -335,8 +334,8 @@
         }
 
         // 鍏抽棴璧勬簮
-        outputStream.close();
         fileInputStream.close();
+        outputStream.close();
     }
 
     /**
@@ -351,4 +350,40 @@
             log.error(ex.getMessage(), ex);
         }
     }
+
+    /**
+     * 鑾峰彇璇锋眰鐨勫弬鏁板��
+     *
+     * @param req 璇锋眰
+     * @param key 鍙傛暟鍚�
+     * @return 鍙傛暟鍊�
+     */
+    public static String getReqParamVal(HttpServletRequest req, String key) {
+        Map<String, String[]> maps = req.getParameterMap();
+        for (Map.Entry<String, String[]> entry : maps.entrySet()) {
+            if (entry.getKey().equalsIgnoreCase(key)) {
+                return null == entry.getValue() || 0 == entry.getValue().length ? null : entry.getValue()[0];
+            }
+        }
+
+        return null;
+    }
+
+    /**
+     * 鑾峰彇璇锋眰鐨勫弬鏁板��
+     *
+     * @param req 璇锋眰
+     * @param key 鍙傛暟鍚�
+     * @return 鍙傛暟鍊�
+     */
+    public static String[] getReqParamVals(HttpServletRequest req, String key) {
+        Map<String, String[]> maps = req.getParameterMap();
+        for (Map.Entry<String, String[]> entry : maps.entrySet()) {
+            if (entry.getKey().equalsIgnoreCase(key)) {
+                return entry.getValue();
+            }
+        }
+
+        return null;
+    }
 }

--
Gitblit v1.9.3