Skip to content

Commit b2a6dda

Browse files
committed
Fix person and organization filter for affiliations
1 parent e94e56e commit b2a6dda

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

odm2api/ODM2/services/readService.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -554,9 +554,11 @@ def getAffiliations(self, ids=None, personfirst=None, personlast=None, orgcode=N
554554
q = self._session.query(Affiliations)
555555

556556
if ids: q = q.filter(Affiliations.AffiliationID.in_(ids))
557-
if orgcode: q = q.filter(Organizations.OrganizationCode.ilike(orgcode))
558-
if personfirst: q = q.filter(People.PersonFirstName.ilike(personfirst))
559-
if personlast: q = q.filter(People.PersonLastName.ilike(personlast))
557+
if orgcode: q = q.join(Organizations).filter(Organizations.OrganizationCode.ilike(orgcode))
558+
if personfirst or personlast:
559+
q = q.join(People)
560+
if personfirst: q = q.filter(People.PersonFirstName.ilike(personfirst))
561+
if personlast: q = q.filter(People.PersonLastName.ilike(personlast))
560562

561563
try:
562564
return q.all()

0 commit comments

Comments
 (0)