From 2723e04976f006ace42c6c53627b87e1cc95ff07 Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期三, 31 七月 2024 12:27:48 +0800
Subject: [PATCH] 修改bug&分享

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java |  228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 226 insertions(+), 2 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 2cb0e8f..c35bcf9 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,10 +1,26 @@
 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.query.LambdaQueryWrapper;
+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.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;
@@ -54,7 +70,16 @@
 
     @Autowired
     private ISysPostService postService;
+    @Resource
+    private ZInfoUserService zInfoUserService;
+    @Resource
+    private ZfFamilyService zfFamilyService;
 
+    @Resource
+    private ZfAncestorService zfAncestorService;
+
+    @Resource
+    private SysUserRoleMapper sysUserRoleMapper;
     /**
      * 鑾峰彇鐢ㄦ埛鍒楄〃
      */
@@ -120,13 +145,110 @@
     }
 
     /**
+     * 淇敼鐢ㄦ埛
+     *
+     */
+    @PreAuthorize("@ss.hasPermi('system:user:edit')")
+    @Log(title = "鐢ㄦ埛绠$悊", businessType = BusinessType.UPDATE)
+    @PostMapping("/updateUserInfo")
+    public AjaxResult editUser(@Validated @RequestBody sysUserAndUserInfo user)
+    {
+        SysUser us = new SysUser();
+        us.setUserId(user.getSysId());
+        us.setUserName(user.getUserName());
+        us.setNickName(user.getNickName());
+        us.setRoleId(user.getRoleId());
+        us.setSex(user.getSex());
+        us.setStatus(user.getStatus());
+        us.setRemark(user.getRemark());
+        userService.updateUser(us);
+
+  //      System.out.println(user.getFamilyId());
+     //   System.out.println("[[[[]]]]]]");
+        Long userId = user.getSysId();
+        SysUserRole sysUserRole=sysUserRoleMapper.selectUserById(userId);
+        if (sysUserRole.getRoleId() == 102){
+        ZInfoUser infoUser = new ZInfoUser();
+        infoUser.setUserId(user.getUserId());
+        infoUser.setOldName(user.getUserName());
+        infoUser.setNickName(user.getNickName());
+        infoUser.setIsMyFamily(user.getIsMyFamily());
+        infoUser.setMomId(user.getMid());
+        infoUser.setFatherId(user.getFid());
+        infoUser.setSex(Integer.valueOf(user.getSex()));
+//        infoUser.setFamilyId(user.getFamilyId());
+        infoUser.setSysId(user.getSysId());
+
+
+        if(user.getSpouseId()!=null) {
+            infoUser.setSpouseId(user.getSpouseId());
+        }
+//        ZfFamily zfFamily = zfFamilyService.getByFamId(user.getFamilyId());
+//        if(zfFamily!=null&&zfFamily.getFid()!=null)
+//            infoUser.setFatherId(zfFamily.getFid());
+//        if(zfFamily!=null&&zfFamily.getMid()!=null)
+//            infoUser.setMomId(zfFamily.getMid());
+
+            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());
+
+            }}
+//            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()).getIsMyFamily() == 0) {
+                    ZInfoUser spouse = zInfoUserService.getById(user.getSpouseId());
+                    System.out.println("33333333333333333333333333333333333333333/");
+                    infoUser.setFamilyId(spouse.getFamilyId());
+                    infoUser.setClanId(spouse.getClanId());
+                }
+            }}
+
+        zInfoUserService.saveOrUpdate(infoUser);
+        if(user.getSpouseId()!=null) {
+            ZInfoUser zu = new ZInfoUser();
+            zu.setUserId(user.getSpouseId());
+            zu.setSpouseId(infoUser.getUserId());
+            zInfoUserService.updateById(zu);
+        }}
+
+      //  zInfoUserService.update(infoUser);
+             //   .saveOrUpdate(infoUser);
+        return AjaxResult.success();
+    }
+    /**
      * 鏂板鐢ㄦ埛
      */
     @PreAuthorize("@ss.hasPermi('system:user:add')")
     @Log(title = "鐢ㄦ埛绠$悊", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@Validated @RequestBody SysUser user)
