From ad2e1ca53b3957017f9c6428ce2bf49bfa7ac169 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Tue, 07 Jun 2022 14:30:31 +0800
Subject: [PATCH] 保安员新增逻辑修改,保安员内网已新增,外网么有的时候,如果是更新的状态,则查询外网是否存在该用户,如果不存在则新增,存在则更新

---
 src/main/java/org/springblade/modules/FTP/DataHandler.java                     |   61 ++++++++++++++++++++++--------
 src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java |   51 ++++++++++++++++++++-----
 2 files changed, 85 insertions(+), 27 deletions(-)

diff --git a/src/main/java/org/springblade/modules/FTP/DataHandler.java b/src/main/java/org/springblade/modules/FTP/DataHandler.java
index c49ba46..d4b107f 100644
--- a/src/main/java/org/springblade/modules/FTP/DataHandler.java
+++ b/src/main/java/org/springblade/modules/FTP/DataHandler.java
@@ -130,16 +130,30 @@
 				//用户数处理
 				User user = handlerUserInfo(uuid);
 				user.setId(result.getUserId());
-				//数据修改
-				boolean b = handler.userService.updateById(user);
-				System.out.println("修改状态 = " + b);
-				if (b) {
-					//异步同步到群防群控
-					handler.myAsyncService.updateUserByQfqk(user);
-					//返回
-					return new Result(200, null, "修改成功", null);
-				} else {
-					return new Result(205, null, "修改失败", null);
+				//先查询当前库是否有改用户?
+				User user1 = handler.userService.getById(result.getUserId());
+				if (null!=user1) {
+					//数据修改
+					boolean b = handler.userService.updateById(user);
+					if (b) {
+						//异步同步到群防群控
+						handler.myAsyncService.updateUserByQfqk(user);
+						//返回
+						return new Result(200, null, "修改成功", null);
+					} else {
+						return new Result(205, null, "修改失败", null);
+					}
+				}else {
+					//新增
+					boolean save = handler.userService.save(user);
+					if (save){
+						//异步同步到群防群控
+						handler.myAsyncService.qfqkUserSave(user);
+						//返回
+						return new Result(200,null,"新增成功",null);
+					}else {
+						return new Result(205,null,"新增失败",null);
+					}
 				}
 			}else if (result.getCode()==203){
 				//新增
@@ -155,15 +169,30 @@
 				//失败,返回保安员证编号校验失败消息
 				return new Result(203,null,result.getMsg(),null);
 			}else if (result.getCode()==204){
-				//修改
+				//先查询当前库是否有改用户?
+				User user1 = handler.userService.getById(result.getUserId());
 				//用户数处理
 				User user = handlerUserInfo(uuid);
 				user.setId(result.getUserId());
-				//数据修改
-				boolean b = handler.userService.updateById(user);
-				if (b){
-					//异步同步到群防群控
-					handler.myAsyncService.updateUserByQfqk(user);
+				if (null!=user1) {
+					//修改
+					//数据修改
+					boolean b = handler.userService.updateById(user);
+					if (b){
+						//异步同步到群防群控
+						handler.myAsyncService.updateUserByQfqk(user);
+					}
+				}else {
+					//新增
+					boolean save = handler.userService.save(user);
+					if (save){
+						//异步同步到群防群控
+						handler.myAsyncService.qfqkUserSave(user);
+						//返回
+						return new Result(200,null,"新增成功",null);
+					}else {
+						return new Result(205,null,"新增失败",null);
+					}
 				}
 				//失败,返回保安员证编号校验失败消息
 				return new Result(202,null,result.getMsg(),null);
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 109bd74..f505f0e 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
@@ -1302,8 +1302,6 @@
 					agetStatus.set(false);
 					ageErrorList.add(user.getCardid());
 //					throw new ServiceException("导入失败!身份证号码[ "+user.getCardid()+" ]不正确,请核对!");
-					//forEach 只能使用 return 跳出本次循环
-//					return;
 					continue;
 				}
 			}
@@ -1421,9 +1419,26 @@
 //						addList.add(user);
 					}
 					if (result1.getCode()==201){
-						user.setId(result1.getUserId());
-						user.setCreateTime(null);
-						this.updateById(user);
+						//先查询当前库是否有改用户?
+						User user1 = this.getById(result1.getUserId());
+						if (null!=user1) {
+							//存在,更新
+							user.setId(result1.getUserId());
+							user.setCreateTime(null);
+							boolean update = this.updateById(user);
+							if (update) {
+								//数据异步同步到群防群控
+								myAsyncService.updateUserByQfqk(user);
+							}
+						}else {
+							//不存在,则新增
+							user.setId(result1.getUserId());
+							boolean save = this.save(user);
+							if (save){
+								//数据异步同步到群防群控
+								myAsyncService.qfqkUserSave(user);
+							}
+						}
 						//加入更新集合
 //						updateList.add(user);
 					}
@@ -1675,13 +1690,27 @@
 						//加入新增集合
 //						addList.add(user);
 					}
+					//更新
 					if (result1.getCode()==201){
-						user.setId(result1.getUserId());
-						user.setCreateTime(null);
-						boolean update = this.updateById(user);
-						if (update){
-							//数据异步同步到群防群控
-							myAsyncService.updateUserByQfqk(user);
+						//先查询当前库是否有改用户?
+						User user1 = this.getById(result1.getUserId());
+						if (null!=user1) {
+							//存在,更新
+							user.setId(result1.getUserId());
+							user.setCreateTime(null);
+							boolean update = this.updateById(user);
+							if (update) {
+								//数据异步同步到群防群控
+								myAsyncService.updateUserByQfqk(user);
+							}
+						}else {
+							//不存在,则新增
+							user.setId(result1.getUserId());
+							boolean save = this.save(user);
+							if (save){
+								//数据异步同步到群防群控
+								myAsyncService.qfqkUserSave(user);
+							}
 						}
 						//加入更新集合
 //						updateList.add(user);

--
Gitblit v1.9.3