From a84e18d888a8008cab60486bd6affc476b3d12ec Mon Sep 17 00:00:00 2001 From: dandds Date: Thu, 13 Sep 2018 11:12:18 -0400 Subject: [PATCH] ensure correct forms display when financial verification changes requested --- atst/domain/requests/requests.py | 4 +++- .../routes/requests/financial_verification.py | 18 ++++++++++------ atst/routes/requests/requests_form.py | 21 ++++++++++++------- 3 files changed, 28 insertions(+), 15 deletions(-) diff --git a/atst/domain/requests/requests.py b/atst/domain/requests/requests.py index bd5fd380..1289082d 100644 --- a/atst/domain/requests/requests.py +++ b/atst/domain/requests/requests.py @@ -153,7 +153,9 @@ class Requests(object): @classmethod def is_pending_ccpo_action(cls, request): - return Requests.is_pending_ccpo_acceptance(request) or Requests.is_pending_ccpo_approval(request) + return Requests.is_pending_ccpo_acceptance( + request + ) or Requests.is_pending_ccpo_approval(request) @classmethod def is_approved(cls, request): diff --git a/atst/routes/requests/financial_verification.py b/atst/routes/requests/financial_verification.py index f469334a..a0fba28e 100644 --- a/atst/routes/requests/financial_verification.py +++ b/atst/routes/requests/financial_verification.py @@ -13,8 +13,14 @@ def task_order_data(task_order): return data -def financial_form(data): - if http_request.args.get("extended"): +def is_extended(request): + return http_request.args.get( + "extended" + ) or Requests.is_pending_financial_verification_changes(request) + + +def financial_form(request, data): + if is_extended(request): return ExtendedFinancialForm(data=data) else: return FinancialForm(data=data) @@ -27,12 +33,12 @@ def financial_verification(request_id=None): if request.task_order: form_data.update(task_order_data(request.task_order)) - form = financial_form(form_data) + form = financial_form(request, form_data) return render_template( "requests/financial_verification.html", f=form, request_id=request_id, - extended=http_request.args.get("extended"), + extended=is_extended(request), ) @@ -40,9 +46,9 @@ def financial_verification(request_id=None): def update_financial_verification(request_id): post_data = http_request.form existing_request = Requests.get(g.current_user, request_id) - form = financial_form(post_data) + form = financial_form(existing_request, post_data) rerender_args = dict( - request_id=request_id, f=form, extended=http_request.args.get("extended") + request_id=request_id, f=form, extended=is_extended(existing_request) ) if form.validate(): diff --git a/atst/routes/requests/requests_form.py b/atst/routes/requests/requests_form.py index 2b6fd5cf..3e825f9e 100644 --- a/atst/routes/requests/requests_form.py +++ b/atst/routes/requests/requests_form.py @@ -127,18 +127,23 @@ def requests_submit(request_id=None): @requests_bp.route("/requests/details/", methods=["GET"]) def view_request_details(request_id=None): request = Requests.get(g.current_user, request_id) - financial_review=Requests.is_pending_ccpo_approval(request) or Requests.is_approved(request) + financial_review = ( + Requests.is_pending_ccpo_approval(request) + or Requests.is_approved(request) + or Requests.is_pending_financial_verification_changes(request) + ) data = request.body if financial_review and request.task_order: data["task_order"] = request.task_order.to_dictionary() return render_template( - "requests/view_pending.html", - data=data, - request_id=request.id, - status=request.status_displayname, - pending_review=Requests.is_pending_ccpo_action(request), - financial_verification=Requests.is_pending_financial_verification(request), - financial_review=financial_review, + "requests/view_pending.html", + data=data, + request_id=request.id, + status=request.status_displayname, + pending_review=Requests.is_pending_ccpo_action(request), + financial_verification=Requests.is_pending_financial_verification(request) + or Requests.is_pending_financial_verification_changes(request), + financial_review=financial_review, )