From 816ba1e56476f0e23f51711aae4b34507a04a59c Mon Sep 17 00:00:00 2001
From: admin <liwen611>
Date: 星期一, 27 五月 2024 15:18:33 +0800
Subject: [PATCH] 解决上传日期问题

---
 ruoyi-admin/src/main/java/com/ruoyi/utils/FtpUtils.java |   39 ++++++++++++++++++++++-----------------
 1 files changed, 22 insertions(+), 17 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/utils/FtpUtils.java b/ruoyi-admin/src/main/java/com/ruoyi/utils/FtpUtils.java
index 1408a59..6e1becc 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/utils/FtpUtils.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/utils/FtpUtils.java
@@ -24,7 +24,7 @@
     private static Logger logger = LoggerFactory.getLogger(FtpUtils.class);
 
     private static final String DEFAULT_CHARSET = "UTF-8";
-    private static final int DEFAULT_TIMEOUT = 60 * 1000;
+    private static final int DEFAULT_TIMEOUT = 6000 * 1000;
     private static final String DAILY_FILE_PATH = "get";
     static FTPClient ftpClient;
     private volatile String ftpBasePath;
@@ -130,26 +130,31 @@
         logger.info("username---"+username+"--host---"+host+"---port---"+port+"-----password-----"+password);
         boolean flag = false;
         try {
-            ftpClient = new FTPClient();
-            // 杩炴帴FTP鏈嶅姟鍣�
-            ftpClient.connect(host, port);
-            // 鐧婚檰FTP鏈嶅姟鍣�
-            boolean login = ftpClient.login(username, password);
-            // 涓枃鏀寔
-            ftpClient.setControlEncoding(DEFAULT_CHARSET);
-            // 璁剧疆鏂囦欢绫诲瀷涓轰簩杩涘埗锛堝鏋滀粠FTP涓嬭浇鎴栦笂浼犵殑鏂囦欢鏄帇缂╂枃浠剁殑鏃跺�欙紝涓嶈繘琛岃璁剧疆鍙兘浼氬鑷磋幏鍙栫殑鍘嬬缉鏂囦欢瑙e帇澶辫触锛�
-            ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
-            ftpClient.enterLocalPassiveMode();
+            if (ftpClient!=null && !FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
+                ftpClient = new FTPClient();
+                // 杩炴帴FTP鏈嶅姟鍣�
+                ftpClient.connect(host, port);
+                // 鐧婚檰FTP鏈嶅姟鍣�
+                boolean login = ftpClient.login(username, password);
+                // 涓枃鏀寔
+                ftpClient.setControlEncoding(DEFAULT_CHARSET);
+                // 璁剧疆鏂囦欢绫诲瀷涓轰簩杩涘埗锛堝鏋滀粠FTP涓嬭浇鎴栦笂浼犵殑鏂囦欢鏄帇缂╂枃浠剁殑鏃跺�欙紝涓嶈繘琛岃璁剧疆鍙兘浼氬鑷磋幏鍙栫殑鍘嬬缉鏂囦欢瑙e帇澶辫触锛�
+                ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
+                ftpClient.enterLocalPassiveMode();
 
 //			if (!ftpClient.login(username, password)) {
 //				disconnect();
 //				throw new IOException("涓嶈兘杩炴帴鍒拌鏈嶅姟 :" + host);
 //			}
-            if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
-                logger.error("杩炴帴FTP澶辫触锛岀敤鎴峰悕鎴栧瘑鐮侀敊璇��");
-                disconnect();
+                if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
+                    logger.error("杩炴帴FTP澶辫触锛岀敤鎴峰悕鎴栧瘑鐮侀敊璇��");
+                    disconnect();
+                } else {
+                    logger.info("FTP杩炴帴鎴愬姛!");
+                    flag = true;
+                }
             } else {
-                logger.info("FTP杩炴帴鎴愬姛!");
+                logger.info("褰撳墠FTP澶勪簬杩炴帴鐘舵��,鏃犵嚎閲嶅杩炴帴!");
                 flag = true;
             }
         } catch (Exception e) {
@@ -665,14 +670,14 @@
                     logger.info("FTP鏂囦欢鍚嶄慨鏀瑰け璐�---------->>>>>鏂囦欢鍚嶏細"+split2[0]);
                 }
                 input.close();
-                disconnect();
+                //disconnect();
                 return storeFlag;
             }
 
         } catch (Exception e) {
             logger.error("FTP鏂囦欢涓婁紶澶辫触锛�", e);
         } finally {
-            disconnect();
+            //disconnect();
         }
         return false;
     }

--
Gitblit v1.8.0