diff --git a/atst/domain/requests/requests.py b/atst/domain/requests/requests.py index 86e2908d..4f8ed46e 100644 --- a/atst/domain/requests/requests.py +++ b/atst/domain/requests/requests.py @@ -207,3 +207,7 @@ class Requests(object): comment = RequestInternalComment(request=request, text=comment_text, user=user) RequestsQuery.add_and_commit(comment) return request + + @classmethod + def possible_statuses(cls): + return [s[1].value for s in RequestStatus.__members__.items()] diff --git a/atst/models/request.py b/atst/models/request.py index 4d03c4ec..4d518274 100644 --- a/atst/models/request.py +++ b/atst/models/request.py @@ -237,10 +237,6 @@ class Request(Base, mixins.TimestampsMixin, mixins.AuditableMixin): else None ) - @property - def simple_status(self): - return self.latest_status.simple_name - def __repr__(self): return "".format( self.status_displayname, diff --git a/atst/models/request_status_event.py b/atst/models/request_status_event.py index d14ff177..90ec2532 100644 --- a/atst/models/request_status_event.py +++ b/atst/models/request_status_event.py @@ -56,21 +56,6 @@ class RequestStatusEvent(Base, mixins.TimestampsMixin, mixins.AuditableMixin): else: return self.displayname - @property - def simple_name(self): - if self.new_status in [ - RequestStatus.CHANGES_REQUESTED, - RequestStatus.CHANGES_REQUESTED_TO_FINVER, - ]: - return "denied" - elif self.new_status == [ - RequestStatus.PENDING_FINANCIAL_VERIFICATION, - RequestStatus.APPROVED, - ]: - return "accepted" - else: - return "pending" - def __repr__(self): return "".format( self.log_name, self.request_id, self.id diff --git a/atst/routes/requests/index.py b/atst/routes/requests/index.py index 5e03dab9..209c3773 100644 --- a/atst/routes/requests/index.py +++ b/atst/routes/requests/index.py @@ -15,10 +15,15 @@ class RequestsIndex(object): Permissions.REVIEW_AND_APPROVE_JEDI_WORKSPACE_REQUEST in self.user.atat_permissions ): - return self._ccpo_view(self.user) + context = self._ccpo_view(self.user) else: - return self._non_ccpo_view(self.user) + context = self._non_ccpo_view(self.user) + + return { + **context, + "possible_statuses": Requests.possible_statuses(), + } def _ccpo_view(self, user): requests = Requests.get_many() @@ -77,7 +82,6 @@ class RequestsIndex(object): "is_new": is_new, "is_approved": request.is_approved, "status": request.status_displayname, - "simple_status": request.simple_status, "app_count": app_count, "last_submission_timestamp": request.last_submission_timestamp, "last_edited_timestamp": request.latest_revision.time_updated, diff --git a/js/components/forms/requests_list.js b/js/components/forms/requests_list.js index 51f1afa7..006ebe92 100644 --- a/js/components/forms/requests_list.js +++ b/js/components/forms/requests_list.js @@ -13,7 +13,7 @@ export default { }, props: { - initialData: { + requests: { type: Array, default: [], }, @@ -21,12 +21,14 @@ export default { type: Boolean, default: false, }, + statuses: { + type: Array, + default: [], + }, }, data: function () { - const requests = this.initialData return { - requests, searchValue: '', statusValue: '', } @@ -52,7 +54,7 @@ export default { applyFilters: (requests, status) => { return requests.filter( (request) => status !== '' ? - request.simple_status.toLowerCase() === status : + request.status === status : true ) }, diff --git a/templates/requests/index.html b/templates/requests/index.html index 73fe6810..6f21f9f9 100644 --- a/templates/requests/index.html +++ b/templates/requests/index.html @@ -5,7 +5,7 @@ {% from "components/empty_state.html" import EmptyState %} {% block content %} - +
{% call Modal(name='pendingFinancialVerification', dismissable=True) %} @@ -91,9 +91,7 @@