refactor: 拆分微信API到独立项目并迁移相关代码
1. 新增WeChatApi独立项目,将原WebApi中的微信相关控制器迁移至新项目 2. 新增后台权限管理相关实体、服务接口和基础控制器 3. 完善管理员用户服务,增加角色关联查询和赋值逻辑 4. 修复WebApi Swagger文档过滤微信API版本的问题 5. 更新解决方案文件,添加新的微信API项目引用 6. 新增微信API基础配置文件和项目属性配置
This commit is contained in:
@ -12,7 +12,11 @@ using QYZH.InteractiveMagazine.Repository;
|
||||
|
||||
namespace QYZH.InteractiveMagazine.Service;
|
||||
|
||||
public class AdminAuthService(BaseRepository<AdminUser> adminUserRepository, IConfiguration configuration, ILogger<AdminAuthService> logger) : BaseRepository<AdminUser>, IAdminAuthService
|
||||
public class AdminAuthService(
|
||||
BaseRepository<AdminUser> adminUserRepository,
|
||||
IAdminPermissionService adminPermissionService,
|
||||
IConfiguration configuration,
|
||||
ILogger<AdminAuthService> logger) : BaseRepository<AdminUser>, IAdminAuthService
|
||||
{
|
||||
|
||||
private const string TokenKeyPrefix = "InteractiveMagazine:AdminAuth:Token";
|
||||
@ -60,12 +64,20 @@ public class AdminAuthService(BaseRepository<AdminUser> adminUserRepository, ICo
|
||||
|
||||
logger.LogInformation("管理员登录成功,用户名: {UserName}, ID: {UserId}", input.UserName, adminUser.Id);
|
||||
|
||||
var roles = await adminPermissionService.GetAdminUserRolesAsync(adminUser.Id);
|
||||
var menus = await adminPermissionService.GetAdminUserMenuTreeAsync(adminUser.Id);
|
||||
var permissionCodes = await adminPermissionService.GetAdminUserPermissionCodesAsync(adminUser.Id);
|
||||
|
||||
return new AdminLoginOutput
|
||||
{
|
||||
Token = token,
|
||||
UserId = (long)adminUser.Id,
|
||||
UserName = adminUser.UserName,
|
||||
Type = adminUser.Type.ToString(),
|
||||
RoleIds = roles.Select(x => x.Id).ToList(),
|
||||
Roles = roles,
|
||||
Menus = menus,
|
||||
PermissionCodes = permissionCodes
|
||||
};
|
||||
}
|
||||
|
||||
@ -89,12 +101,20 @@ public class AdminAuthService(BaseRepository<AdminUser> adminUserRepository, ICo
|
||||
throw new BusinessException("用户不存在", ResultCode.NOT_FOUND);
|
||||
}
|
||||
|
||||
var roles = await adminPermissionService.GetAdminUserRolesAsync(adminUser.Id);
|
||||
var menus = await adminPermissionService.GetAdminUserMenuTreeAsync(adminUser.Id);
|
||||
var permissionCodes = await adminPermissionService.GetAdminUserPermissionCodesAsync(adminUser.Id);
|
||||
|
||||
return new AdminUserInfoOutput
|
||||
{
|
||||
UserId = adminUser.Id,
|
||||
UserName = adminUser.UserName,
|
||||
Type = adminUser.Type.ToString(),
|
||||
Status = adminUser.Status
|
||||
Status = adminUser.Status,
|
||||
RoleIds = roles.Select(x => x.Id).ToList(),
|
||||
Roles = roles,
|
||||
Menus = menus,
|
||||
PermissionCodes = permissionCodes
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user