public JsonResult StateManage(SearchExpertListInput input) { //检查访问权限 CheckPermission(); using (var result = new ResponseResult <List <SearchUserListWithStateOutput> >()) { long totalCount; var userList = _userService.GetAll <DateTime>(input, null, m => m.CreateTime, input.PageIndex, input.PageSize, out totalCount); var dicArea = new Dictionary <string, string>(); //提取地区编号 ExtractAreaIdListFromAddress(userList, dicArea); var areaIdArray = dicArea.Keys.ToArray(); //获取地区信息 var areaList = _areaRepository.GetAll(m => areaIdArray.Contains(m.AID)) .Select(m => { dicArea[m.AID] = m.DisplayName; return(m); }).Count(); var userIdArray = userList.Select(m => m.Id).ToArray(); result.Entity = Mapper.Map <List <SearchUserListWithStateOutput> >(userList); foreach (var user in result.Entity) { if (!string.IsNullOrEmpty(user.Province) && dicArea.ContainsKey(user.Province)) { user.Province = dicArea[user.Province]; } if (!string.IsNullOrEmpty(user.City) && dicArea.ContainsKey(user.City)) { user.City = dicArea[user.City]; } if (!string.IsNullOrEmpty(user.Region) && dicArea.ContainsKey(user.Region)) { user.Region = dicArea[user.Region]; } if (!string.IsNullOrEmpty(user.Township) && dicArea.ContainsKey(user.Township)) { user.Township = dicArea[user.Township]; } if (!string.IsNullOrEmpty(user.Village) && dicArea.ContainsKey(user.Village)) { user.Village = dicArea[user.Village]; } } SetJosnResult <List <SearchUserListWithStateOutput> >(result, input.PageIndex, input.PageSize, totalCount, "获取用户列表成功(带锁定状态)"); return(new JsonResultEx(result)); } }
public ActionResult StateManage(SearchExpertListInput input) { CheckPermission(GetLoginInfo().User.Id, CurrentUrl); if (input.PageIndex == 0) { input.PageIndex = 1; } if (input.PageSize == 0) { input.PageSize = 10; } var parameters = ModelHelper.GetPropertyDictionary <SearchExpertListInput>(input); var result = PostStandardWithSameControllerAction <List <SearchUserListWithStateOutput> >(this, parameters); var model = new MultiModel <List <SearchUserListWithStateOutput> >(result.IsSuccess, input.PageIndex, input.PageSize, (int)result.TotalNums, result.Entity); return(View(model)); }
public IEnumerable <T_USER> GetAll <TKey>(SearchExpertListInput input, Func <T_USER, TKey> orderBy, Func <T_USER, TKey> orderByDecending, int pageIndex, int pageSize, out long totalCount) { using (var ctx = GetDbContextInstance()) { IQueryable <T_USER> query; if (input.RoleId > 0) { query = from user in ctx.Set <T_USER>() join roleRelation in ctx.Set <T_USER_ROLE_RELATION>() on user.Id equals roleRelation.UserID where roleRelation.RoleID == input.RoleId select user; } else { query = ctx.Set <T_USER>(); } //手机号过滤 if (input.PhoneNumber != null) { query = query.Where(m => m.PhoneNumber == input.PhoneNumber); } //省份过滤 if (input.Province != 0) { var strProvince = input.Province.ToString(); query = query.Where(m => m.Province == strProvince); } //城市过滤 if (input.City != 0) { var strCity = input.City.ToString(); query = query.Where(m => m.City == strCity); } //区县过滤 if (input.Region != 0) { var strRegion = input.Region.ToString(); query = query.Where(m => m.Region == strRegion); } //注册时间过滤 if (!string.IsNullOrEmpty(input.StartTime) && !string.IsNullOrEmpty(input.EndTime)) { var startTime = DateTime.Parse(input.StartTime); var endTime = DateTime.Parse(input.EndTime); query = query.Where(m => m.CreateTime >= startTime && m.CreateTime <= endTime); } else { if (!string.IsNullOrEmpty(input.StartTime)) { var startTime = DateTime.Parse(input.StartTime); query = query.Where(m => m.CreateTime >= startTime); } else if (!string.IsNullOrEmpty(input.EndTime)) { var endTime = DateTime.Parse(input.EndTime); query = query.Where(m => m.CreateTime <= endTime); } } totalCount = query.Count(); //排序 if (orderBy != null) { return(query.OrderBy(orderBy).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList()); } return(query.OrderByDescending(orderByDecending).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList()); } }