Metrics fix on calculating doied dmps query
This commit is contained in:
parent
3a0203e942
commit
39ad49241e
|
@ -4,10 +4,7 @@ import eu.eudat.authorization.AuthorizationFlags;
|
|||
import eu.eudat.authorization.Permission;
|
||||
import eu.eudat.commons.enums.*;
|
||||
import eu.eudat.commons.scope.user.UserScope;
|
||||
import eu.eudat.data.DmpDescriptionTemplateEntity;
|
||||
import eu.eudat.data.DmpEntity;
|
||||
import eu.eudat.data.DmpReferenceEntity;
|
||||
import eu.eudat.data.DmpUserEntity;
|
||||
import eu.eudat.data.*;
|
||||
import eu.eudat.model.Dmp;
|
||||
import eu.eudat.model.PublicDmp;
|
||||
import eu.eudat.query.utils.QueryUtilsService;
|
||||
|
@ -364,6 +361,11 @@ public class DmpQuery extends QueryBase<DmpEntity> {
|
|||
predicates.add(queryContext.CriteriaBuilder.in(queryContext.Root.get(DmpEntity._id)).value(subQuery.Query));
|
||||
}
|
||||
|
||||
if (this.entityDoiQuery != null) {
|
||||
QueryContext<EntityDoiEntity, UUID> subQuery = this.applySubQuery(this.entityDoiQuery, queryContext, UUID.class, entityDoiEntityRoot -> entityDoiEntityRoot.get(EntityDoiEntity._entityId));
|
||||
predicates.add(queryContext.CriteriaBuilder.in(queryContext.Root.get(DmpEntity._id)).value(subQuery.Query));
|
||||
}
|
||||
|
||||
if (!predicates.isEmpty()) {
|
||||
Predicate[] predicatesArray = predicates.toArray(new Predicate[0]);
|
||||
return queryContext.CriteriaBuilder.and(predicatesArray);
|
||||
|
|
|
@ -181,6 +181,7 @@ public class MetricsServiceImpl implements MetricsService {
|
|||
dmpQuery.after(_config.getNexusDate());
|
||||
EntityDoiQuery entityDoiQuery = this.queryFactory.query(EntityDoiQuery.class).types(EntityType.DMP).isActive(IsActive.Active);
|
||||
dmpQuery.entityDoiSubQuery(entityDoiQuery);
|
||||
dmpQuery.setDistinct(true);
|
||||
return dmpQuery.count();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue