Ver Fonte

Merge remote-tracking branch 'origin/master-v2' into master-v2

syh há 4 anos atrás
pai
commit
1e85e43262

+ 26 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -2,6 +2,7 @@ package org.jeecg.modules.system.controller;
 
 
 import cn.com.ctop.common.module.annotation.PermissionData;
+import cn.com.ctop.common.module.entity.SysRole;
 import cn.com.ctop.common.module.entity.SysUser;
 import cn.com.ctop.common.module.model.SysUserSysDepartModel;
 import cn.com.ctop.common.module.vo.SysDepartUsersVO;
@@ -255,6 +256,11 @@ public class SysUserController {
 		return result;
 	}
 
+    @Autowired
+    private IProjectMemberService memberService;
+    @Autowired
+    private ISysDepartService departService;
+
 	@RequestMapping(value = "/edit", method = RequestMethod.PUT)
     //@RequiresRoles({"admin"})
     //@RequiresPermissions("user:edit")
@@ -272,18 +278,22 @@ public class SysUserController {
 				user.setPassword(sysUser.getPassword());
 				String roles = jsonObject.getString("selectedroles");
                 String departs = jsonObject.getString("selecteddeparts");
+                if (!Check.isNull(departs)) {
+                    SysDepart depart = departService.getById(departs);
+                    if (!Check.isNull(depart)) {
+                        user.setOrgCode(depart.getOrgCode());
+                    }
+                }
 				sysUserService.editUserWithRole(user, roles);
                 sysUserService.editUserWithDepart(user, departs);
                 sysUserService.updateNullPhoneEmail();
 
-
                 userCompanyService.addOrUpdateUserWithCompany(user);
-                /*if (!Check.isNull(roles)) {
+                if (!Check.isNull(roles)) {
                     Thread thread = new Thread() {
                         @Override
                         public void run() {
-                          //  org.jeecg.modules.system.entity.SysRole byId = roleService.getById(roles);
-                            SysRole byId = roleService.getById(roles);
+                            SysRole sysRole = roleService.getById(roles);
                             if (!Check.isNull(sysRole)) {
                                 QueryWrapper<ProjectMember> memberQueryWrapper = new QueryWrapper<>();
                                 memberQueryWrapper.eq("user_id", user.getId());
@@ -294,7 +304,7 @@ public class SysUserController {
                         }
                     };
                     thread.start();
-                }*/
+                }
 
 				result.success("修改成功!");
 			}
@@ -313,6 +323,10 @@ public class SysUserController {
 	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
 		sysBaseAPI.addLog("删除用户,id: " +id ,CommonConstant.LOG_TYPE_2, 3);
 		this.sysUserService.deleteUser(id);
+        LambdaQueryWrapper<SysUserDepart> query = new LambdaQueryWrapper<SysUserDepart>();
+        query.eq(SysUserDepart::getUserId, id);
+        sysUserDepartService.remove(query);
+        userCompanyService.removeByUserId(id);
 		return Result.ok("删除用户成功");
 	}
 
@@ -324,6 +338,13 @@ public class SysUserController {
 	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
 		sysBaseAPI.addLog("批量删除用户, ids: " +ids ,CommonConstant.LOG_TYPE_2, 3);
 		this.sysUserService.deleteBatchUsers(ids);
+        LambdaQueryWrapper<SysUserDepart> query = new LambdaQueryWrapper<SysUserDepart>();
+        String[] idArry = ids.split(",");
+        for (String id : idArry) {
+            query.eq(SysUserDepart::getUserId, id);
+            this.sysUserDepartService.remove(query);
+            userCompanyService.removeByUserId(id);
+        }
 		return Result.ok("批量删除用户成功");
 	}