Skip to content

Commit b7f2f6c

Browse files
author
Tom Jones
committed
EES-5373: Change boundary route parameter to query parameter, remove "undefined" from type definition.
1 parent 2c33d5f commit b7f2f6c

File tree

14 files changed

+21
-31
lines changed

14 files changed

+21
-31
lines changed

src/GovUk.Education.ExploreEducationStatistics.Admin/Controllers/Api/Statistics/TableBuilderController.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,13 @@ public TableBuilderController(
3838
_dataBlockService = dataBlockService;
3939
}
4040

41-
[HttpPost("data/tablebuilder/release/{releaseVersionId:guid}/{boundaryLevelId:long?}")]
41+
[HttpPost("data/tablebuilder/release/{releaseVersionId:guid}")]
4242
[Produces("application/json", "text/csv")]
4343
[CancellationTokenTimeout(TableBuilderQuery)]
4444
public async Task<ActionResult> Query(
4545
Guid releaseVersionId,
4646
[FromBody] FullTableQueryRequest request,
47-
long? boundaryLevelId,
47+
[FromQuery] long? boundaryLevelId,
4848
CancellationToken cancellationToken = default)
4949
{
5050
if (Request.AcceptsCsv(exact: true))
@@ -67,11 +67,11 @@ public async Task<ActionResult> Query(
6767
.HandleFailuresOr(Ok);
6868
}
6969

70-
[HttpGet("data/tablebuilder/release/{releaseVersionId:guid}/data-block/{dataBlockParentId:guid}/{boundaryLevelId:long?}")]
70+
[HttpGet("data/tablebuilder/release/{releaseVersionId:guid}/data-block/{dataBlockParentId:guid}")]
7171
public async Task<ActionResult<TableBuilderResultViewModel>> QueryForDataBlock(
7272
Guid releaseVersionId,
7373
Guid dataBlockParentId,
74-
long? boundaryLevelId,
74+
[FromQuery] long? boundaryLevelId,
7575
CancellationToken cancellationToken = default)
7676
{
7777
return await _dataBlockService

src/GovUk.Education.ExploreEducationStatistics.Common/Requests/QueryRequests.cs

-4
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,6 @@ public record FullTableQueryRequest
1818

1919
public IEnumerable<Guid> Indicators { get; set; } = new List<Guid>();
2020

21-
// BoundaryLevel is used by DataBlockUpdateRequest, and TableBuilderController#Query with Map Charts
22-
// Also see EES-3328 and EES-3319
23-
public long? BoundaryLevel { get; set; }
24-
2521
public FullTableQuery AsFullTableQuery()
2622
{
2723
return new FullTableQuery

src/GovUk.Education.ExploreEducationStatistics.Data.Api/Controllers/TableBuilderController.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -94,18 +94,18 @@ public async Task<ActionResult> Query(
9494
}
9595

9696
return await _tableBuilderService
97-
.Query(releaseVersionId, request.AsFullTableQuery(), request.BoundaryLevel, cancellationToken)
97+
.Query(releaseVersionId, request.AsFullTableQuery(), boundaryLevelId: null, cancellationToken)
9898
.HandleFailuresOr(Ok);
9999
}
100100

101101
// Note that releaseVersionId is not necessary for this method to function any more in the Data API, but remains in place
102102
// both in order to support legacy URLs in bookmarks and in content, but also to remain consistent with the equivalent
103103
// endpoint in the Admin API, which does require the Release Id in order to differentiate between different
104104
// DataBlockVersions rather than simply picking the latest published one.
105-
[HttpGet("tablebuilder/release/{releaseVersionId:guid}/data-block/{dataBlockParentId:guid}/{boundaryLevelId:long?}")]
105+
[HttpGet("tablebuilder/release/{releaseVersionId:guid}/data-block/{dataBlockParentId:guid}")]
106106
public async Task<ActionResult<TableBuilderResultViewModel>> QueryForTableBuilderResult(
107107
Guid dataBlockParentId,
108-
long? boundaryLevelId)
108+
[FromQuery] long? boundaryLevelId)
109109
{
110110
var actionResult = await GetLatestPublishedDataBlockVersion(dataBlockParentId)
111111
.OnSuccessDo(dataBlockVersion => this

src/GovUk.Education.ExploreEducationStatistics.Data.Services.Tests/SubjectResultMetaServiceTests.cs

+5-5
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ public async Task GetSubjectMeta_SubjectNotFound()
9898
var result = await service.GetSubjectMeta(
9999
releaseVersionId: Guid.NewGuid(),
100100
query,
101-
null,
101+
boundaryLevelId: null,
102102
new List<Observation>());
103103

104104
result.AssertNotFound();
@@ -200,7 +200,7 @@ public async Task GetSubjectMeta_EmptyModelReturnedForSubject()
200200
var result = await service.GetSubjectMeta(
201201
releaseVersion.Id,
202202
query,
203-
null,
203+
boundaryLevelId: null,
204204
observations);
205205

206206
VerifyAllMocks(
@@ -379,7 +379,7 @@ public async Task GetSubjectMeta_BoundaryLevelViewModelsReturnedForSubject()
379379
var result = await service.GetSubjectMeta(
380380
releaseVersion.Id,
381381
query,
382-
null,
382+
boundaryLevelId: null,
383383
observations);
384384

385385
VerifyAllMocks(
@@ -603,7 +603,7 @@ public async Task GetSubjectMeta_LocationViewModelsReturnedForSubject()
603603
var result = await service.GetSubjectMeta(
604604
releaseVersion.Id,
605605
query,
606-
null,
606+
boundaryLevelId: null,
607607
observations);
608608

609609
VerifyAllMocks(
@@ -862,7 +862,7 @@ public async Task GetSubjectMeta_LocationViewModelsReturnedForSubject_SpecificBo
862862
var result = await service.GetSubjectMeta(
863863
releaseVersion.Id,
864864
query,
865-
123,
865+
boundaryLevelId: 123,
866866
observations);
867867

868868
VerifyAllMocks(

src/GovUk.Education.ExploreEducationStatistics.Data.Services.Tests/TableBuilderServicePermissionTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ await PolicyCheckBuilder<DataSecurityPolicies>()
102102
{
103103
SubjectId = _subject.Id
104104
},
105-
null
105+
boundaryLevelId: null
106106
);
107107
}
108108
);

src/explore-education-statistics-admin/src/pages/release/content/components/ReleasePreviewTableTool.tsx

-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ const ReleasePreviewTableTool = ({
4848
...query,
4949
},
5050
releaseId,
51-
query.boundaryLevel,
5251
),
5352
]);
5453

src/explore-education-statistics-admin/src/pages/release/datablocks/__tests__/ReleaseDataBlockEditPage.test.tsx

-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,6 @@ describe('ReleaseDataBlockEditPage', () => {
119119
dataSets: [],
120120
},
121121
},
122-
boundaryLevel: undefined,
123122
legend: {
124123
position: 'top',
125124
items: [],

src/explore-education-statistics-admin/src/pages/release/datablocks/components/chart/ChartBuilderTabSection.tsx

-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,6 @@ const ChartBuilderTabSection = ({
101101
const tableData = await tableBuilderService.getTableData(
102102
nextQuery,
103103
releaseId,
104-
nextQuery.boundaryLevel,
105104
);
106105

107106
onTableUpdate({

src/explore-education-statistics-admin/src/pages/release/datablocks/components/chart/reducers/__tests__/chartBuilderReducer.test.ts

-1
Original file line numberDiff line numberDiff line change
@@ -604,7 +604,6 @@ describe('chartBuilderReducer', () => {
604604
},
605605
},
606606
},
607-
boundaryLevel: undefined,
608607
type: 'line',
609608
height: 300,
610609
title: 'Table title',

src/explore-education-statistics-admin/src/pages/release/pre-release/PreReleaseTableToolPage.tsx

-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ const PreReleaseTableToolPage = ({
5555
...query,
5656
},
5757
releaseId,
58-
query.boundaryLevel,
5958
),
6059
]);
6160

src/explore-education-statistics-common/src/modules/charts/components/__tests__/__data__/testChartData.ts

-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,6 @@ export const testChartConfiguration: Chart = {
8787
tickConfig: 'default',
8888
},
8989
},
90-
boundaryLevel: undefined,
9190
type: 'line',
9291
title: 'Aggregated results chart',
9392
alt: 'Some alt text',

src/explore-education-statistics-common/src/modules/find-statistics/hooks/useTableQuery.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import tableBuilderService from '@common/services/tableBuilderService';
66
export default function useTableQuery(
77
releaseId: string,
88
dataBlockParentId: string,
9-
boundaryLevelId?: number | undefined,
9+
boundaryLevelId?: number,
1010
): AsyncRetryState<FullTable> {
1111
return useAsyncRetry(async () => {
1212
const response = await tableBuilderService.getDataBlockTableData(

src/explore-education-statistics-common/src/services/tableBuilderService.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -244,11 +244,11 @@ const tableBuilderService = {
244244
async getTableData(
245245
query: FullTableQuery,
246246
releaseId?: string,
247-
boundaryLevelId?: number | undefined,
247+
boundaryLevelId?: number,
248248
): Promise<TableDataResponse> {
249249
if (releaseId && boundaryLevelId) {
250250
return dataApi.post(
251-
`/tablebuilder/release/${releaseId}/${boundaryLevelId}`,
251+
`/tablebuilder/release/${releaseId}?boundaryLevelId=${boundaryLevelId}`,
252252
query,
253253
);
254254
}
@@ -279,11 +279,11 @@ const tableBuilderService = {
279279
): Promise<TableDataResponse> {
280280
return boundaryLevelId
281281
? dataApi.get(
282-
`/tablebuilder/release/${releaseId}/data-block/${dataBlockParentId}/${boundaryLevelId}`,
283-
)
282+
`/tablebuilder/release/${releaseId}/data-block/${dataBlockParentId}?boundaryLevelId=${boundaryLevelId}`,
283+
)
284284
: dataApi.get(
285-
`/tablebuilder/release/${releaseId}/data-block/${dataBlockParentId}`,
286-
);
285+
`/tablebuilder/release/${releaseId}/data-block/${dataBlockParentId}`,
286+
);
287287
},
288288
getFastTrackTableAndReleaseMeta(
289289
dataBlockParentId: string,

src/explore-education-statistics-common/src/services/types/blocks.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ type ChartAxesConfiguration = {
2525
*/
2626
export type Chart = OmitStrict<ChartRendererProps, 'data' | 'meta' | 'axes'> & {
2727
axes: ChartAxesConfiguration;
28-
boundaryLevel: number | undefined;
28+
boundaryLevel?: number;
2929
};
3030

3131
export interface Table {

0 commit comments

Comments
 (0)