From e126ec9be7a8f8d2c351f2843a9a184d1bcc8703 Mon Sep 17 00:00:00 2001
From: zqy <252236926@qq.com>
Date: 星期五, 30 五月 2025 16:48:52 +0800
Subject: [PATCH] 修改用户
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java | 381 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 371 insertions(+), 10 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..68d4e81 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,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.*;
+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;
@@ -54,6 +67,21 @@
@Autowired
private ISysPostService postService;
+ @Resource
+ private ZInfoUserService zInfoUserService;
+ @Resource
+ private ZfFamilyService zfFamilyService;
+
+ @Resource
+ private ZfAncestorService zfAncestorService;
+
+ @Resource
+ private SysUserRoleMapper sysUserRoleMapper;
+ @Resource
+
+ MarrySelfService marrySelfService;
+ @Resource
+ MarryUserService marryUserService;
/**
* 鑾峰彇鐢ㄦ埛鍒楄〃
@@ -63,8 +91,28 @@
public TableDataInfo list(SysUser user)
{
startPage();
+ System.out.println(user.getClanId());
+ System.out.println("----------------++++++++++++==0------------");
List<SysUser> list = userService.selectUserList(user);
return getDataTable(list);
+ }
+ @GetMapping("/listCommonUser")
+ public TableDataInfo listCommonUser(SysUser user)
+ {
+ startPage();
+ // System.out.println(user.getClanId());
+ System.out.println("----------------++++++++++++==0------------");
+ List<SysUser> list = userService.selectCommonUserList(user);
+ return getDataTable(list);
+ }
+ @Log(title = "鐢ㄦ埛绠$悊", businessType = BusinessType.EXPORT)
+ @PreAuthorize("@ss.hasPermi('system:user:export')")
+ @PostMapping("/exportCommonUser")
+ public void exportCommonUser(HttpServletResponse response, SysUser user)
+ {
+ List<SysUser> list = userService.selectCommonUserList(user);
+ ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
+ util.exportExcel(response, list, "鐢ㄦ埛鏁版嵁");
}
@Log(title = "鐢ㄦ埛绠$悊", businessType = BusinessType.EXPORT)
@@ -103,7 +151,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鍒欑洿鎺ヨ繑鍥炴墍鏈夌殑瑙掕壊锛屽惁鍒欏氨杩斿洖涓嶆槸绠$悊鍛樼殑瑙掕壊淇℃伅
@@ -114,22 +162,187 @@
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;
}
+ /**
+ * 淇敼鐢ㄦ埛
+ *
+ */
+ @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);
+ //System.out.println(sysUserRole.getRoleId());
+ System.out.println("浣犲ソ鍛�");
+ System.out.println(user.getRoleId());
+ if (user.getRoleId() != null && user.getRoleId().equals(102L)){
+ 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());
+ if (user.getSex() != null)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());
+ Long myFamily = zInfoUserService.getById(user).getFamilyId();
+ if (myFamily != null) infoUser.setFamilyId(myFamily);
+ 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());
+
+ // }
+ }
+
+ 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.error("瀹跺涵鎴愬憳涓嶈兘淇敼涓烘櫘閫氱敤鎴�");
+ }
+ //鏇存柊閰嶅伓淇℃伅
+ 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.error("瀹跺涵鎴愬憳涓嶈兘淇敼涓烘櫘閫氱敤鎴�");
+ }
+
+ // zInfoUserService.update(infoUser);
+ // .saveOrUpdate(infoUser);
+
+ }
/**
* 鏂板鐢ㄦ埛
*/
@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)
{
- if (!userService.checkUserNameUnique(user))
+ 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.setClanId(userAll.getClanId());
+// user.setSex(userAll.getSex()=="鐢�"?"1":"0");
+ // user.setPostIds(userAll.getPostIds());
+ // user.set
+
+ if (!userService.checkNickNameUnique(user))
{
- return error("鏂板鐢ㄦ埛'" + user.getUserName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
+ return error("鏂板鐢ㄦ埛'" + user.getNickName() + "'澶辫触锛岀櫥褰曡处鍙峰凡瀛樺湪");
}
else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user))
{
@@ -141,7 +354,151 @@
}
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());
+ 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());
+
+ 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.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 {
+// 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());
+
+ }
+ 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);
+
+ }
+
+ //鍓嶇淇濊瘉浜嗚鑹蹭笉涓虹┖
+ // if(user.getRoleIds()[0]==102)
+
+ // infoUser.setRoleName(user.g);
+
+ // if(userAll.getFamilyId()!=-1) {
+
+ 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);
+// 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();
}
/**
@@ -154,9 +511,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))
{
@@ -182,6 +539,10 @@
{
return error("褰撳墠鐢ㄦ埛涓嶈兘鍒犻櫎");
}
+// for(Long uid: userIds) {
+// zInfoUserService.getInfoBysysId();
+// }
+ // zInfoUserService.removeByUserName( userService.findUserNames(userIds));
return toAjax(userService.deleteUserByIds(userIds));
}
@@ -193,8 +554,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