public virtual async Task <PagingResponseMessage <ShopInfoResponse> > SimpleSearch(UserInfo user, ShopSearchCondition condition, CancellationToken cancellationToken = default(CancellationToken)) { PagingResponseMessage <ShopInfoResponse> pagingResponse = new PagingResponseMessage <ShopInfoResponse>(); pagingResponse.Extension = new List <ShopInfoResponse>(); var q = _shopsStore.GetSimpleQuery(); q = q.Where(x => !x.IsDeleted); if (condition != null) { if (condition.BuildingIds != null && condition.BuildingIds.Count > 0) { q = q.Where(s => condition.BuildingIds.Contains(s.BuildingId)); } if (condition.ExamineStatus != null && condition.ExamineStatus.Count > 0) { q = q.Where(s => condition.ExamineStatus.Contains(s.ExamineStatus)); } if (condition.SaleStatus != null && condition.SaleStatus != null) { q = q.Where(s => condition.SaleStatus.Contains(s.ShopBaseInfo.SaleStatus)); } } q = q.OrderBy(x => x.ExamineStatus).ThenByDescending(x => x.CreateTime); pagingResponse.TotalCount = await q.CountAsync(cancellationToken); var result = await q.Skip(condition.PageIndex *condition.PageSize).Take(condition.PageSize).ToListAsync(cancellationToken); string fr = ApplicationCore.ApplicationContext.Current.FileServerRoot; fr = (fr ?? "").TrimEnd('/'); if (result.Count > 0) { for (int i = 0; i < result.Count; i++) { result[i].Icon = string.IsNullOrEmpty(result[i].Icon) ? "" : fr + "/" + result[i].Icon.TrimStart('/'); } pagingResponse.Extension.AddRange(_mapper.Map <List <ShopInfoResponse> >(result)); } return(pagingResponse); }
public async Task <PagingResponseMessage <ShopInfoResponse> > GetShopsList(UserInfo user, [FromBody] ShopSearchCondition condition) { PagingResponseMessage <ShopInfoResponse> response = new PagingResponseMessage <ShopInfoResponse>(); if (!ModelState.IsValid) { response.Code = ResponseCodeDefines.ModelStateInvalid; response.Message = ModelState.GetAllErrors(); Logger.Warn($"用户{user?.UserName ?? ""}({user?.Id ?? ""})获取商铺列表(GetShopsList)模型验证失败:\r\n{response.Message ?? ""},\r\n请求参数为:\r\n" + (condition != null ? JsonHelper.ToJson(condition) : "")); return(response); } try { return(await _shopsManager.SimpleSearch(user, condition)); } catch (Exception e) { response.Code = ResponseCodeDefines.ServiceError; response.Message = e.ToString(); Logger.Error($"用户{user?.UserName ?? ""}({user?.Id ?? ""})获取商铺列表(GetShopsList)请求失败:\r\n{e.ToString()},\r\n请求参数为:\r\n" + (condition != null ? JsonHelper.ToJson(condition) : "")); } return(response); }