Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2365,13 +2365,14 @@ public ResponseEntity<String> exportFilterFromFirstRootNetwork(
}

// temporary - used by grid-explore only to prevent filter conversion from dysfunctioning since it does not have access to root networks yet
@GetMapping(value = "/studies/{studyUuid}/filters/elements")
@PostMapping(value = "/studies/{studyUuid}/filters/elements")
@Operation(summary = "Evaluate filters list on first root network of study to get matched identifiables elements")
@ApiResponses(value = {@ApiResponse(responseCode = "200", description = "The list of matched identifiables elements")})
public ResponseEntity<String> evaluateFiltersOnFirstRootNetwork(
@Parameter(description = "Study uuid") @PathVariable("studyUuid") UUID studyUuid,
@Parameter(description = "Filters uuid to be applied") @RequestParam(name = "filtersUuid") List<UUID> filtersUuid) {
return ResponseEntity.ok().contentType(MediaType.APPLICATION_JSON).body(studyService.evaluateFiltersFromFirstRootNetwork(studyUuid, filtersUuid));
// the body should match FiltersWithEquipmentTypes in filter-server
@RequestBody String body) {
return ResponseEntity.ok().contentType(MediaType.APPLICATION_JSON).body(studyService.evaluateFiltersFromFirstRootNetwork(studyUuid, body));
}

@GetMapping(value = "/studies/{studyUuid}/root-networks/{rootNetworkUuid}/nodes/{nodeUuid}/filters/elements")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,16 +111,19 @@ public String exportFilters(UUID networkUuid, List<UUID> filtersUuid, String var
return restTemplate.getForObject(uriComponent.toUriString(), String.class);
}

public String evaluateFilters(UUID networkUuid, List<UUID> filtersUuid) {
public String evaluateFilters(UUID networkUuid, String body) {
Objects.requireNonNull(networkUuid);
Objects.requireNonNull(filtersUuid);
Objects.requireNonNull(body);
String endPointUrl = getBaseUri() + DELIMITER + FILTER_API_VERSION + FILTER_END_POINT_EVALUATE_IDS;

UriComponentsBuilder uriComponentsBuilder = UriComponentsBuilder.fromHttpUrl(endPointUrl);
uriComponentsBuilder.queryParam("networkUuid", networkUuid);
uriComponentsBuilder.queryParam("ids", filtersUuid);
var uriComponent = uriComponentsBuilder.buildAndExpand();

return restTemplate.getForObject(uriComponent.toUriString(), String.class);
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> request = new HttpEntity<>(body, headers);

return restTemplate.postForObject(uriComponent.toUriString(), request, String.class);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3376,9 +3376,9 @@ public String exportFilterFromFirstRootNetwork(UUID studyUuid, UUID filterUuid)
}

@Transactional(readOnly = true)
public String evaluateFiltersFromFirstRootNetwork(UUID studyUuid, List<UUID> filtersUuid) {
public String evaluateFiltersFromFirstRootNetwork(UUID studyUuid, String body) {
StudyEntity studyEntity = studyRepository.findById(studyUuid).orElseThrow(() -> new StudyException(STUDY_NOT_FOUND));
return filterService.evaluateFilters(studyEntity.getFirstRootNetwork().getNetworkUuid(), filtersUuid);
return filterService.evaluateFilters(studyEntity.getFirstRootNetwork().getNetworkUuid(), body);
}

public String exportFilters(UUID rootNetworkUuid, List<UUID> filtersUuid, UUID nodeUuid, boolean inUpstreamBuiltParentNode) {
Expand Down
Loading