Esempio n. 1
0
        public async Task <IActionResult> GetList(AppConfigSearchModel model)
        {
            var result = await _appConfigService.GetByPaging(model);

            return(Json(result));
        }
Esempio n. 2
0
        public async Task <AppConfigListModel> GetByPaging(AppConfigSearchModel request)
        {
            try
            {
                var columnOrder = "name";
                var sortDir     = "ASC";

                if (request != null)
                {
                    var start = request.Start / request.Length + 1;

                    if (request.Columns != null &&
                        request.Columns.Any() &&
                        request.Order != null &&
                        request.Order.Any())
                    {
                        sortDir = request.Order[0]
                                  .Dir;
                        columnOrder = request.Columns[request.Order[0]
                                                      .Column]
                                      .Data;
                    }

                    var url = string.Format(ApiUrl.APP_CONFIG_GET_BY_PAGING,
                                            request.AppConfigName,
                                            request.AppConfigDescription,
                                            start,
                                            request?.Length ?? 10,
                                            columnOrder,
                                            sortDir);

                    var response = await HttpService.Send <PageResult <GetAppConfigPagingResponse> >(url,
                                                                                                     null,
                                                                                                     HttpMethod.Get,
                                                                                                     true);

                    if (response.IsSuccess)
                    {
                        return new AppConfigListModel
                               {
                                   Draw            = request.Draw,
                                   RecordsFiltered = response.Data.TotalCount,
                                   Total           = response.Data.TotalCount,
                                   RecordsTotal    = response.Data.TotalCount,
                                   Data            = response.Data.Data.Select(c => new AppConfigModel
                            {
                                Id              = c.Id,
                                Name            = c.Name,
                                Description     = c.Description,
                                PageSize        = request.PageSize,
                                Value           = c.Value,
                                PageSizeOptions = request.AvailablePageSizes
                            })
                               }
                    }
                    ;

                    throw new PeloException(response.Message);
                }

                throw new PeloException("Request is null");
            }
            catch (Exception exception)
            {
                throw new PeloException(exception.Message);
            }
        }