diff --git a/app/enums.py b/app/enums.py index 9878ed5f1..43d1cc20c 100644 --- a/app/enums.py +++ b/app/enums.py @@ -206,6 +206,7 @@ class AgreementStatus(StrEnum): WAITING = "waiting" ACTIVE = "active" EXPIRED = "expired" + UNKNOWN = "unknown" class StatisticsType(StrEnum): diff --git a/app/models.py b/app/models.py index d4ba7c7fc..1721425c9 100644 --- a/app/models.py +++ b/app/models.py @@ -2332,8 +2332,8 @@ class Agreement(db.Model): @hybrid_property - def status(self): - current_time = datetime.utcnow() + def status(self) -> AgreementStatus: + current_time = datetime.datetime.now(datetime.UTC) if self.start_time and self.end_time: if current_time < self.start_time: return AgreementStatus.WAITING @@ -2341,7 +2341,8 @@ class Agreement(db.Model): return AgreementStatus.EXPIRED else: return AgreementStatus.ACTIVE - return None + # Likely one or both are None. + return AgreementStatus.UNKNOWN def serialize(self):