Fix issue when updating researchers from DMP
This commit is contained in:
parent
e94944abb1
commit
885f897adc
|
@ -24,11 +24,11 @@ public class ResearcherDaoImpl extends DatabaseAccess<Researcher> implements Res
|
||||||
public QueryableList<Researcher> getWithCriteria(ResearcherCriteria criteria) {
|
public QueryableList<Researcher> getWithCriteria(ResearcherCriteria criteria) {
|
||||||
QueryableList<Researcher> query = asQueryable();
|
QueryableList<Researcher> query = asQueryable();
|
||||||
if (criteria.getLike() != null && !criteria.getLike().isEmpty())
|
if (criteria.getLike() != null && !criteria.getLike().isEmpty())
|
||||||
query.where((builder, root) ->builder.or(builder.like(builder.upper(root.get("reference")), "%" + criteria.getLike().toUpperCase() + "%")));
|
query.where((builder, root) ->builder.or(builder.like(builder.lower(root.get("reference")), "%" + criteria.getLike().toLowerCase() + "%")));
|
||||||
if (criteria.getName() != null && !criteria.getName().isEmpty())
|
if (criteria.getName() != null && !criteria.getName().isEmpty())
|
||||||
query.where((builder, root) ->builder.or(builder.like(builder.upper(root.get("label")), "%" + criteria.getName().toUpperCase() + "%")));
|
query.where((builder, root) ->builder.or(builder.like(builder.lower(root.get("label")), "%" + criteria.getName().toLowerCase() + "%")));
|
||||||
if (criteria.getReference() != null && !criteria.getReference().isEmpty())
|
if (criteria.getReference() != null && !criteria.getReference().isEmpty())
|
||||||
query.where((builder, root) ->builder.or(builder.like(builder.upper(root.get("reference")), criteria.getReference().toUpperCase())));
|
query.where((builder, root) ->builder.or(builder.like(builder.lower(root.get("reference")), criteria.getReference().toLowerCase())));
|
||||||
return query;
|
return query;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -94,10 +94,12 @@ public class Researcher implements DataModel<eu.eudat.data.entities.Researcher,
|
||||||
researcher.setId(UUID.fromString(this.id));
|
researcher.setId(UUID.fromString(this.id));
|
||||||
if (this.key != null) {
|
if (this.key != null) {
|
||||||
if (this.key.toLowerCase().equals("internal")) {
|
if (this.key.toLowerCase().equals("internal")) {
|
||||||
if (this.reference != null) {
|
if (this.reference != null && !this.reference.startsWith("dmp:")) {
|
||||||
researcher.setReference("dmp:" + this.reference);
|
researcher.setReference("dmp:" + this.reference);
|
||||||
} else {
|
} else if (this.reference == null) {
|
||||||
researcher.setReference("dmp:" + this.id);
|
researcher.setReference("dmp:" + this.id);
|
||||||
|
} else {
|
||||||
|
researcher.setReference(this.reference);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ((this.key + ":").equals(this.reference.substring(0, this.key.length() + 1))) {
|
if ((this.key + ":").equals(this.reference.substring(0, this.key.length() + 1))) {
|
||||||
|
|
Loading…
Reference in New Issue