Security/Yuebon.Security.Services/UserService.cs
(开头部分) 13KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Yuebon.Commons.Encrypt;
using Yuebon.Commons.Enums;
using Yuebon.Commons.Extend;
using Yuebon.Commons.Helpers;
using Yuebon.Core.UnitOfWork;
namespace Yuebon.Security.Services;
/// <summary>
///
/// </summary>
public class UserService : BaseService<User, UserOutputDto>, IUserService
{
private readonly IUserRepository _userRepository;
private readonly IUserLogOnRepository _userSigninRepository;
private readonly IRoleService _roleService;
private IOrganizeService _organizeService;
private readonly IUnitOfWork _unitOfWork;
/// <summary>
///
/// </summary>
/// <param name="repository"></param>
/// <param name="userLogOnRepository"></param>
/// <param name="roleService"></param>
/// <param name="organizeService"></param>
public UserService(IUnitOfWork unitOfWork,IUserRepository userRepository, IUserLogOnRepository userLogOnRepository, IRoleService roleService, IOrganizeService organizeService)
{
_unitOfWork= unitOfWork;
repository = userRepository;
_userRepository = userRepository;
_userSigninRepository = userLogOnRepository;
_roleService = roleService;
_organizeService = organizeService;
}
/// <summary>
/// 用户登陆验证。
/// </summary>
/// <param name="userName">用户名</param>
/// <param name="password">密码(第一次md5加密后)</param>
/// <returns>验证成功返回用户实体,验证失败返回null|提示消息</returns>
public async Task<Tuple<User,string>> Validate(string userName, string password)
{
var userEntity = await _userRepository.GetUserByLogin(userName);
if (userEntity == null)
{
return new Tuple<User, string>(null, "系统不存在该用户,请重新确认。");
}
if (!userEntity.EnabledMark)
{
return new Tuple<User, string>(null, "该用户已被禁用,请联系管理员。");
}
var userSinginEntity = _userSigninRepository.GetByUserId(userEntity.Id);
后面还有 316 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。