Have officer invite url point to the TO view page

This commit is contained in:
leigh-mil 2019-03-14 12:03:42 -04:00
parent 5f30b347c7
commit 3182f3438e
2 changed files with 13 additions and 9 deletions

View File

@ -185,6 +185,17 @@ class TaskOrders(object):
"{} is not an officer role on task orders".format(officer_type)
)
@classmethod
def is_officer_for_to(cls, task_order, user):
if (
user == task_order.contracting_officer
or user == task_order.contracting_officer_representative
or user == task_order.security_officer
):
return True
else:
return False
@classmethod
def add_dd_254(user, task_order, dd_254_data):
dd_254 = DD254(**dd_254_data)

View File

@ -3,6 +3,7 @@ from flask import g, redirect, url_for, render_template
from . import portfolios_bp
from atst.domain.portfolios import Portfolios
from atst.domain.invitations import Invitations
from atst.domain.task_orders import TaskOrders
from atst.queue import queue
from atst.utils.flash import formatted_flash as flash
@ -26,7 +27,7 @@ def accept_invitation(token):
# - the logged-in user has multiple roles on the TO (e.g., KO and COR)
# - the logged-in user has officer roles on multiple unsigned TOs
for task_order in invite.portfolio.task_orders:
if g.current_user == task_order.contracting_officer:
if TaskOrders.is_officer_for_to(task_order, g.current_user):
return redirect(
url_for(
"portfolios.view_task_order",
@ -34,14 +35,6 @@ def accept_invitation(token):
task_order_id=task_order.id,
)
)
elif g.current_user == task_order.contracting_officer_representative:
return redirect(
url_for("task_orders.new", screen=4, task_order_id=task_order.id)
)
elif g.current_user == task_order.security_officer:
return redirect(
url_for("task_orders.new", screen=4, task_order_id=task_order.id)
)
return redirect(
url_for("portfolios.show_portfolio", portfolio_id=invite.portfolio.id)