예제 #1
0
        public virtual async Task <CompanyASearchResponse <CompanyAInfoResponse> > Search(UserInfo user, CompanyASearchCondition condition, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (condition == null)
            {
                throw new ArgumentNullException(nameof(condition));
            }
            var pagingResponse = new CompanyASearchResponse <CompanyAInfoResponse>();
            var query          = Store.CompanyAInfoAll().Where(a => !a.IsDelete);

            query = SearchConditionFiltration(condition, query);

            pagingResponse.TotalCount = await query.CountAsync(cancellationToken);

            //需要加上排序
            var qlist = await query.Skip(condition.pageIndex *condition.pageSize).Take(condition.pageSize).ToListAsync(cancellationToken);


            pagingResponse.PageIndex = condition.pageIndex;
            pagingResponse.PageSize  = condition.pageSize;
            pagingResponse.Extension = _mapper.Map <List <CompanyAInfoResponse> >(qlist);
            return(pagingResponse);
        }
예제 #2
0
        public async Task <CompanyASearchResponse <CompanyAInfoResponse> > Search(UserInfo user, [FromBody] CompanyASearchCondition condition)
        {
            Logger.Trace($"用户{user?.UserName ?? ""}({user?.Id ?? ""})查询条件(Search):\r\n请求参数为:\r\n" + (condition != null ? JsonHelper.ToJson(condition) : ""));

            var pagingResponse = new CompanyASearchResponse <CompanyAInfoResponse>();

            if (!ModelState.IsValid)
            {
                pagingResponse.Code = ResponseCodeDefines.ModelStateInvalid;
                Logger.Warn($"用户{user?.UserName ?? ""}({user?.Id ?? ""})查询条件(Search)模型验证失败:\r\n{pagingResponse.Message ?? ""},\r\n请求参数为:\r\n" + (condition != null ? JsonHelper.ToJson(condition) : ""));
                return(pagingResponse);
            }
            try
            {
                pagingResponse = await _extraDataInfoManager.Search(user, condition, HttpContext.RequestAborted);
            }
            catch (Exception e)
            {
                pagingResponse.Code    = ResponseCodeDefines.ServiceError;
                pagingResponse.Message = "服务器错误:" + e.ToString();
                Logger.Error($"用户{user?.UserName ?? ""}({user?.Id ?? ""})查询条件(Search)请求失败:\r\n{pagingResponse.Message ?? ""},\r\n请求参数为:\r\n" + (condition != null ? JsonHelper.ToJson(condition) : ""));
            }
            return(pagingResponse);
        }