From e2b0e215d7f208a8f40aadb5ff05cd0f3088f0d9 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 15 十二月 2023 09:09:35 +0800
Subject: [PATCH] 海康接口对接开发

---
 server/dmvisit_service/src/main/java/com/doumee/core/utils/FtpUtil.java |   39 +++++++++++++++++++++++++++++++++------
 1 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/utils/FtpUtil.java b/server/dmvisit_service/src/main/java/com/doumee/core/utils/FtpUtil.java
index f158543..9e2a26a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/utils/FtpUtil.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/utils/FtpUtil.java
@@ -233,6 +233,39 @@
 		}
 		return result;
 	}
+	public boolean uploadInputstream(InputStream inputStream, String remote)  {
+		// 璁剧疆PassiveMode浼犺緭
+		try {
+			ftpClient.enterLocalPassiveMode();
+
+			// 璁剧疆浠ヤ簩杩涘埗娴佺殑鏂瑰紡浼犺緭
+			ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
+			ftpClient.setControlEncoding("GBK");
+			// 瀵硅繙绋嬬洰褰曠殑澶勭悊
+			String remoteFileName = remote;
+			if (remote.contains(File.separator)) {
+				remoteFileName = remote.substring(remote.lastIndexOf(File.separator) + 1);
+				// 鍒涘缓鏈嶅姟鍣ㄨ繙绋嬬洰褰曠粨鏋勶紝鍒涘缓澶辫触鐩存帴杩斿洖
+				if (StringUtils.equals(CreateDirecroty(remote, ftpClient), "2")) {
+					log.error("鍒涘缓ftp鐩綍澶辫触======================="+remote);
+					return false;
+				}
+			}
+			boolean result = ftpClient.storeFile(remoteFileName, inputStream);
+			inputStream.close();
+			ftpClient.logout();
+			if(result){
+				log.info("涓婁紶鏂囦欢鎴愬姛======================"+remote);
+			}else{
+				log.error("涓婁紶鏂囦欢澶辫触======================="+remote);
+			}
+			return result;
+		}catch (Exception e){
+			e.printStackTrace();
+			log.error("涓婁紶鏂囦欢澶辫触======================="+remote);
+		}
+		return false;
+	}
 	public int getNumFromStr(String str,char searchstr) {
 		int count = 0;
 		char[] charArray = str.toCharArray();
@@ -599,8 +632,6 @@
 		File src = new File(localDirectory);
 		try {
 			remoteDirectoryPath =  remoteDirectoryPath  + File.separator;
-
-//			System.out.println(remoteDirectoryPath+":===============鍒涘缓鐩綍=================");
 			boolean makeDirFlag = this.ftpClient.makeDirectory(remoteDirectoryPath);
 		}catch (IOException e) {
 			e.printStackTrace();
@@ -611,11 +642,9 @@
 		for (int currentFile = 0;currentFile < allFile.length;currentFile++) {
 			File f =allFile[currentFile];
 			String srcName=	f.getPath().toString();
-//			System.out.println(srcName+":====================璇诲彇鏂囦欢======================");
 			String tPath = remoteDirectoryPath+f.getName();
 			if (!f.isDirectory()) {
 
-//				System.out.println(srcName+":====================寮�濮嬩紶杈撴枃浠�======================");
 				int dNum = getNumFromStr(tPath,File.separator.toCharArray()[0]);
 				uploadFile(f, tPath);
 				if(dNum -2>=0){
@@ -624,11 +653,9 @@
 					}
 				}
 			}else{
-//				System.out.println(srcName+":====================鍒涘缓瀛愮洰褰�======================");
 				uploadDirectory(srcName,
 						tPath+File.separator);
 			}
-//			System.out.println(srcName+":====================涓婁紶瀹屾瘯======================");
 		}
 		return true;
 	}

--
Gitblit v1.9.3