mirror of
https://github.com/sartography/cr-connect-workflow.git
synced 2025-02-22 20:58:28 +00:00
Change study progress resulting from a query
This commit is contained in:
parent
2ab96b16a0
commit
3c5a75c976
@ -106,16 +106,17 @@ class StudyService(object):
|
|||||||
study.warnings = StudyService._update_status_of_workflow_meta(workflow_metas,
|
study.warnings = StudyService._update_status_of_workflow_meta(workflow_metas,
|
||||||
master_workflow_results)
|
master_workflow_results)
|
||||||
category.workflows = workflow_metas
|
category.workflows = workflow_metas
|
||||||
|
|
||||||
# Calculate study progress and return it as a integer out of a hundred
|
# Calculate study progress and return it as a integer out of a hundred
|
||||||
completed_wfs = 0
|
all_workflows = db.session.query(WorkflowModel).\
|
||||||
total_wfs = 0
|
filter(WorkflowModel.study_id == study.id).\
|
||||||
for category in study.categories:
|
count()
|
||||||
for workflow in category.workflows:
|
complete_workflows = db.session.query(WorkflowModel).\
|
||||||
total_wfs +=1
|
filter(WorkflowModel.study_id == study.id).\
|
||||||
if workflow.status == WorkflowStatus.complete:
|
filter(WorkflowModel.status == WorkflowStatus.complete).\
|
||||||
completed_wfs += 1
|
count()
|
||||||
if total_wfs > 0:
|
if all_workflows > 0:
|
||||||
study.progress = int((completed_wfs/total_wfs)*100)
|
study.progress = int((complete_workflows/all_workflows)*100)
|
||||||
else:
|
else:
|
||||||
study.progress = 0
|
study.progress = 0
|
||||||
return study
|
return study
|
||||||
|
Loading…
x
Reference in New Issue
Block a user