| | |
| | | using WMS.Entity.BllTaskEntity; |
| | | using WMS.DAL; |
| | | using Utility; |
| | | using System.Text.RegularExpressions; |
| | | |
| | | namespace WMS.BLL.SysServer |
| | | { |
| | |
| | | /// <returns></returns> |
| | | public async Task<List<UserInfoDto>> GetUserRoleList(string UserName, string DepartmentNo, string RoleNo, string Status) |
| | | { |
| | | var modUser = await Db.Queryable<SysUserInfor>().FirstAsync(s => s.Id == _userManager.UserId); |
| | | return await Db.Queryable<SysUserInfor>() |
| | | .LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id) |
| | | .LeftJoin<SysDepartment>((a, b, c) => a.DepartmentNo == c.DepartmentNo) |
| | |
| | | .WhereIF(!string.IsNullOrEmpty(DepartmentNo), a => a.DepartmentNo == DepartmentNo) |
| | | .WhereIF(!string.IsNullOrEmpty(RoleNo), a => a.RoleNo == RoleNo) |
| | | .WhereIF(!string.IsNullOrEmpty(Status), a => a.Status == Status) |
| | | .WhereIF(modUser.UserName.ToUpper() != "ADMIN", a => a.CreateUser == _userManager.UserId) |
| | | .Where(a => a.IsDel == "0") |
| | | .Select<UserInfoDto>((a, b, c, d) => new UserInfoDto() |
| | | { |
| | |
| | | /// <param name="userId">用户id</param> |
| | | /// <returns></returns> |
| | | /// <exception cref="Exception">捕获异常</exception> |
| | | public async Task<int> UptUserPassWord(string pwdNew, int userId) |
| | | public async Task<int> UptUserPassWord(string pwdNew,string pwdNewTwo, int userId) |
| | | { |
| | | var funSet = Db.Queryable<SysFunSetting>().Where(m => m.IsDel == "0" && m.FunSetName == "密码规则" && m.IsEnable == "NO").ToList().FirstOrDefault(); |
| | | if (funSet != null) |
| | | { |
| | | bool t = false; |
| | | switch (funSet.FunSetNo) |
| | | { |
| | | case "Fun052": //数字,字母,符号 |
| | | t = Regex.IsMatch(pwdNewTwo, @"^(?:(?=.*[0-9].*)(?=.*[A-Za-z].*)(?=.*[^0-9A-Za-z].*)).{3,}"); |
| | | break; |
| | | case "Fun053": //字母,数字 |
| | | t = Regex.IsMatch(pwdNewTwo, @"^(?:(?=.*[0-9].*)(?=.*[A-Za-z].*)).{2,}"); |
| | | break; |
| | | case "Fun051": //数字,字母,符号,长度 |
| | | t = Regex.IsMatch(pwdNewTwo, @"^(?=.*[0-9])(?=.*[a-zA-Z])(?=([\x21-\x7e]+)[^a-zA-Z0-9]).{8,30}"); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | if (!t) |
| | | { |
| | | throw Oops.Bah("输入密码不符合密码规则"); |
| | | } |
| | | } |
| | | return await Db.Updateable<SysUserInfor>() |
| | | .Where(s => s.Id == userId) |
| | | .SetColumns(s => s.UpdateTime == DateTime.Now) |
| | | .SetColumns(s => s.UpdateUser == _userManager.UserId) |
| | | .SetColumns(s=>s.PassWord == pwdNew) |
| | | .SetColumns(s => s.SetPasswordTime == DateTime.Now) |
| | | .ExecuteCommandAsync(); |
| | | .Where(s => s.Id == userId) |
| | | .SetColumns(s => s.UpdateTime == DateTime.Now) |
| | | .SetColumns(s => s.UpdateUser == _userManager.UserId) |
| | | .SetColumns(s => s.PassWord == pwdNew) |
| | | .SetColumns(s => s.SetPasswordTime == DateTime.Now) |
| | | .ExecuteCommandAsync(); |
| | | |
| | | } |
| | | /// <summary> |
| | | /// x天后提醒用户修改密码 |