From b4895bdc5d9268e55c0023b92cc7c2d68ba33e46 Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期二, 05 十一月 2024 10:07:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java |  234 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 195 insertions(+), 39 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 570aa81..52534e6 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
@@ -1,20 +1,23 @@
 package com.ruoyi.web.controller.system;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.ruoyi.common.annotation.Anonymous;
 import com.ruoyi.common.core.domain.entity.sysUserInfo;
-import com.ruoyi.domain.ZInfoUser;
-import com.ruoyi.domain.ZfFamily;
-import com.ruoyi.domain.sysUserAndUserInfo;
-import com.ruoyi.service.ZInfoUserService;
-import com.ruoyi.service.ZfFamilyService;
+import com.ruoyi.domain.*;
+import com.ruoyi.service.*;
+import com.ruoyi.system.domain.SysUserRole;
+import com.ruoyi.system.mapper.SysRoleMapper;
+import com.ruoyi.system.mapper.SysUserRoleMapper;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -68,6 +71,18 @@
     private ZInfoUserService zInfoUserService;
     @Resource
     private ZfFamilyService zfFamilyService;
+
+    @Resource
+    private ZfAncestorService zfAncestorService;
+
+    @Resource
+    private SysUserRoleMapper sysUserRoleMapper;
+    @Resource
+
+    MarrySelfService marrySelfService;
+    @Resource
+    MarryUserService marryUserService;
+
     /**
      * 鑾峰彇鐢ㄦ埛鍒楄〃
      */
@@ -76,6 +91,8 @@
     public TableDataInfo list(SysUser user)
     {
         startPage();
+        System.out.println(user.getClanId());
+        System.out.println("----------------++++++++++++==0------------");
         List<SysUser> list = userService.selectUserList(user);
         return getDataTable(list);
     }
@@ -116,7 +133,7 @@
     @GetMapping(value = { "/", "/{userId}" })
     public AjaxResult getInfo(@PathVariable(value = "userId", required = false) Long userId)
     {
-        userService.checkUserDataScope(userId);
+      //  userService.checkUserDataScope(userId);
         AjaxResult ajax = AjaxResult.success();
         List<SysRole> roles = roleService.selectRoleAll();
         //濡傛灉鏄痑dmin鍒欑洿鎺ヨ繑鍥炴墍鏈夌殑瑙掕壊锛屽惁鍒欏氨杩斿洖涓嶆槸绠$悊鍛樼殑瑙掕壊淇℃伅
@@ -127,7 +144,7 @@
             SysUser sysUser = userService.selectUserById(userId);
             ajax.put(AjaxResult.DATA_TAG, sysUser);
             ajax.put("postIds", postService.selectPostListByUserId(userId));
-            ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList()));
+//            ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList()));
         }
         return ajax;
     }
@@ -153,6 +170,12 @@
 
   //      System.out.println(user.getFamilyId());
      //   System.out.println("[[[[]]]]]]");
