123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- using QM.AuthServer.IRepository;
- using QM.AuthServer.Models.Users;
- using QM.OrmSqlSugar;
- using System.Threading.Tasks;
- using WS;
- using WS.Image;
- using WS.Orm;
- using WS.Security;
- namespace QM.AuthServer.Repository
- {
- public class AuthorizationRepository : SqlSugarRepository<SysUser>, IAuthorizationRepository
- {
- /// <summary>
- /// 验证码
- /// </summary>
- /// <returns></returns>
- public CaptchaInfo VerifyCode()
- {
- var info = CaptchaCode.DrawNumberImage(4);
- return info;
- }
- /// <summary>
- /// 登录
- /// </summary>
- /// <param name="parm"></param>
- /// <returns></returns>
- public SysUser Login(LoginDto parm)
- {
- if (string.IsNullOrWhiteSpace(parm.Id))
- throw new UseArgumentException("用户名不能为空");
- if (string.IsNullOrWhiteSpace(parm.Pwd))
- throw new UseArgumentException("登录密码不能为空");
- if(parm.Pwd.Length != 32)
- parm.Pwd = Md5Crypt.Encrypt(parm.Pwd);
- SysUser user = null;
- if (parm.Id == SysInfo.SYS_USER) {
- if (parm.Pwd == SysInfo.SYS_PASSWORD) {
- user = new SysUser()
- {
- uid = SysInfo.SYS_USER,
- name = "系统内置账户"
- };
- }
- }
- else
- {
- user = Get(t => t.uid.ToUpper() == parm.Id.ToUpper() && t.pwd == parm.Pwd && t.is_delete == EnumDelete.Normal);
- }
- if (user == null)
- throw new UseMassageException("户名或密码错误,请重新输入");
- if (user.state == EnumState.Disable)
- throw new UseMassageException("当前用户已禁用,请联系管理员");
- return user;
- }
- /// <summary>
- /// 登录
- /// </summary>
- /// <param name="parm"></param>
- /// <returns></returns>
- public Task<SysUser> LoginAsync(LoginDto parm)
- {
- return Task.FromResult(Login(parm));
- }
- }
- }
|