fix 用户和菜单权限联合

This commit is contained in:
2024-01-08 10:35:25 +08:00
parent 82e77027e3
commit f4e401d649
22 changed files with 257 additions and 93 deletions

View File

@@ -7,6 +7,9 @@ using Microsoft.AspNetCore.Mvc;
namespace Dlhis.User.Identity.Controllers;
/// <summary>
/// 角色
/// </summary>
[Authorize(Roles = "admin")]
[Route("api/[controller]")]
[ApiController]
@@ -19,6 +22,11 @@ public class RolesController : ControllerBase
_roleService = roleService;
}
/// <summary>
/// 获取角色分页
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpGet]
public async Task<Pagination<RoleRespone>> GetPageAsync(RolePageRequest request)
{

View File

@@ -7,6 +7,9 @@ using Microsoft.AspNetCore.Mvc;
namespace Dlhis.User.Identity.Controllers;
/// <summary>
/// 用户
/// </summary>
[Authorize(Roles = "admin")]
[Route("api/[controller]")]
[ApiController]
@@ -29,4 +32,21 @@ public class UsersController : ControllerBase
{
return await _userService.GetPageAsync(request);
}
/// <summary>
/// 获取用户列表
/// </summary>
/// <returns></returns>
[HttpGet("list")]
public async Task<List<UserResponse>> GetUsersAsync()
{
return await _userService.GetUsersAsync();
}
[Authorize]
[HttpGet]
public async Task<UserResponse> GetUserByIdAsync(int id)
{
return await _userService.GetUserByIdAsync(id);
}
}

View File

@@ -9,4 +9,8 @@ public interface IUserService : IScopeDependency
Task<Pagination<UserResponse>> GetPageAsync(UserPageRequest request);
Task ResetAccessFailedCountAsync(int id);
Task<List<UserResponse>> GetUsersAsync();
Task<UserResponse> GetUserByIdAsync(int id);
}

View File

@@ -38,4 +38,17 @@ public class UserService : IUserService
user.AccessFailedCount = 0;
await _dbContext.UpdateAsync(user);
}
public async Task<List<UserResponse>> GetUsersAsync()
{
//todo tenant
var users = await _dbContext.Queryable<UserEntity>().Select<UserResponse>().ToListAsync();
return users;
}
public async Task<UserResponse> GetUserByIdAsync(int id)
{
var user = await _dbContext.Queryable<UserEntity>().Where(x => x.Id == id).Select<UserResponse>().FirstAsync();
return user;
}
}