public static bool IsAdmin(string username) { using (IUnitOfWork unitOfWork = new TskDataDataContext(DbUtil.ConnectionString)) { IUserRep userRep = new UserRep(unitOfWork); return(userRep.Find(username).Role == "admin" ? true : false); } }
/// <summary> /// /// </summary> /// <param name="pageNumber"></param> /// <param name="rowsPrePage"></param> /// <param name="filter"></param> /// <returns></returns> public async Task <PageResult <UserSunpleDto> > GetPageAsync(int pageNumber, int rowsPrePage, UserOption filter) { List <UserSunpleDto> data = new List <UserSunpleDto>(); PageResult <UserSunpleDto> list = new PageResult <UserSunpleDto>(); string orderby = " id desc"; var predicate = PredicateBuilder.True <User>(); predicate = predicate.And(o => o.DeleteMark == null); if (!string.IsNullOrWhiteSpace(filter.Account)) { predicate = predicate.And(o => o.Account == filter.Account); } if (!string.IsNullOrWhiteSpace(filter.RealName)) { predicate = predicate.And(o => o.RealName == filter.RealName); } var tlist = await UserRep.Find(pageNumber, rowsPrePage, orderby, predicate).ToListAsync() ?? new List <User>(); data = MapperHelper.MapList <User, UserSunpleDto>(tlist); List <long> roleIds = tlist.Select(o => o.RoleId).Distinct().ToList(); if (roleIds.Count() > 0) { var roles = await RoleRep.Find(o => roleIds.Contains(o.Id)).ToListAsync(); foreach (var d in data) { var r = roles.FirstOrDefault(o => o.Id == d.RoleId); d.RoleName = r?.Name; } } List <long?> DepartmentIds = tlist.Select(o => o.DepartmentId).Distinct().ToList(); DepartmentIds.Remove(null); if (DepartmentIds.Count() > 0) { var Departments = await DepartmentRep.Find(o => DepartmentIds.Contains(o.Id)).ToListAsync(); foreach (var d in data) { var r = Departments.FirstOrDefault(o => o.Id == d.DepartmentId); d.deptname = r?.Name; } } list.Data = data.ToList(); int total = await UserRep.GetCountAsync(predicate); list.ItemCount = total; return(list); }
/// <summary> /// 根据账号模糊查询获取列表 /// </summary> /// <param name="q"></param> /// <returns></returns> public async Task <List <IdAccountDto> > SelectDataAsync(string q) { if (string.IsNullOrWhiteSpace(q)) { return(new List <IdAccountDto>()); } var result = UserRep.Find(o => o.Account.Contains(q.Trim())); if (result == null || result.Count() == 0) { return(new List <IdAccountDto>()); } return(result.Select(o => new IdAccountDto() { Id = o.Id, Account = o.Account }).ToList()); }
public bool ValidateUser(string username, string password = null) { using (IUnitOfWork unitOfWork = new TskDataDataContext(DbUtil.ConnectionString)) { IUserRep userRep = new UserRep(unitOfWork); User user = userRep.Find(username, password); if (user == null) { return(false); } else { user.LastLoginTime = DateTime.Now; unitOfWork.Submit(); return(true); } } }
public bool ChangePassword(string username, string oldPassword, string newPassword) { using (IUnitOfWork unitOfWork = new TskDataDataContext(DbUtil.ConnectionString)) { IUserRep userRep = new UserRep(unitOfWork); User user = userRep.Find(username, oldPassword); if (user != null) { user.Password = newPassword; unitOfWork.Submit(); return(true); } else { return(false); } } }
public void CreateUser(string username, string password, string role, string email, out MembershipCreateStatus status) { status = MembershipCreateStatus.Success; using (IUnitOfWork unitOfWork = new TskDataDataContext(DbUtil.ConnectionString)) { IUserRep userRep = new UserRep(unitOfWork); if (userRep.Find(username) != null) { status = MembershipCreateStatus.DuplicateUserName; } else { userRep.Create(new User() { Name = username, Password = password, Role = role, Email = email }); } unitOfWork.Submit(); } }