129 lines
3.4 KiB
C#
129 lines
3.4 KiB
C#
using Entities.Contracts;
|
|
using Entities.DTO;
|
|
using Microsoft.AspNetCore.Identity;
|
|
using SharedDATA.Api;
|
|
using TechHelper.Services;
|
|
|
|
namespace TechHelper.Server.Services
|
|
{
|
|
/// <summary>
|
|
/// 用户服务实现类
|
|
/// 处理用户相关的业务逻辑操作
|
|
/// </summary>
|
|
public class UserServices : IUserSerivces
|
|
{
|
|
|
|
private readonly IUnitOfWork _unitOfWork;
|
|
private readonly IClassService _classService;
|
|
private readonly UserManager<User> _userManager;
|
|
|
|
/// <summary>
|
|
/// 初始化用户服务
|
|
/// </summary>
|
|
/// <param name="unitOfWork">工作单元实例</param>
|
|
/// <param name="classService">班级服务实例</param>
|
|
/// <param name="userManager">用户管理实例</param>
|
|
public UserServices(IUnitOfWork unitOfWork, IClassService classService, UserManager<User> userManager)
|
|
{
|
|
_unitOfWork = unitOfWork;
|
|
_classService = classService;
|
|
_userManager = userManager;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加新用户
|
|
/// </summary>
|
|
/// <param name="model">用户实体对象</param>
|
|
/// <returns>操作结果响应</returns>
|
|
public Task<ApiResponse> AddAsync(User model)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除指定用户
|
|
/// </summary>
|
|
/// <param name="id">用户唯一标识符</param>
|
|
/// <returns>操作结果响应</returns>
|
|
public Task<ApiResponse> DeleteAsync(Guid id)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取所有用户列表
|
|
/// </summary>
|
|
/// <param name="query">查询参数对象</param>
|
|
/// <returns>用户列表响应</returns>
|
|
public Task<ApiResponse> GetAllAsync(QueryParameter query)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取指定用户信息
|
|
/// </summary>
|
|
/// <param name="id">用户唯一标识符</param>
|
|
/// <returns>用户信息响应</returns>
|
|
public Task<ApiResponse> GetAsync(Guid id)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取学生详细信息
|
|
/// </summary>
|
|
/// <param name="userId">用户唯一标识符</param>
|
|
/// <returns>学生详细信息响应</returns>
|
|
public Task<ApiResponse> GetStudentDetailInfo(Guid userId)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 恢复用户角色信息
|
|
/// 根据用户所在班级信息恢复用户的角色权限
|
|
/// </summary>
|
|
/// <param name="user">用户实体对象</param>
|
|
/// <returns>操作结果响应</returns>
|
|
public async Task<ApiResponse> RestoreUserRoleInformation(User user)
|
|
{
|
|
var result = await _classService.GetUserClassRole(user.Id);
|
|
if (result.Status)
|
|
{
|
|
var classRole = result.Result as UserClassRoleDto;
|
|
if (classRole != null)
|
|
{
|
|
if (!await _userManager.IsInRoleAsync(user, classRole.Role))
|
|
{
|
|
await _userManager.AddToRoleAsync(user, classRole.Role);
|
|
|
|
return ApiResponse.Success();
|
|
}
|
|
}
|
|
}
|
|
return ApiResponse.Error();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更新用户信息
|
|
/// </summary>
|
|
/// <param name="model">用户实体对象</param>
|
|
/// <returns>操作结果响应</returns>
|
|
public Task<ApiResponse> UpdateAsync(User model)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 验证用户信息
|
|
/// </summary>
|
|
/// <param name="userId">用户唯一标识符</param>
|
|
/// <returns>验证结果响应</returns>
|
|
public Task<ApiResponse> VerifyUserInformation(Guid userId)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|