public GetSearchRsp GetSearch(GetSearchReq req)
        {
            if (req.PageIndex == 0)
            {
                req.PageIndex = 1;
            }
            var query = Context.Task.Where(x => x.Title.Contains(req.QueryTitle ?? ""));

            foreach (var sort in req.Sorts)
            {
                if (sort.SortOrder == "descend")
                {
                    query = query.OrderBy(sort.SortField + " DESC");
                }
                else
                {
                    query = query.OrderBy(sort.SortField);
                }
            }

            var result = new GetSearchRsp()
            {
                Data  = QueryToDto(query.Skip(--req.PageIndex * req.PageSize).Take(req.PageSize)).ToList(),
                Total = query.Count(),
            };

            return(result);
        }
Exemple #2
0
        private async Task OnQuery(int pageIndex, int pageSize, List <SortFieldName> sort)
        {
            isLoading = true;
            var req = new GetSearchReq()
            {
                QueryTitle = queryTitle,
                PageIndex  = pageIndex,
                PageSize   = pageSize,
                Sorts      = sort,
            };
            var httpRsp = await Http.PostAsJsonAsync <GetSearchReq>($"api/Task/GetSearch", req);

            var result = await httpRsp.Content.ReadFromJsonAsync <GetSearchRsp>();

            datas = result.Data;
            total = result.Total;

            isLoading = false;
        }