diff --git a/atst/domain/requests.py b/atst/domain/requests.py index c86e2adc..4836fd96 100644 --- a/atst/domain/requests.py +++ b/atst/domain/requests.py @@ -118,10 +118,13 @@ class Requests(object): return request @classmethod - def update_financial_verification(cls, request_id, data): - updated_request = Requests.update(request_id, {"financial_verification": data}) - approved_request = Requests.set_status(updated_request, RequestStatus.APPROVED) + def approve_and_create_workspace(cls, request): + approved_request = Requests.set_status(request, RequestStatus.APPROVED) workspace = Workspaces.create(approved_request) + + db.session.add(approved_request) + db.session.commit() + return workspace @classmethod diff --git a/atst/routes/requests/financial_verification.py b/atst/routes/requests/financial_verification.py index 63a3c449..c16c6e10 100644 --- a/atst/routes/requests/financial_verification.py +++ b/atst/routes/requests/financial_verification.py @@ -36,11 +36,13 @@ def update_financial_verification(request_id): ) if form.validate(): + request_data = {"financial_verification": form.data} valid = form.perform_extra_validation( existing_request.body.get("financial_verification") ) - new_workspace = Requests.update_financial_verification(request_id, post_data) + updated_request = Requests.update(request_id, request_data) if valid: + new_workspace = Requests.approve_and_create_workspace(updated_request) return redirect(url_for("workspaces.workspace_projects", workspace_id=new_workspace.id, newWorkspace=True)) else: form.reset()