implement real KPI counts

This commit is contained in:
dandds
2018-08-14 16:57:27 -04:00
parent 4c587864ef
commit e97fdbf140
5 changed files with 55 additions and 19 deletions

View File

@@ -158,7 +158,7 @@ class Requests(object):
return request.status == RequestStatus.PENDING_CCPO_APPROVAL
@classmethod
def count_status(self, status):
def status_count(cls, status):
raw = text("""
SELECT count(requests_with_status.id)
FROM (
@@ -174,3 +174,19 @@ WHERE requests_with_status.status = :status;
(count,) = results
return count
@classmethod
def in_progress_count(cls):
return sum([
Requests.status_count(RequestStatus.STARTED),
Requests.status_count(RequestStatus.PENDING_FINANCIAL_VERIFICATION),
Requests.status_count(RequestStatus.CHANGES_REQUESTED),
])
@classmethod
def pending_ccpo_count(cls):
return Requests.status_count(RequestStatus.PENDING_CCPO_APPROVAL)
@classmethod
def completed_count(cls):
return Requests.status_count(RequestStatus.APPROVED)