From 61cfb19a3864e70cedaa8de38f4caf032f528455 Mon Sep 17 00:00:00 2001
From: 钟日健 <5689795+arsn@user.noreply.gitee.com>
Date: Fri, 06 May 2022 09:35:54 +0800
Subject: [PATCH] 新增查询保安员证编号,新增 ftp 读取

---
 src/main/java/org/springblade/modules/system/mapper/UserMapper.xml             |    5 ++
 src/main/java/org/springblade/modules/FTP/FtpUtil.java                         |   18 +++++++++
 src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java |   10 +++++
 src/main/java/org/springblade/modules/FTP/DataHanlder.java                     |   18 +++++++++
 src/main/java/org/springblade/modules/FTP/Monitor.java                         |   10 +++++
 src/main/java/org/springblade/modules/system/mapper/UserMapper.java            |    7 +++
 src/main/java/org/springblade/modules/system/service/IUserService.java         |    7 +++
 7 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/FTP/DataHanlder.java b/src/main/java/org/springblade/modules/FTP/DataHanlder.java
index 119686d..c366fa7 100644
--- a/src/main/java/org/springblade/modules/FTP/DataHanlder.java
+++ b/src/main/java/org/springblade/modules/FTP/DataHanlder.java
@@ -65,6 +65,24 @@
 	}
 
 	/**
+	 * 获取保安员证编号
+	 * @param json
+	 */
+	public static void handlerSecurityNumerBit(String json) {
+		Map map = JSON.parseObject(json, Map.class);
+		//取出 key(uuid)
+		String key = map.keySet().toArray()[0].toString();
+		//编号前缀
+		String pre = map.get(key).toString();
+		Integer max = hanlder.userService.getSecurityPaperCount(pre);
+		Result result = new Result(200, null, max.toString(),null);
+		Map<String, Object> map1 = new HashMap<>(1);
+		map1.put(key, result);
+		//向外网发送数据
+		FtpUtil.objectFileUploadSecurityNumberCount(map1);
+	}
+
+	/**
 	 * 培训报名数据处理
 	 * @param json
 	 */
diff --git a/src/main/java/org/springblade/modules/FTP/FtpUtil.java b/src/main/java/org/springblade/modules/FTP/FtpUtil.java
index af07bbb..201a824 100644
--- a/src/main/java/org/springblade/modules/FTP/FtpUtil.java
+++ b/src/main/java/org/springblade/modules/FTP/FtpUtil.java
@@ -415,4 +415,22 @@
 		FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "nt"+response1+".json", in1);
 		MysqlCenlint.deletess("nt"+response1+".json");
 	}
+
+	/**
+	 * 向外网发送保安员证编号位数数据
+	 * @param map1
+	 */
+	public static void objectFileUploadSecurityNumberCount(Object obj){
+		String json1 = JSON.toJSONString(obj);
+		String response1 = String.valueOf((new Date()).getTime());
+		OutJson.createJsonFile(json1, localPath, "ns"+response1);
+		FileInputStream in1 = null;
+		try {
+			in1 = new FileInputStream(new File(localPath + "ns"+response1+".json"));
+		} catch (FileNotFoundException e) {
+			e.printStackTrace();
+		}
+		FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "ns"+response1+".json", in1);
+		MysqlCenlint.deletess("ns"+response1+".json");
+	}
 }
diff --git a/src/main/java/org/springblade/modules/FTP/Monitor.java b/src/main/java/org/springblade/modules/FTP/Monitor.java
index f377354..f84ce13 100644
--- a/src/main/java/org/springblade/modules/FTP/Monitor.java
+++ b/src/main/java/org/springblade/modules/FTP/Monitor.java
@@ -113,6 +113,16 @@
 							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")){
 							//把文件下载到本地(图片文件类),测试内外网使用同一台服务器
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
index f5cc72f..34ee592 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
@@ -128,4 +128,11 @@
 	 * @return
 	 */
     int getUserAge(@Param("id") long id);
+
+	/**
+	 * 查询保安证编号位数
+	 * @param pre
+	 * @return
+	 */
+    Integer getSecurityPaperCount(@Param("pre") String pre);
 }
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index c7de8dc..166ed2f 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -551,4 +551,9 @@
     <select id="getUserAge" resultType="java.lang.Integer">
         select ifnull(TIMESTAMPDIFF(YEAR, SUBSTRING(cardid, 7, 8), CURDATE()),0) AS age from blade_user where id = #{id}
     </select>
+    <!--查询保安员证编号前缀-->
+    <select id="getSecurityPaperCount" resultType="java.lang.Integer">
+        select ifnull(max(0+RIGHT(securitynumber,5)),0) from blade_user
+        where securitynumber like concat('%',#{pre},'%')
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/system/service/IUserService.java b/src/main/java/org/springblade/modules/system/service/IUserService.java
index 2ef0245..9f1ca01 100644
--- a/src/main/java/org/springblade/modules/system/service/IUserService.java
+++ b/src/main/java/org/springblade/modules/system/service/IUserService.java
@@ -260,4 +260,11 @@
 	 * @return
 	 */
     int getUserAge(long id);
+
+	/**
+	 * 查询保安证编号位数
+	 * @param pre
+	 * @return
+	 */
+	Integer getSecurityPaperCount(String pre);
 }
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index c6f1b78..281d3e0 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -520,4 +520,14 @@
 	public int getUserAge(long id) {
 		return baseMapper.getUserAge(id);
 	}
+
+	/**
+	 * 查询保安证编号位数
+	 * @param pre
+	 * @return
+	 */
+	@Override
+	public Integer getSecurityPaperCount(String pre) {
+		return baseMapper.getSecurityPaperCount(pre);
+	}
 }

--
Gitblit v1.9.3