From 4e1e9a611ed697a9da13e95d438388c5ae5abe45 Mon Sep 17 00:00:00 2001 From: Yingtong Li Date: Sat, 25 Jan 2020 23:18:56 +1100 Subject: [PATCH] Allow Treasurer/Secretary to skip steps --- sstreasury/models.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sstreasury/models.py b/sstreasury/models.py index 1e49000..6d7bde5 100644 --- a/sstreasury/models.py +++ b/sstreasury/models.py @@ -171,11 +171,13 @@ class BudgetRevision(models.Model): return False if not user.groups.filter(name='Treasury').exists(): return False - if self.state == BudgetState.AWAIT_REVIEW.value: + if self.state == BudgetState.AWAIT_REVIEW.value or self.state == BudgetState.DRAFT.value or self.state == BudgetState.RESUBMIT.value: return True return False def can_return(self, user): + if self.state != BudgetState.AWAIT_REVIEW.value: + return False return self.can_endorse(user) def can_approve(self, user): @@ -183,11 +185,13 @@ class BudgetRevision(models.Model): return False if not user.groups.filter(name='Secretary').exists(): return False - if self.state == BudgetState.ENDORSED.value: + if self.state == BudgetState.ENDORSED.value or self.state == BudgetState.AWAIT_REVIEW.value or self.state == BudgetState.DRAFT.value or self.state == BudgetState.RESUBMIT.value: return True return False def can_cmtereturn(self, user): + if self.state != BudgetState.ENDORSED.value: + return False return self.can_approve(user) class ClaimState(DescriptionEnum):