+    public AjaxResult add(@Validated @RequestBody sysUserAndUserInfo userAll)
     {
+        SysUser user = new SysUser();
+      //  user.setUserId(userAll.getUserId());
+        user.setAvatar(userAll.getAvatar());
+        user.setPassword("123456");
+        user.setNickName(userAll.getNickName());
+        user.setUserName(userAll.getUserName());
+        user.setPhonenumber(userAll.getPhonenumber());
+        user.setRoleId(userAll.getRoleId());
+        user.setRoleIds(userAll.getRoleIds());
+        user.setStatus(userAll.getStatus());
+        user.setSex(userAll.getSex());
+        user.setRemark(userAll.getRemark());
+        user.setUpdateBy(userAll.getUpdateBy());
+//        user.setSex(userAll.getSex()=="鐢�"?"1":"0");
+    //    user.setPostIds(userAll.getPostIds());
+      //  user.set
         if (!userService.checkUserNameUnique(user))
         {
             return error("鏂板鐢ㄦ埛'" + user.getUserName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
@@ -141,7 +263,105 @@
         }
         user.setCreateBy(getUsername());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
-        return toAjax(userService.insertUser(user));
+        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);
+//        infoUser.setFamilyId(userAll.getFid());
+        infoUser.setSpouseId(userAll.getSpouseId());
+
+        infoUser.setFatherId(userAll.getFid());
+        infoUser.setMomId(userAll.getMid());
+     //   infoUser.setFamilyId(userAll.getFamilyId());
+
+//        if(zfFamily!=null&&zfFamily.getFid()!=null) {
+//            infoUser.setFatherId(zfFamily.getFid());
+//         //   infoUser.setMomId(zfFamily.getMid());
+//        }
+//        if(zfFamily!=null&&zfFamily.getMid()!=null) {
+//            infoUser.setFatherId(zfFamily.getMid());
+//            //   infoUser.setMomId(zfFamily.getMid());
+//        }
+//        System.out.println("-----");
+//        System.out.println(userAll.getIsMyFamily());
+
+        infoUser.setIsMyFamily(userAll.getIsMyFamily());
+//        if(userAll.getSpouseId()==0)
+//            infoUser.setSpouseId(null);
+//        else {
+//            infoUser.setSpouseId(userAll.getSpouseId());
+//
+//        }
+        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());
+                infoUser.setClanId(father.getClanId());}
+            else if (mother.getIsMyFamily() == 1){
+                infoUser.setFamilyId(mother.getFamilyId());
+                infoUser.setClanId(mother.getClanId());
+
+        }
+        }
+        else {
+            ZInfoUser spouse = zInfoUserService.getById(userAll.getSpouseId());
+            infoUser.setFamilyId(spouse.getFamilyId());
+            infoUser.setClanId(spouse.getClanId());
+        }
+
+        //鍓嶇淇濊瘉浜嗚鑹蹭笉涓虹┖
+     //   if(user.getRoleIds()[0]==102)
+
+        // infoUser.setRoleName(user.g);
+
+      //  if(userAll.getFamilyId()!=-1) {
+
+        if(userAll.getRoleId()==102) {
+            infoUser.setRoleId(3L);
+            zInfoUserService.save(infoUser);
+            if(userAll.getSpouseId()!=null)
+            {
+                ZInfoUser zu = new ZInfoUser();
+                zu.setUserId(userAll.getSpouseId());
+                zu.setSpouseId(infoUser.getUserId());
+                zInfoUserService.updateById(zu);
+            }
+        }}
+
+        //    zInfoUserService.saveOrUpdate(infoUser);
+//            LambdaQueryWrapper<ZInfoUser> lqw = new LambdaQueryWrapper<>();
+//            lqw.eq(ZInfoUser::getSpouseId, userAll.getSpouseId());
+//            List<ZInfoUser> lis = zInfoUserService.list(lqw);
+//            if(lis.size()>0) {
+////                ZInfoUser zi = new ZInfoUser();
+////                zi.setUserId(userAll.getSpouseId());
+////              //  UpdateWrapper wrapper = new UpdateWrapper();
+////                zi.setSpouseId(lis.get(0).getUserId());
+////                System.out.println(userAll.getSpouseId());
+////                System.out.println(lis.get(0).getUserId());
+//                zInfoUserService.lambdaUpdate().eq(ZInfoUser::getUserId, userAll.getSpouseId())
+//                        .set(ZInfoUser::getSpouseId, lis.get(0).getUserId())
+//                        .update();
+//            }
+      //  }
+        return AjaxResult.success();
     }
 
     /**
@@ -182,6 +402,10 @@
         {
             return error("褰撳墠鐢ㄦ埛涓嶈兘鍒犻櫎");
         }
+//        for(Long uid: userIds) {
+//            zInfoUserService.getInfoBysysId();
+//        }
+       // zInfoUserService.removeByUserName( userService.findUserNames(userIds));
         return toAjax(userService.deleteUserByIds(userIds));
     }
 

--
Gitblit v1.9.1