From 8430d77a62ed5b1cbc1f635ed44ba2a9b5ca5a64 Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期二, 02 九月 2025 16:07:57 +0800
Subject: [PATCH] 同一用户(电话+姓名相同) 新增用户时 同步uaid和个人简历的信息

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java     |   37 ++++++++++++++++++++++++++++++++++++-
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java |    8 +++++++-
 zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java              |    4 +++-
 3 files changed, 46 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
index 3694def..07c2889 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
@@ -456,8 +456,10 @@
 
             String uniqueId = UUID.nameUUIDFromBytes(originalString.getBytes()).toString();
             infoUser.setUaid(uniqueId);
+
+            Boolean same = false;
             if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
-                zInfoUserService.setUaidSame(user.getPhonenumber(),user.getUserName(),uniqueId);
+                same = zInfoUserService.setUaidSame(user.getPhonenumber(), user.getUserName(), uniqueId);
             }
             // 鎬у埆鏍煎紡杞崲锛圫tring 鈫� Integer锛�
             infoUser.setSex(userAll.getSex().equals("0") ? 0 : 1);
@@ -533,6 +535,10 @@
                 infoUser.setRoleId(3L); // 璁剧疆瀹跺涵瑙掕壊ID
                 zInfoUserService.save(infoUser); // 淇濆瓨瀹跺涵鎵╁睍淇℃伅
 
+                if(same){
+                    zInfoUserService.setUserInfoSame(infoUser);
+                }
+
                 // 5.5.1 鏇存柊閰嶅伓鍏宠仈淇℃伅
                 if (userAll.getSpouseId() != null) {
                     ZInfoUser zu = new ZInfoUser();
diff --git a/zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java b/zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java
index 2eaffaa..018e0f4 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java
@@ -22,7 +22,9 @@
 public interface ZInfoUserService extends IService<ZInfoUser> {
 
 
-    void setUaidSame(String phone, String username,String uniqueId);
+    Boolean setUaidSame(String phone, String username,String uniqueId);
+
+    void setUserInfoSame(ZInfoUser zInfoUser);
 
     void setSpouseOnly(Long spouse);
 
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
index 38f984b..9e60ac8 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
@@ -23,6 +23,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import javax.crypto.spec.PSource;
 import java.util.*;
 import java.util.stream.Collectors;
 /**
@@ -57,14 +58,48 @@
 
     /** 浣跨浉鍚岀敤鎴峰悕+鐢佃瘽鍙风爜鐩稿悓鐨勭敤鎴峰搴旂殑uaid鍚屾*/
     @Override
-    public void setUaidSame(String phone, String username,String uniqueId){
+    public Boolean setUaidSame(String phone, String username,String uniqueId){
         UpdateWrapper<ZInfoUser> wrapper = new UpdateWrapper<>();
         wrapper.eq(phone!=null,"phone_number", phone)
                 .eq(username!=null,"old_name",username)
                 .set("uaid",uniqueId );
         this.update(null, wrapper); // 鎵ц鏇存柊
+
+        return true;
     }
 
+    /** 浣跨浉鍚岀敤鎴峰悕+鐢佃瘽鍙风爜鐩稿悓鐨勭敤鎴峰搴旂殑inforuser琛ㄥ悓姝�*/
+    @Override
+    public void setUserInfoSame(ZInfoUser zInfoUser){
+
+        ZInfoUser zInfoUser1 = new ZInfoUser();
+        zInfoUser1.setPhoneNumber(zInfoUser.getPhoneNumber());
+        zInfoUser1.setOldName(zInfoUser.getOldName());
+        LambdaQueryWrapper<ZInfoUser> lqw = buildCondition(zInfoUser1);
+        if (list(lqw).size() != 0){
+            ZInfoUser newUser = new ZInfoUser();
+            // 鎷疯礉鎵�鏈夊睘鎬�
+            BeanUtils.copyProperties(list(lqw).get(0), newUser);
+
+            newUser.setUserId(zInfoUser.getUserId());
+            newUser.setSysId(zInfoUser.getSysId());
+            newUser.setFamilyId(null);
+            newUser.setFatherId(null);
+            newUser.setMomId(null);
+            newUser.setUrl(null);
+            newUser.setSpouseId(null);
+            newUser.setIsMyFamily(null);
+            newUser.setCreateTime(null);
+            newUser.setClanId(null);
+            newUser.setNickName(null);
+
+            System.out.println("ddddd"+newUser);
+
+
+            this.updateById(newUser);
+        }
+
+    }
 
 
     @Override

--
Gitblit v1.9.1