mirror of
https://github.com/hapifhir/hapi-fhir.git
synced 2025-02-16 18:05:19 +00:00
spoltess
This commit is contained in:
parent
d61d5bc70d
commit
141538eca9
@ -473,9 +473,9 @@ public class HapiFhirJpaMigrationTasks extends BaseMigrationTasks<VersionEnum> {
|
||||
* Adding new column to ResourceLink
|
||||
*/
|
||||
version.onTable("HFJ_RES_LINK")
|
||||
.addColumn("20240710.1", "TARGET_RESOURCE_URL_VERSION")
|
||||
.nullable()
|
||||
.type(ColumnTypeEnum.STRING, 50);
|
||||
.addColumn("20240710.1", "TARGET_RESOURCE_URL_VERSION")
|
||||
.nullable()
|
||||
.type(ColumnTypeEnum.STRING, 50);
|
||||
}
|
||||
|
||||
protected void init720() {
|
||||
|
@ -331,21 +331,22 @@ public class ResourceLinkPredicateBuilder extends BaseJoiningPredicateBuilder im
|
||||
|
||||
Condition targetUrlsCondition = null;
|
||||
if (!theTargetQualifiedUrls.isEmpty()) {
|
||||
//TODO - these urls may have versions
|
||||
// TODO - these urls may have versions
|
||||
AtomicBoolean hasVersions = new AtomicBoolean();
|
||||
List<UrlUtil.UrlAndVersion> urlAndVersions = theTargetQualifiedUrls.stream()
|
||||
.map((url) -> {
|
||||
UrlUtil.UrlAndVersion urlAndVersion = UrlUtil.parseUrlWithVersion(url);
|
||||
if (isNotBlank(urlAndVersion.Version)) {
|
||||
hasVersions.set(true);
|
||||
}
|
||||
return urlAndVersion;
|
||||
}).collect(Collectors.toList());
|
||||
.map((url) -> {
|
||||
UrlUtil.UrlAndVersion urlAndVersion = UrlUtil.parseUrlWithVersion(url);
|
||||
if (isNotBlank(urlAndVersion.Version)) {
|
||||
hasVersions.set(true);
|
||||
}
|
||||
return urlAndVersion;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
|
||||
if (!hasVersions.get()) {
|
||||
List<String> placeholders = generatePlaceholders(theTargetQualifiedUrls);
|
||||
targetUrlsCondition =
|
||||
QueryParameterUtils.toEqualToOrInPredicate(myColumnTargetResourceUrl, placeholders, theInverse);
|
||||
QueryParameterUtils.toEqualToOrInPredicate(myColumnTargetResourceUrl, placeholders, theInverse);
|
||||
} else {
|
||||
// there may be some versions or not on these values
|
||||
List<Condition> conditions = new ArrayList<>();
|
||||
@ -360,9 +361,7 @@ public class ResourceLinkPredicateBuilder extends BaseJoiningPredicateBuilder im
|
||||
} else {
|
||||
versionCondition = BinaryCondition.EMPTY;
|
||||
}
|
||||
conditions.add(
|
||||
QueryParameterUtils.toAndPredicate(urlCondition, versionCondition)
|
||||
);
|
||||
conditions.add(QueryParameterUtils.toAndPredicate(urlCondition, versionCondition));
|
||||
}
|
||||
// or is the default for multiple query params
|
||||
targetUrlsCondition = QueryParameterUtils.toOrPredicate(conditions);
|
||||
|
@ -80,9 +80,6 @@ import org.hl7.fhir.instance.model.api.IPrimitiveType;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
|
||||
import javax.measure.quantity.Quantity;
|
||||
import javax.measure.unit.NonSI;
|
||||
import javax.measure.unit.Unit;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@ -96,6 +93,9 @@ import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.measure.quantity.Quantity;
|
||||
import javax.measure.unit.NonSI;
|
||||
import javax.measure.unit.Unit;
|
||||
|
||||
import static ca.uhn.fhir.rest.api.RestSearchParameterTypeEnum.DATE;
|
||||
import static ca.uhn.fhir.rest.api.RestSearchParameterTypeEnum.REFERENCE;
|
||||
|
Loading…
x
Reference in New Issue
Block a user