From bc74ffaaa0074a96d7e7e60838845d020f94f347 Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期日, 27 十月 2024 21:16:05 +0800
Subject: [PATCH] 修改了bug

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java            |    6 +
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java        |   98 ++++++++++++++++++++++++++------
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java |   19 +++++-
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java    |    3 +
 ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml                         |    3 
 5 files changed, 105 insertions(+), 24 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 8a6eac9..be97a3d 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
@@ -7,17 +7,14 @@
 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.ZfAncestor;
-import com.ruoyi.domain.ZfFamily;
-import com.ruoyi.domain.sysUserAndUserInfo;
-import com.ruoyi.service.ZInfoUserService;
-import com.ruoyi.service.ZfAncestorService;
-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;
@@ -80,6 +77,12 @@
 
     @Resource
     private SysUserRoleMapper sysUserRoleMapper;
+    @Resource
+
+    MarrySelfService marrySelfService;
+    @Resource
+    MarryUserService marryUserService;
+
     /**
      * 鑾峰彇鐢ㄦ埛鍒楄〃
      */
@@ -199,7 +202,7 @@
           //   if (!zInfoUserService.getById(user.getUserId()).getFatherId().equals(user.getFid())){
                     ZInfoUser father = zInfoUserService.getById(user.getFid());
                         System.out.println("11111111111111111111111111111111/");
-                        infoUser.setFamilyId(father.getFamilyId());
+                    //    infoUser.setFamilyId(father.getFamilyId());
                         infoUser.setClanId(father.getClanId());
 
           //  }
@@ -211,7 +214,7 @@
                 //   if (!zInfoUserService.getById(user.getUserId()).getFatherId().equals(user.getFid())){
                 ZInfoUser mother = zInfoUserService.getById(user.getMid());
                 System.out.println("11111111111111111111111111111111/");
-                infoUser.setFamilyId(mother.getFamilyId());
+           //     infoUser.setFamilyId(mother.getFamilyId());
                 infoUser.setClanId(mother.getClanId());
             }
 //            else if(user.getMid() != null){
@@ -221,16 +224,25 @@
 //                infoUser.setFamilyId(mother.getFamilyId());
 //            }
         if (user.getSpouseId() != null){
+
+            //璺熼殢閰嶅伓鐨勫鏃忓拰瀹跺涵淇℃伅
 //            if ( !zInfoUserService.getById(user.getUserId()).getSpouseId().equals(user.getSpouseId())){
 
-                //鏄湰瀹�
-                if (zInfoUserService.getById(user.getUserId()).getIsMyFamily() == 0) {
+                //鏄湰瀹�,涓�绉嶆槸鏅�氱敤鎴锋洿鏂颁负瀹跺涵鐢ㄦ埛锛�
+
+                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 {
@@ -242,12 +254,34 @@
             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);
-
+//            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();
@@ -358,6 +392,8 @@
 //
 //        }
         if (userAll.getFid() != null && userAll.getMid() != null){
+            //璇佹槑鏄湰瀹剁殑涓�涓�,澧炲姞杩涙潵鐨�
+
             ZInfoUser father = zInfoUserService.getById(userAll.getFid());
             ZInfoUser mother = zInfoUserService.getById(userAll.getMid());
             //濡傛灉鏄湰瀹讹紝灏辩畝鍘嗕竴涓搴彿
@@ -369,12 +405,37 @@
              //   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);
+
         }
 
         //鍓嶇淇濊瘉浜嗚鑹蹭笉涓虹┖
@@ -389,6 +450,7 @@
             zInfoUserService.save(infoUser);
             if(userAll.getSpouseId()!=null)
             {
+                //鏇存柊閰嶅伓淇℃伅
                 ZInfoUser zu = new ZInfoUser();
                 zu.setUserId(userAll.getSpouseId());
                 zu.setSpouseId(infoUser.getUserId());
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java
index b1dd52e..c0c391b 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/PermissionService.java
@@ -1,6 +1,8 @@
 package com.ruoyi.framework.web.service;
 
 import java.util.Set;
+
+import com.ruoyi.framework.web.domain.server.Sys;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 import com.ruoyi.common.core.domain.entity.SysRole;
@@ -165,6 +167,7 @@
 
     private boolean hasPermissions(Set<String> permissions, String permission)
     {
+        System.out.println("33333467878");
         return permissions.contains(ALL_PERMISSION) || permissions.contains(StringUtils.trim(permission));
     }
 }
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
index 9a1f935..51d9e65 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
@@ -3,6 +3,9 @@
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+
+import com.ruoyi.domain.ZfAncestor;
+import com.ruoyi.service.ZfAncestorService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import com.ruoyi.common.core.domain.entity.SysRole;
@@ -24,6 +27,9 @@
     @Autowired
     private ISysMenuService menuService;
 
+    @Autowired
+    private ZfAncestorService zfService;
+
     /**
      * 鑾峰彇瑙掕壊鏁版嵁鏉冮檺
      * 
@@ -33,6 +39,7 @@
     public Set<String> getRolePermission(SysUser user)
     {
         Set<String> roles = new HashSet<String>();
+
         // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄�
         if (user.isAdmin())
         {
@@ -55,10 +62,16 @@
     {
         Set<String> perms = new HashSet<String>();
         // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄�
-        if (user.isAdmin())
+        ZfAncestor zfAncestor = new ZfAncestor();
+        zfAncestor.setSysId(user.getUserId());
+        zfAncestor = zfService.selectZfAncestor(zfAncestor);
+//        System.out.println("---------++++++++____________");
+//        System.out.println(zfAncestor);
+//        //鍒ゆ柇鏄惁鏄秴绾х鐞嗗憳
+        if(zfAncestor!=null)
         {
-          //  perms.add("system:*:*");
-            perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId()));
+            perms.add("*:*:*");
+          //  perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId()));
 
         }
         else
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml
index 4478be9..996b513 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml
@@ -50,8 +50,9 @@
 	
 	<select id="selectMenuTreeAll" resultMap="SysMenuResult">
 		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
-		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0 and m.menu_id in (1, 100, 118,2032,2016,2048,2049,2050,2051,2016,2068)
+		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0 and m.menu_id in (1, 100, 118,2032,2016,2048,2049,2050,2051,2068)
 		order by m.parent_id, m.order_num
+
 	</select>
 	<select id="selectMenuTreeAllSuperAdmin" resultMap="SysMenuResult">
 		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
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 351f183..40ef5ab 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
@@ -711,8 +711,10 @@
             LambdaQueryWrapper<ZInfoUser> lqw = new LambdaQueryWrapper<>();
             lqw.eq(ZInfoUser::getUserId, userId);
             List<ZInfoUser> list = list(lqw);
-
-            user = list.get(0);
+            if(list.size()>0)
+                user = list.get(0);
+            else
+                return null;
 
         }
 

--
Gitblit v1.9.1