diff --git a/ZR.Admin.WebApi/Controllers/System/SysUserRoleController.cs b/ZR.Admin.WebApi/Controllers/System/SysUserRoleController.cs
index b355f44..bb40707 100644
--- a/ZR.Admin.WebApi/Controllers/System/SysUserRoleController.cs
+++ b/ZR.Admin.WebApi/Controllers/System/SysUserRoleController.cs
@@ -1,7 +1,6 @@
using Infrastructure;
using Infrastructure.Attribute;
using Microsoft.AspNetCore.Mvc;
-using System;
using System.Linq;
using ZR.Admin.WebApi.Filters;
using ZR.Model;
@@ -29,13 +28,13 @@ namespace ZR.Admin.WebApi.Controllers.System
///
/// 根据角色编号获取已分配的用户
///
- ///
+ ///
///
- [HttpGet("get/{roleId}")]
+ [HttpGet("list")]
[ActionPermissionFilter(Permission = "system:roleusers:query")]
- public IActionResult GetList(long roleId = 0)
+ public IActionResult GetList([FromQuery] RoleUserQueryDto roleUserQueryDto)
{
- var list = SysUserRoleService.GetSysUsersByRoleId(roleId);
+ var list = SysUserRoleService.GetSysUsersByRoleId(roleUserQueryDto);
return SUCCESS(list, TIME_FORMAT_FULL);
}
@@ -70,24 +69,19 @@ namespace ZR.Admin.WebApi.Controllers.System
///
/// 获取未分配用户角色
///
- ///
+ ///
///
[HttpGet("GetExcludeUsers")]
- public IActionResult GetExcludeUsers(long roleId = 0)
+ public IActionResult GetExcludeUsers([FromQuery] RoleUserQueryDto roleUserQueryDto)
{
- if (roleId <= 0)
+ if (roleUserQueryDto.RoleId <= 0)
{
throw new CustomException(ResultCode.PARAM_ERROR, "roleId不能为空");
}
- // 取得该角色所有添加的用户
- var userIds = SysUserRoleService.GetSysUsersByRoleId(roleId).Select(f => f.UserId);
-
- SysUser userQuery = new();
- userQuery.Status = "0";
- PagerInfo pager = new(1, 50);
// 获取未添加用户
- var list = UserService.SelectUserList(userQuery, pager).Where(m => !userIds.Contains(m.UserId));
+ var list = SysUserRoleService.GetExcludedSysUsersByRoleId(roleUserQueryDto);
+
return SUCCESS(list, TIME_FORMAT_FULL);
}
}
diff --git a/ZR.Model/System/Dto/RoleUsersCreateDto.cs b/ZR.Model/System/Dto/RoleUserDto.cs
similarity index 82%
rename from ZR.Model/System/Dto/RoleUsersCreateDto.cs
rename to ZR.Model/System/Dto/RoleUserDto.cs
index 456621a..44e4ba5 100644
--- a/ZR.Model/System/Dto/RoleUsersCreateDto.cs
+++ b/ZR.Model/System/Dto/RoleUserDto.cs
@@ -5,6 +5,13 @@ using System.Text;
namespace ZR.Model.System.Dto
{
+ public class RoleUserQueryDto : PagerInfo
+ {
+ public long RoleId { get; set; }
+
+ public string UserName { get; set; }
+ }
+
public class RoleUsersCreateDto
{
///
diff --git a/ZR.Repository/System/SysUserRoleRepository.cs b/ZR.Repository/System/SysUserRoleRepository.cs
index 4f80eed..8116c14 100644
--- a/ZR.Repository/System/SysUserRoleRepository.cs
+++ b/ZR.Repository/System/SysUserRoleRepository.cs
@@ -1,7 +1,9 @@
using Infrastructure.Attribute;
using SqlSugar;
using System.Collections.Generic;
+using ZR.Model;
using ZR.Model.System;
+using ZR.Model.System.Dto;
namespace ZR.Repository.System
{
@@ -73,5 +75,39 @@ namespace ZR.Repository.System
.Select((t1, u) => u)
.ToList();
}
+
+ ///
+ /// 获取用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto)
+ {
+ var query = Context.Queryable((t1, u) => new JoinQueryInfos(
+ JoinType.Left, t1.UserId == u.UserId))
+ .Where((t1, u) => t1.RoleId == roleUserQueryDto.RoleId && u.DelFlag == "0");
+ if (!string.IsNullOrEmpty(roleUserQueryDto.UserName))
+ {
+ query = query.Where((t1, u) => u.UserName.Contains(roleUserQueryDto.UserName));
+ }
+ return query.Select((t1, u) => u).ToPage(roleUserQueryDto);
+ }
+
+ ///
+ /// 获取尚未指派的用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetExcludedSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto)
+ {
+ var query = Context.Queryable()
+ .Where(it => SqlFunc.Subqueryable()
+ .Where(s => s.UserId == it.UserId).NotAny());
+ if (!string.IsNullOrEmpty(roleUserQueryDto.UserName))
+ {
+ query = query.Where(x => x.UserName.Contains(roleUserQueryDto.UserName));
+ }
+ return query.ToPage(roleUserQueryDto);
+ }
}
}
diff --git a/ZR.Service/System/IService/ISysUserRoleService.cs b/ZR.Service/System/IService/ISysUserRoleService.cs
index 6dc8125..eb2bb49 100644
--- a/ZR.Service/System/IService/ISysUserRoleService.cs
+++ b/ZR.Service/System/IService/ISysUserRoleService.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using ZR.Model;
using ZR.Model.System.Dto;
using ZR.Model.System;
@@ -34,8 +35,27 @@ namespace ZR.Service.System.IService
///
public int AddUserRole(List sysUsers);
+ ///
+ /// 获取用户数据根据角色id
+ ///
+ ///
+ ///
public List GetSysUsersByRoleId(long roleId);
+ ///
+ /// 获取用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto);
+
+ ///
+ /// 获取尚未指派的用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetExcludedSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto);
+
///
/// 新增用户角色信息
///
diff --git a/ZR.Service/System/SysUserRoleService.cs b/ZR.Service/System/SysUserRoleService.cs
index 183b10f..0b9d993 100644
--- a/ZR.Service/System/SysUserRoleService.cs
+++ b/ZR.Service/System/SysUserRoleService.cs
@@ -2,6 +2,7 @@
using System;
using System.Collections.Generic;
using System.Text;
+using ZR.Model;
using ZR.Model.System.Dto;
using ZR.Model.System;
using ZR.Repository.System;
@@ -12,8 +13,8 @@ namespace ZR.Service.System
///
/// 用户角色
///
- [AppService(ServiceType = typeof(ISysUserRoleService),ServiceLifetime = LifeTime.Transient)]
- public class SysUserRoleService: ISysUserRoleService
+ [AppService(ServiceType = typeof(ISysUserRoleService), ServiceLifetime = LifeTime.Transient)]
+ public class SysUserRoleService : ISysUserRoleService
{
public SysUserRoleRepository SysUserRoleRepository;
@@ -74,6 +75,26 @@ namespace ZR.Service.System
return SysUserRoleRepository.GetSysUsersByRoleId(roleId);
}
+ ///
+ /// 获取用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto)
+ {
+ return SysUserRoleRepository.GetSysUsersByRoleId(roleUserQueryDto);
+ }
+
+ ///
+ /// 获取尚未指派的用户数据根据角色id
+ ///
+ ///
+ ///
+ public PagedInfo GetExcludedSysUsersByRoleId(RoleUserQueryDto roleUserQueryDto)
+ {
+ return SysUserRoleRepository.GetExcludedSysUsersByRoleId(roleUserQueryDto);
+ }
+
///
/// 新增用户角色信息
///
diff --git a/ZR.Vue/src/api/system/userRoles.js b/ZR.Vue/src/api/system/userRoles.js
index cb026d1..d5d94b3 100644
--- a/ZR.Vue/src/api/system/userRoles.js
+++ b/ZR.Vue/src/api/system/userRoles.js
@@ -1,10 +1,11 @@
import request from '@/utils/request'
// 查询角色用户
-export function getRoleUsers(roleId) {
+export function getRoleUsers(query) {
return request({
- url: '/system/userRole/get/' + roleId,
- method: 'get'
+ url: '/system/userRole/list',
+ method: 'get',
+ params: query,
})
}
@@ -25,10 +26,11 @@ export function deleteRoleUsers(data) {
})
}
// 查询角色未添加用户列表
-export function getExcludeUsers(roleId) {
+export function getExcludeUsers(query) {
return request({
- url: '/system/userRole/getExcludeUsers?roleId=' + roleId,
- method: 'get'
+ url: '/system/userRole/getExcludeUsers',
+ method: 'get',
+ params: query,
})
}
diff --git a/ZR.Vue/src/views/system/roleusers/index.vue b/ZR.Vue/src/views/system/roleusers/index.vue
index b6791ef..6d43ac0 100644
--- a/ZR.Vue/src/views/system/roleusers/index.vue
+++ b/ZR.Vue/src/views/system/roleusers/index.vue
@@ -16,12 +16,10 @@
批量取消授权
-
+
-
+
@@ -41,16 +39,17 @@
+
-
+
@@ -65,6 +64,7 @@
+