示例#1
0
        public static SqlQuery ToPagingQuery(this SqlQuery query, SearchSortRequest sort, int page, int take)
        {
            IFluentPaging fp = ionixFactory.CreatePaging();

            fp.Select("*")
            .From("(" + query + ") T")
            .OrderBy(sort.field + " " + (sort.dir == 0 ? "ASC" : "DESC"))
            .Page(page)
            .Take(take);

            SqlQuery temp = fp.ToQuery();

            query.Parameters.ForEach((p) =>
            {
                temp.Parameters.Add(p);
            });

            return(temp);
        }
        public async Task<ActionResult<ListResponse<VehicleTaxDto>>> ListTax(
           [FromBody] SearchSortRequest searchSortRequest)
        {
            Result<VehicleTaxDto[]> res = await _vehicleTaxHandler.ListVehicleTaxSearchSort(
            new BasicSearchSortViewModel(
                searchBy: searchSortRequest.SearchBy,
                sortBy: searchSortRequest.SortBy,
                page: searchSortRequest.Page,
                perPage: searchSortRequest.PerPage));

            if (res.IsSuccess)
            {
                return new ListResponse<VehicleTaxDto>
                {
                    Data = res.Value,
                    TotalRecords = res.Value.Length
                };
            }

            return BadRequest(new { Error = res.Errors.FirstOrDefault() });
        }