public IActionResult GetTab( [FromRoute, Required] string device, [FromRoute, Required] string tab, [FromQuery] PaginationRequestDto paginationDto, [FromQuery] SortRequestDto sortDto, [FromQuery] AdvancedFilterRequestDto filterRequestDto) { try { var deviceId = new DeviceId(device); var filter = AdvancedFilterRequestDto.ParseFilterRequest(filterRequestDto); var pagination = PaginationRequestDto.MapPaginationRequest(paginationDto); var sort = SortRequestDto.MapSortRequest(sortDto); var tabEntries = _DataModel.GetTab(deviceId, tab, pagination, sort, filter); return(Json(tabEntries)); } catch (UnknownDeviceIdException e) { Logger.LogError("Exception while execution:", e); return(FormattedNotFound($"Device id not found.")); } catch (UnknownKeyException e) { Logger.LogError("Exception while execution:", e); return(FormattedNotFound($"Key not found.")); } catch (Exception e) { Logger.LogError("Exception while execution:", e); return(FormattedInternalServerError($"{nameof(e)} {e.Message}")); } }
public void BuildQuery(NameValueCollection query, AdvancedFilterRequestDto filterRequest) { if (filterRequest == null) { return; } for (var i = 0; i < filterRequest.FilterBy.Length; i++) { query[$"FilterBy[{i}]"] = filterRequest.FilterBy[i]; query[$"FilterExcluding[{i}]"] = filterRequest.FilterExcluding[i].ToString(); query[$"FilterString[{i}]"] = filterRequest.FilterString[i]; } }
public async Task <ApiResponse <IEnumerable <TabEntryDto> > > GetDataTab(DeviceId device, string tab, PaginationRequestDto paginationDto = null, SortRequestDto sortDto = null, AdvancedFilterRequestDto filterRequestDto = null) { var query = HttpUtility.ParseQueryString(""); BuildQuery(query, paginationDto); BuildQuery(query, sortDto); BuildQuery(query, filterRequestDto); var uri = $"/api/data/tab/{device.FullId}/{tab}?{query.ToString()}"; return(await GetAllAsync <TabEntryDto>(uri)); }
public IActionResult GetAllJobs( [FromQuery] SortRequestDto sortDto, [FromQuery] AdvancedFilterRequestDto filterRequestDto) { try { var filter = AdvancedFilterRequestDto.ParseFilterRequest(filterRequestDto); var sort = SortRequestDto.MapSortRequest(sortDto); var jobEntries = _jobModel.GetAllJobs(sort, filter); return(Json(jobEntries)); } catch (Exception e) { return(ResolveException(e)); } }
public IActionResult GetJobs( [FromRoute, Required] string device, [FromQuery, Optional] PaginationRequestDto paginationDto, [FromQuery, Optional] SortRequestDto sortDto, [FromQuery, Optional] AdvancedFilterRequestDto filterRequestDto) { try { var deviceId = new DeviceId(device); var filter = AdvancedFilterRequestDto.ParseFilterRequest(filterRequestDto); var pagination = PaginationRequestDto.MapPaginationRequest(paginationDto); var sort = SortRequestDto.MapSortRequest(sortDto); var jobEntries = _jobModel.GetJobs(deviceId, pagination, sort, filter); return(Json(jobEntries)); } catch (Exception e) { return(ResolveException(e)); } }