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)); } }