From d3d7222cb64de2cb5390fc57fa1049d800e44786 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 30 Aug 2023 17:22:58 +0800
Subject: [PATCH] 用户新增时判断角色是否为保安员,如果是需要判断是否已存在身份证号相同的保安员,如果存在则提示

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |   51 ++++++++++++---------------------------------------
 1 files changed, 12 insertions(+), 39 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index c0a31a5..aedef21 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -236,6 +236,18 @@
 			if (userCount > 0) {
 				throw new org.springblade.core.log.exception.ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
 			}
+			// 校验保安员,如果角色为保安员,则需要判断身份证号是否已注册
+			List<String> roleIds = Arrays.asList(user.getRoleId().split(","));
+			String roleId = "1412226235153731586";
+			if (roleIds.contains(roleId)){
+				// 判断是否已存在,通过身份证号码查询用户信息
+				QueryWrapper<User> wrapper = new QueryWrapper<>();
+				wrapper.eq("is_deleted",0).eq("status",1).eq("cardid",user.getCardid()).like("role_id","%"+roleId+"%");
+				List<User> list = userService.list(wrapper);
+				if (list.size()>0){
+					throw new org.springblade.core.log.exception.ServiceException(StringUtil.format("当前保安员身份证号码 [{}] 已存在!", user.getCardid()));
+				}
+			}
 			user.setTenantId("000000");
 			user.setStatus(1);
 			user.setIsDeleted(0);
@@ -254,51 +266,12 @@
 			}
 			//新增
 			boolean stats = userService.save(user);
-			if (stats) {
-				//内网同步
-				String s = "insert into blade_user(" +
-					"id,tenant_id,code,account,password,real_name,phone,sex,role_id,dept_id," +
-					"create_time,update_time,cardid,status,is_deleted,jurisdiction) " +
-					"values(" + "'" + user.getId() + "'" + "," +
-					"'" + user.getTenantId() + "'" + "," +
-					"'" + user.getCode() + "'" + "," +
-					"'" + user.getAccount() + "'" + "," +
-					"'" + user.getPassword() + "'" + "," +
-					"'" + user.getRealName() + "'" + "," +
-					"'" + user.getPhone() + "'" + "," +
-					"'" + user.getSex() + "'" + "," +
-					"'" + user.getRoleId() + "'" +
-					"," + "'" + user.getDeptId() + "'" +
-					"," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" +
-					"," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'" +
-					"," + "'" + user.getCardid() + "'" +
-					"," + "'" + user.getStatus() + "'" +
-					"," + "'" + user.getIsDeleted() + "'" +
-					"," + "'" + user.getJurisdiction() + "'"
-					+ ")";
-				myAsyncService.dataSync(s);
-			}
 		} else {
 			//修改
 			User user1 = userService.getById(user.getId());
 			user.setPassword(user1.getPassword());
 			user.setUpdateTime(new Date());
 			boolean b = userService.updateById(user);
-			if (b) {
-				String s1 =
-					"update blade_user set account = " + "'" + user.getAccount() + "'"
-						+ ",code = " + "'" + user.getCode() + "'"
-						+ ",real_name = " + "'" + user.getRealName() + "'"
-						+ ",phone = " + "'" + user.getPhone() + "'"
-						+ ",sex = " + "'" + user.getSex() + "'"
-						+ ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'"
-						+ ",role_id = " + "'" + user.getRoleId() + "'"
-						+ ",dept_id = " + "'" + user.getDeptId() + "'"
-						+ ",cardid = " + "'" + user.getCardid() + "'"
-						+ ",guncode = " + "'" + user.getGuncode() + "'"
-						+ " " + "where id = " + "'" + user.getId() + "'";
-				myAsyncService.dataSync(s1);
-			}
 		}
 
 		//返回

--
Gitblit v1.9.3