From 644ed3e30bbee9a417dfbe649f2a72df25a7efb1 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 18 May 2022 10:10:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/org/springblade/modules/FTP/Monitor.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 47 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/springblade/modules/FTP/Monitor.java b/src/main/java/org/springblade/modules/FTP/Monitor.java
index 4f48894..34ad406 100644
--- a/src/main/java/org/springblade/modules/FTP/Monitor.java
+++ b/src/main/java/org/springblade/modules/FTP/Monitor.java
@@ -9,6 +9,8 @@
import java.io.IOException;
import java.io.InputStream;
+import java.text.SimpleDateFormat;
+import java.util.Date;
import static org.springblade.common.config.FtpConfig.*;
@@ -16,7 +18,7 @@
@Component
public class Monitor {
- @Scheduled(cron = "*/1 * * * * ?")
+ @Scheduled(cron = "*/10 * * * * ?")
public static boolean isFTPFileExist() {
FTPClient ftp = new FTPClient();
@@ -34,6 +36,8 @@
return false;
}
+ System.out.println("ftp 连接成功!时间: "+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+
//被动模式,文件上传不成功会有提示
ftp.enterLocalActiveMode();
@@ -47,12 +51,14 @@
ftp.changeWorkingDirectory(ftpPath);
FTPFile[] files = ftp.listFiles();
if (files.length == 0) {
+ ftp.disconnect();
return false;
} else {
for (FTPFile file : files) {
- fileName = file.getName();
+ fileName = file.getName();
InputStream is = ftp.retrieveFileStream(new String(fileName.getBytes("GBK"), FTP.DEFAULT_CONTROL_ENCODING));
if (null == is) {
+ ftp.disconnect();
return false;
} else {
String substring1 = fileName.substring(0, 1);
@@ -93,7 +99,7 @@
MysqlCenlint.deletess(fileName);
//删除 ftp 文件
FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
- }else if(substring1.equals("ol")){
+ }else if(substring1.equals("l")){
//用户集合数据
//获取对象字符串
String json = OutJson.TestJson(fileName);
@@ -103,6 +109,36 @@
MysqlCenlint.deletess(fileName);
//删除 ftp 文件
FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
+ }else if(substring1.equals("t")){
+ //培训报名数据
+ //获取对象字符串
+ String json = OutJson.TestJson(fileName);
+ //数据处理
+ DataHanlder.handlerListTrain(json);
+ //删除本地文件
+ MysqlCenlint.deletess(fileName);
+ //删除 ftp 文件
+ FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
+ }else if(substring1.equals("s")){
+ //获取保安员证编号数据
+ //获取对象字符串
+ String json = OutJson.TestJson(fileName);
+ //数据处理
+ DataHanlder.handlerSecurityNumerBit(json);
+ //删除本地文件
+ MysqlCenlint.deletess(fileName);
+ //删除 ftp 文件
+ FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
+ }
+// else if(substring1.equals("f")){
+// //把文件下载到本地(图片文件类),测试内外网使用同一台服务器
+// FtpUtil.downloadFtpFile(ftpHost, ftpUserName, ftpPassword, ftpPort, ftpPath, minioPath, fileName);
+// FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
+// }
+ else {
+ //把文件下载到本地(图片文件类),ftp 内外网服务器分开时使用
+ FtpUtil.downloadFtpFile(ftpHost, ftpUserName, ftpPassword, ftpPort, ftpPath, minioPath, fileName);
+ FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
}
//删除本地文件,ftp 文件没有对应读取的不删除
MysqlCenlint.deletess(fileName);
@@ -110,9 +146,9 @@
ftp.completePendingCommand();
}
}
+ ftp.disconnect();
return true;
}
-
} catch (Exception e) {
MysqlCenlint.deletess(fileName);
FtpUtil.deleteFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", fileName);
@@ -125,6 +161,13 @@
e.printStackTrace();
}
}
+ if (ftp.isConnected()) {
+ try {
+ ftp.disconnect();
+ } catch (IOException io) {
+ io.printStackTrace();
+ }
+ }
}
return false;
}
--
Gitblit v1.9.3