Browse Source

修改用户组绑定用户的查询

hym 4 years ago
parent
commit
7d3951940f

+ 1 - 1
user_center/src/main/java/com/huaxu/controller/OrgController.java

@@ -41,7 +41,7 @@ public class OrgController {
     @RequestMapping(value = "get", method = RequestMethod.POST)
     @ApiOperation(value = "查询机构列表")
     public AjaxMessage<Org> selectOne(
-            @ApiParam(value = "设置配置", required = true)@RequestParam Integer id) {
+            @ApiParam(value = "机构Id", required = true)@RequestParam Integer id) {
         Org org=new Org();
         org.setId(id);
         Org result = orgService.selectById(org.getId());

+ 6 - 0
user_center/src/main/java/com/huaxu/controller/RoleController.java

@@ -100,6 +100,12 @@ public class RoleController {
         Pagination<RoleDto> pages = new Pagination<>(iPage);
         return new AjaxMessage<>(ResultStatus.OK, pages);
     }
+    @RequestMapping(value = "selectAll", method = RequestMethod.POST)
+    @ApiOperation(value = "查询所有角色")
+    public AjaxMessage<List<Role>> selectAll() {
+        Role role=new Role();
+        return new AjaxMessage<>(ResultStatus.OK, roleService.selectList(role));
+    }
     @RequestMapping(value = "findUsersByUserGroup", method = RequestMethod.POST)
     @ApiOperation(value = "查询角色对应user")
     AjaxMessage<List<UserEntity>>  findUsersByRole(@ApiParam(value = "角色id", required = true)@RequestParam Integer id){

+ 1 - 1
user_center/src/main/java/com/huaxu/controller/UserGroupController.java

@@ -100,7 +100,7 @@ public class UserGroupController {
     }
     @RequestMapping(value = "findUsersByUserGroup", method = RequestMethod.POST)
     @ApiOperation(value = "查询用户组对应user")
-    AjaxMessage<List<UserEntity>>  findUsersByUserGroup(@ApiParam(value = "用户组id", required = true)Integer id){
+    AjaxMessage<List<UserEntity>>  findUsersByUserGroup(@ApiParam(value = "用户组id", required = true)@RequestParam  Integer id){
         UserGroup userGroup=new UserGroup();
         userGroup.setId(id);
         return new AjaxMessage<>(ResultStatus.OK,

+ 13 - 1
user_center/src/main/java/com/huaxu/service/impl/OrgServiceImpl.java

@@ -5,6 +5,7 @@ import com.huaxu.dao.OrgMapper;
 import com.huaxu.dto.OrgTree;
 import com.huaxu.entity.Org;
 import com.huaxu.model.LoginUser;
+import com.huaxu.model.ProgramItem;
 import com.huaxu.service.OrgService;
 import com.huaxu.util.UserUtil;
 import org.springframework.beans.BeanUtils;
@@ -72,6 +73,7 @@ public class OrgServiceImpl implements OrgService {
         org.setTenantId(currentUser.getTenantId());
         org.setCreateBy(currentUser.getUsername());
         org.setDateCreate(new Date());
+        org.setStatus(0);
         return this.orgMapper.insert(org);
     }
 
@@ -168,8 +170,18 @@ public class OrgServiceImpl implements OrgService {
 
     @Override
     public List<OrgTree> getTrees(Org org) {
+        LoginUser currentUser = UserUtil.getCurrentUser();
+        org.setTenantId(currentUser.getTenantId());
+        Set<Integer>orgIds=new HashSet<>();
+        List<ProgramItem> programItemList = currentUser.getProgramItemList();
+        if(programItemList!=null){
+            programItemList.forEach(programItem -> {
+                orgIds.add(programItem.getOrgId());
+            });
+        }
         List<OrgTree> trees=orgMapper.selectTrees(org);
-        trees=getOrgTree(trees,0,1,new HashSet<>());
+
+        trees=getOrgTree(trees,0,1,orgIds);
         return trees;
     }
     public static List<OrgTree> getOrgTree(List<OrgTree> list, Integer id, Integer leve, Set<Integer> set) {

+ 4 - 0
user_center/src/main/java/com/huaxu/service/impl/RoleServiceImpl.java

@@ -66,6 +66,9 @@ public class RoleServiceImpl implements RoleService {
      */
     @Override
     public List<Role> selectList(Role role) {
+
+        LoginUser currentUser = UserUtil.getCurrentUser();
+        role.setTenantId(currentUser.getTenantId());
         return this.roleMapper.selectList(role);
     }
 
@@ -84,6 +87,7 @@ public class RoleServiceImpl implements RoleService {
         role.setTenantId(currentUser.getTenantId());
         role.setCreateBy(currentUser.getUsername());
         role.setDateCreate(new Date());
+        role.setStatus(0);
         return this.roleMapper.insert(role);
     }
 

+ 8 - 10
user_center/src/main/java/com/huaxu/service/impl/UserGroupServiceImpl.java

@@ -76,6 +76,7 @@ public class UserGroupServiceImpl implements UserGroupService {
         userGroup.setTenantId(currentUser.getTenantId());
         userGroup.setCreateBy(currentUser.getUsername());
         userGroup.setDateCreate(new Date());
+        userGroup.setStatus(0);
         return this.userGroupMapper.insert(userGroup);
     }
 
@@ -122,16 +123,10 @@ public class UserGroupServiceImpl implements UserGroupService {
         ids.forEach(id->{
             UserGroup userGroup=new UserGroup();
             userGroup.setId(id);
+            userGroup.setStatus(-1);
+            userGroupMapper.update(userGroup);
+
 
-                UserGroup hasUserGroupUsers = userGroupMapper.findHasUserGroupUsers(userGroup);
-                if(hasUserGroupUsers==null){
-                    userGroup.setStatus(-1);
-                userGroupMapper.update(userGroup);
-                //删除用户与用户组的关系
-                // userGroupMapper.deleteUserGroupRelations(userGroup);
-            }else {
-                    fail.add(hasUserGroupUsers.getGroupName());
-                }
         });
 
         return fail;
@@ -162,7 +157,8 @@ public class UserGroupServiceImpl implements UserGroupService {
 
     @Override
     public List<UserEntity> findUsersByUserGroup(UserGroup userGroup) {
-
+        LoginUser currentUser = UserUtil.getCurrentUser();
+        userGroup.setTenantId(currentUser.getTenantId());
         return  userGroupMapper.findUsersByUserGroup( userGroup);
     }
 
@@ -183,7 +179,9 @@ public class UserGroupServiceImpl implements UserGroupService {
             UserRoleEntity userRoleEntity=new UserRoleEntity();
             userRoleEntity.setRoleId(userGroupDto.getRoleId());
             userRoleEntity.setUserId(id);
+            userRoleEntity.setStatus(0);
             groupUsers.add(user);
+            user.setStatus(0);
             userRoleEntities.add(userRoleEntity);
         });
         userGroupMapper.deleteUserRoles(userGroupDto);

+ 12 - 3
user_center/src/main/resources/mapper/RoleMapper.xml

@@ -21,7 +21,7 @@
 
         <result property="roleName" column="ROLE_NAME" jdbcType="VARCHAR"/>
 
-        <result property="users" column="cn" jdbcType="INTEGER"/>
+        <result property="users" column="users" jdbcType="INTEGER"/>
         <result property="roleState" column="ROLE_STATE" jdbcType="INTEGER"/>
     </resultMap>
 
@@ -51,6 +51,7 @@
         <include refid="Base_Column_List"/>
         from uims_role
         <where>
+            and status!=-1
             <if test="id != null">
                 and ID = #{id}
             </if>
@@ -165,8 +166,16 @@
         select
         <include refid="Base_Column_List"/>,users
         from uims_role a left join
-        (select count(*) users ,ROLE_ID from uims_user a join uims_user_role b
-        where a.TENANT_ID=#{role.tenantId} group by b.ROLE_ID) b
+        (select count(*) users ,ROLE_ID from uims_user_role b
+        <where>
+            status!=-1
+            <if test="role.tenantId != null and role.tenantId != ''">
+                and TENANT_ID = #{role.tenantId}
+            </if>
+        </where>
+
+
+         group by b.ROLE_ID) b
         ON a.id=b.ROLE_ID
         <where>
             and status!=-1

+ 12 - 3
user_center/src/main/resources/mapper/UserGroupMapper.xml

@@ -219,13 +219,22 @@
         select 	<include refid="userColumns"/>,b.id userGroupId
          from uims_user a left join uims_group_user b on a.id=b.USER_ID
         <include refid="sysAreaJoins"/>
-        where b.GROUP_ID=#{id} and b.status!=-1
+        where  a.status!=-1  and userrole.status!=-1
+        <if test="id != -1 ">
+           and  b.GROUP_ID=#{id} and b.status!=-1
+        </if>
+        <if test="id == -1 ">
+          and  b.GROUP_ID is null
+        </if>
+        <if test="tenantId != null and tenantId != ''">
+            and TENANT_ID = #{tenantId}
+        </if>
     </select>
     <update id="deleteUserGroupRelations">
-        update uims_group_user set STATUS=-1 where GROUP_ID=#{id}
+        update uims_group_user set STATUS=-1 where STATUS !=-1 and GROUP_ID=#{id}
     </update>
     <update id="deleteUserRoles">
-       update uims_user_role set STATUS=-1 where USER_ID in
+       update uims_user_role set STATUS=-1 where STATUS!=-1 and USER_ID in
         <foreach collection="userGroupDto.userIds" item="id" index="index" open="(" close=")" separator=",">
             #{id}
         </foreach>