Skip to content

Commit

Permalink
avniproject/avni-product#1446 | Allow concept search by parent org as…
Browse files Browse the repository at this point in the history
… well
  • Loading branch information
1t5j0y committed Dec 14, 2023
1 parent 32a691f commit c1289d7
Showing 1 changed file with 11 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import org.avni.server.domain.Concept;
import org.avni.server.domain.ConceptDataType;
import org.avni.server.domain.UserContext;
import org.avni.server.framework.security.UserContextHolder;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
Expand All @@ -13,6 +14,7 @@
import org.springframework.stereotype.Repository;

import javax.persistence.QueryHint;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
Expand All @@ -38,12 +40,18 @@ default Concept findByName(String name) {
List<Concept> findByIsVoidedFalseAndActiveTrueAndDataTypeAndNameIgnoreCaseContains(String dataType, String name);

@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")})
@Query("select c from Concept c where c.uuid = ?1 and c.organisationId = ?2")
Concept findByUuidAndOrganisationId(String uuid, Long organisationId);
@Query("select c from Concept c where c.uuid = ?1 and c.organisationId IN ?2")
Concept findByUuidAndOrganisationId(String uuid, List<Long> organisationIds);

@Override
default Concept findByUuid(String uuid) {
return this.findByUuidAndOrganisationId(uuid, UserContextHolder.getUserContext().getOrganisationId());
List<Long> organisationIds = new ArrayList<>();
UserContext userContext = UserContextHolder.getUserContext();
organisationIds.add(userContext.getOrganisationId());
if (userContext.getOrganisation().getParentOrganisationId() != null) {
organisationIds.add(userContext.getOrganisation().getParentOrganisationId());
}
return this.findByUuidAndOrganisationId(uuid, organisationIds);
}

@Query("select c from Concept c where c.isVoided = false")
Expand Down

0 comments on commit c1289d7

Please sign in to comment.