+        Long userId = user.getSysId();
+      //  SysUserRole sysUserRole=sysUserRoleMapper.selectUserById(userId);
+        //System.out.println(sysUserRole.getRoleId());
+        System.out.println("浣犲ソ鍛�");
+        System.out.println(user.getRoleId());
+        if (user.getRoleId().equals(102L)){
         ZInfoUser infoUser = new ZInfoUser();
         infoUser.setUserId(user.getUserId());
         infoUser.setOldName(user.getUserName());
@@ -163,6 +186,8 @@
         infoUser.setSex(Integer.valueOf(user.getSex()));
 //        infoUser.setFamilyId(user.getFamilyId());
         infoUser.setSysId(user.getSysId());
+
+
         if(user.getSpouseId()!=null) {
             infoUser.setSpouseId(user.getSpouseId());
         }
@@ -172,35 +197,103 @@
 //        if(zfFamily!=null&&zfFamily.getMid()!=null)
 //            infoUser.setMomId(zfFamily.getMid());
 
-        if (user.getFid() != null){
-            ZInfoUser father = zInfoUserService.getById(user.getFid());
-            if (father.getIsMyFamily() == 1)
-                System.out.println("11111111111111111111111111111111/");
-                infoUser.setFamilyId(father.getFamilyId());
-        }
-        else if(user.getMid() != null){
-            ZInfoUser mother = zInfoUserService.getById(user.getMid());
-            if (mother.getIsMyFamily() == 1)
-                System.out.println("2222222222222222222222222222222222/");
-            infoUser.setFamilyId(mother.getFamilyId());
-        }
-        else if (user.getSpouseId()!=null) {
-            ZInfoUser spouse = zInfoUserService.getById(user.getSpouseId());
-            System.out.println("33333333333333333333333333333333333333333/");
-            infoUser.setFamilyId(spouse.getFamilyId());
-            infoUser.setSpouseId(user.getSpouseId());
+            if (user.getFid() != null){
+            //璺熼殢鐖朵翰鐨勫鏃忓拰瀹跺涵淇℃伅
+          //   if (!zInfoUserService.getById(user.getUserId()).getFatherId().equals(user.getFid())){
+                    ZInfoUser father = zInfoUserService.getById(user.getFid());
+                        System.out.println("11111111111111111111111111111111/");
+                    //    infoUser.setFamilyId(father.getFamilyId());
+                        infoUser.setClanId(father.getClanId());
+
+          //  }
         }
 
-        zInfoUserService.saveOrUpdate(infoUser);
+            if(user.getMid()!=null)
+            {
+                //璺熼殢姣嶄翰鐨勫鏃忓拰瀹跺涵淇℃伅
+                //   if (!zInfoUserService.getById(user.getUserId()).getFatherId().equals(user.getFid())){
+                ZInfoUser mother = zInfoUserService.getById(user.getMid());
+                System.out.println("11111111111111111111111111111111/");
+           //     infoUser.setFamilyId(mother.getFamilyId());
+                infoUser.setClanId(mother.getClanId());
+            }
+//            else if(user.getMid() != null){
+//                ZInfoUser mother = zInfoUserService.getById(user.getMid());
+//                if (mother.getIsMyFamily() == 1)
+//                    System.out.println("2222222222222222222222222222222222/");
+//                infoUser.setFamilyId(mother.getFamilyId());
+//            }
+        if (user.getSpouseId() != null){
+
+            //璺熼殢閰嶅伓鐨勫鏃忓拰瀹跺涵淇℃伅
+//            if ( !zInfoUserService.getById(user.getUserId()).getSpouseId().equals(user.getSpouseId())){
+
+                //鏄湰瀹�,涓�绉嶆槸鏅�氱敤鎴锋洿鏂颁负瀹跺涵鐢ㄦ埛锛�
+
+                if (zInfoUserService.getById(user.getUserId())==null||zInfoUserService.getById(user.getUserId()).getIsMyFamily() == 0) {
+                    ZInfoUser spouse = zInfoUserService.getById(user.getSpouseId());
+                    System.out.println("33333333333333333333333333333333333333333/");
+                    infoUser.setFamilyId(spouse.getFamilyId());
+                    infoUser.setFatherId(spouse.getFatherId());
+                    infoUser.setMomId(spouse.getMomId());
+                    infoUser.setClanId(spouse.getClanId());
+
+//                }
+            }
+
+
+        }
+        if(infoUser.getFamilyId()!=null)
+            zInfoUserService.saveOrUpdate(infoUser);
+        else {
+            System.out.println("瀹跺涵鎴愬憳涓嶈兘淇敼涓烘櫘閫氱敤鎴�");
+            return AjaxResult.success("瀹跺涵鎴愬憳涓嶈兘淇敼涓烘櫘閫氱敤鎴�");
+        }
+        //鏇存柊閰嶅伓淇℃伅
         if(user.getSpouseId()!=null) {
             ZInfoUser zu = new ZInfoUser();
             zu.setUserId(user.getSpouseId());
             zu.setSpouseId(infoUser.getUserId());
+//            Long spouseMoM = zInfoUserService.getById(user.getSpouseId()).getMomId();
+//            Long spouseDad = zInfoUserService.getById(user.getSpouseId()).getFatherId();
+//            zu.setMomId(spouseMoM);
+//            zu.setFatherId(spouseDad);
+//
             zInfoUserService.updateById(zu);
+
+            //鏇存柊MarrySelf鍜孧arryUser
+            ZInfoUser zfi = zInfoUserService.getById(user.getUserId());
+            MarrySelf marrySelf = new MarrySelf();
+            marrySelf.setUid(user.getSpouseId());
+            marrySelf.setName(zfi.getOldName());
+            marrySelf.setSpouseSex(zfi.getSex()==1?"鐢�":"濂�");
+            //杩欎釜鍙兘杩樿淇敼 涓�涓�
+            marrySelf.setMarryStatus(0);
+            marrySelf.setSpouseName(infoUser.getOldName());
+            marrySelf.setSpouseSex(infoUser.getSex()==1?"鐢�":"濂�");
+            marrySelf.setSpouseMarryStatus(0);
+            marrySelfService.saveOrUpdate(marrySelf);
+            //澧炲姞MarryUser
+            //澧炲姞marryUser
+            MarryUser marryUser = new MarryUser();
+            marryUser.setUid(user.getSpouseId());
+            marryUser.setName(infoUser.getOldName());
+            marryUser.setSex(infoUser.getSex()==1?"鐢�":"濂�");
+            marryUser.setMarryStatus(0);
+            marryUserService.addData(marryUser);
+
         }
+
+            return AjaxResult.success();
+        }
+        else {
+            System.out.println("daniuni");
+            return AjaxResult.success("瀹跺涵鎴愬憳涓嶈兘淇敼涓烘櫘閫氱敤鎴�");
+        }
+
       //  zInfoUserService.update(infoUser);
              //   .saveOrUpdate(infoUser);
-        return AjaxResult.success();
+
     }
     /**
      * 鏂板鐢ㄦ埛
@@ -223,12 +316,14 @@
         user.setSex(userAll.getSex());
         user.setRemark(userAll.getRemark());
         user.setUpdateBy(userAll.getUpdateBy());
+        user.setClanId(userAll.getClanId());
 //        user.setSex(userAll.getSex()=="鐢�"?"1":"0");
     //    user.setPostIds(userAll.getPostIds());
       //  user.set
-        if (!userService.checkUserNameUnique(user))
+
+        if (!userService.checkNickNameUnique(user))
         {
-            return error("鏂板鐢ㄦ埛'" + user.getUserName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
+            return error("鏂板鐢ㄦ埛'" + user.getNickName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
         }
         else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user))
         {
@@ -241,16 +336,29 @@
         user.setCreateBy(getUsername());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         userService.insertUser(user);
+
+        //鍐欏埌鐢ㄦ埛涓庤鑹插搴旂殑琛�
+        SysUserRole sysUserRole = new SysUserRole();
+        sysUserRole.setUserId(user.getUserId());
+        sysUserRole.setRoleId(user.getRoleId());
+        List<SysUserRole> sysUserRoles = new ArrayList<>();
+        sysUserRoles.add(sysUserRole);
+        sysUserRoleMapper.batchUserRole(sysUserRoles);
+
         //鍐欏叆鍒� 鏂板缓绔嬬殑淇℃伅琛ㄩ噷闈�
-//
 //        ZfFamily zfFamily = zfFamilyService.getByFamId(userAll.getFamilyId());
+        if (userAll.getRoleId() == 102){
         ZInfoUser infoUser = new ZInfoUser();
         infoUser.setSysId(user.getUserId());
      //   infoUser.setUserId(user.getUserId());
         infoUser.setNickName(userAll.getNickName());
         infoUser.setOldName(userAll.getUserName());
         infoUser.setPhoneNumber(userAll.getPhonenumber());
-        infoUser.setSex(userAll.getSex()=="鐢�"?1:0);
+        System.out.println(userAll.getSex());
+        System.out.println("鎬у埆鐨勫師鍥�");
+
+        infoUser.setSex(userAll.getSex().equals("0")?0:1);
+        System.out.println(infoUser.getSex());
 //        infoUser.setFamilyId(userAll.getFid());
         infoUser.setSpouseId(userAll.getSpouseId());
 
@@ -270,6 +378,13 @@
 //        System.out.println(userAll.getIsMyFamily());
 
         infoUser.setIsMyFamily(userAll.getIsMyFamily());
+        if(userAll.getIsMyFamily()==1)
+        {
+            ZfFamily zfFamily = new ZfFamily();
+            zfFamily.setName(userAll.getNickName()+"鐨勫搴�");
+            zfFamilyService.addFamily(zfFamily);
+            infoUser.setFamilyId(zfFamily.getId());
+        }
 //        if(userAll.getSpouseId()==0)
 //            infoUser.setSpouseId(null);
 //        else {
@@ -277,16 +392,50 @@
 //
 //        }
         if (userAll.getFid() != null && userAll.getMid() != null){
+            //璇佹槑鏄湰瀹剁殑涓�涓�,澧炲姞杩涙潵鐨�
+
             ZInfoUser father = zInfoUserService.getById(userAll.getFid());
             ZInfoUser mother = zInfoUserService.getById(userAll.getMid());
-            if (father.getIsMyFamily() == 1)
-                infoUser.setFamilyId(father.getFamilyId());
-            else if (mother.getIsMyFamily() == 1)
-                infoUser.setFamilyId(mother.getFamilyId());
+            //濡傛灉鏄湰瀹讹紝灏辩畝鍘嗕竴涓搴彿
+            if (father.getIsMyFamily() == 1){
+           //     infoUser.setFamilyId(father.getFamilyId());
+                infoUser.setClanId(father.getClanId());
+            }
+            else if (mother.getIsMyFamily() == 1){
+             //   infoUser.setFamilyId(mother.getFamilyId());
+                infoUser.setClanId(mother.getClanId());
+
+            }
+            MarrySelf marrySelf = new MarrySelf();
+            marrySelf.setName(infoUser.getOldName());
+            marrySelf.setSex(infoUser.getSex()==1?"鐢�":"濂�");
+            marrySelf.setMarryStatus(0);
+            marrySelfService.save(marrySelf);
         }
         else {
             ZInfoUser spouse = zInfoUserService.getById(userAll.getSpouseId());
             infoUser.setFamilyId(spouse.getFamilyId());
+            infoUser.setClanId(spouse.getClanId());
+            //閫氳繃閰嶅伓鐨勪俊鎭紝鏇存柊marrySelf鍜屽鍔爉arryUser琛�
+            MarrySelf marrySelf = new MarrySelf();
+ //           marrySelf.setUid(userAll.getSpouseId());
+            marrySelf.setSpouseName(infoUser.getOldName());
+            marrySelf.setSpouseSex(infoUser.getSex()==1?"鐢�":"濂�");
+            marrySelf.setMarryStatus(1);
+            //淇敼鏉′欢
+            QueryWrapper<MarrySelf> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("uid", userAll.getSpouseId());
+
+
+            marrySelfService.update(marrySelf, queryWrapper);
+            //澧炲姞marryUser
+            MarryUser marryUser = new MarryUser();
+            marryUser.setUid(userAll.getSpouseId());
+            marryUser.setName(infoUser.getOldName());
+            marryUser.setSex(infoUser.getSex()==1?"鐢�":"濂�");
+            marryUser.setMarryStatus(0);
+            marryUserService.addData(marryUser);
+
         }
 
         //鍓嶇淇濊瘉浜嗚鑹蹭笉涓虹┖
@@ -295,16 +444,23 @@
         // infoUser.setRoleName(user.g);
 
       //  if(userAll.getFamilyId()!=-1) {
-        if(userAll.getRoleId()==102) {
+
+        if(userAll.getRoleId().equals(102L)) {
             infoUser.setRoleId(3L);
             zInfoUserService.save(infoUser);
             if(userAll.getSpouseId()!=null)
             {
+                //鏇存柊閰嶅伓淇℃伅
                 ZInfoUser zu = new ZInfoUser();
                 zu.setUserId(userAll.getSpouseId());
                 zu.setSpouseId(infoUser.getUserId());
+                Long spouseMoM = zInfoUserService.getById(userAll.getSpouseId()).getMomId();
+                Long spouseDad = zInfoUserService.getById(userAll.getSpouseId()).getFatherId();
+                zu.setMomId(spouseMoM);
+                zu.setFatherId(spouseDad);
                 zInfoUserService.updateById(zu);
             }
+        }
         }
 
         //    zInfoUserService.saveOrUpdate(infoUser);
@@ -336,9 +492,9 @@
     {
         userService.checkUserAllowed(user);
         userService.checkUserDataScope(user.getUserId());
-        if (!userService.checkUserNameUnique(user))
+        if (!userService.checkNickNameUnique(user))
         {
-            return error("淇敼鐢ㄦ埛'" + user.getUserName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
+            return error("淇敼鐢ㄦ埛'" + user.getNickName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
         }
         else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user))
         {
@@ -379,8 +535,8 @@
     @PutMapping("/resetPwd")
     public AjaxResult resetPwd(@RequestBody SysUser user)
     {
-        userService.checkUserAllowed(user);
-        userService.checkUserDataScope(user.getUserId());
+  //      userService.checkUserAllowed(user);
+//        userService.checkUserDataScope(user.getUserId());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         user.setUpdateBy(getUsername());
         return toAjax(userService.resetPwd(user));

--
Gitblit v1.9.1