Skip to content

Commit

Permalink
consider withdrawal date when looking up user's latest /triggers
Browse files Browse the repository at this point in the history
  • Loading branch information
pbugni committed Mar 20, 2024
1 parent 1c1b21b commit 56f1500
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions portal/trigger_states/empro_states.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
from ..models.questionnaire_bank import QuestionnaireBank
from ..models.questionnaire_response import QuestionnaireResponse
from ..models.observation import Observation
from ..models.research_study import EMPRO_RS_ID
from ..models.research_study import EMPRO_RS_ID, withdrawn_from_research_study
from ..models.user import User
from ..timeout_lock import TimeoutLock

Expand Down Expand Up @@ -98,6 +98,7 @@ def users_trigger_state(user_id, as_of_date=None):

vm = lookup_visit_month(user_id, as_of_date)
ts = None
withdrawal_date = withdrawn_from_research_study(user_id, EMPRO_RS_ID)
rows = TriggerState.query.filter(
TriggerState.user_id == user_id).order_by(
TriggerState.timestamp.desc())
Expand All @@ -106,7 +107,7 @@ def users_trigger_state(user_id, as_of_date=None):
if as_of_date < ts_row.timestamp:
continue
ts = ts_row
if ts.visit_month < vm:
if ts.visit_month < vm and not withdrawal_date:
current_app.logger.debug(
f"{user_id} trigger state out of sync for visit {vm} (found {ts.visit_month})")
# unset ts given wrong month, to pick up below
Expand Down

0 comments on commit 56f1500

Please sign in to comment.