Merge pull request #508 from dod-ccpo/task-order-download

Task Order review and download
This commit is contained in:
dandds
2019-01-02 13:48:45 -05:00
committed by GitHub
15 changed files with 313 additions and 7 deletions

View File

@@ -3,3 +3,5 @@ from flask import Blueprint
task_orders_bp = Blueprint("task_orders", __name__)
from . import new
from . import index
from . import invite

View File

@@ -0,0 +1,19 @@
from io import BytesIO
from flask import Response
from . import task_orders_bp
from atst.domain.task_orders import TaskOrders
from atst.utils.docx import Docx
@task_orders_bp.route("/task_orders/download_summary/<task_order_id>")
def download_summary(task_order_id):
task_order = TaskOrders.get(task_order_id)
byte_str = BytesIO()
Docx.render(byte_str, data=task_order.to_dictionary())
filename = "{}.docx".format(task_order.portfolio_name)
return Response(
byte_str,
headers={"Content-Disposition": "attachment; filename={}".format(filename)},
mimetype="application/vnd.openxmlformats-officedocument.wordprocessingml.document",
)

View File

@@ -0,0 +1,15 @@
from flask import redirect, url_for
from . import task_orders_bp
from atst.domain.task_orders import TaskOrders
from atst.utils.flash import formatted_flash as flash
# TODO: add a real implementation for this
@task_orders_bp.route("/task_orders/invite/<task_order_id>", methods=["POST"])
def invite(task_order_id):
task_order = TaskOrders.get(task_order_id)
flash("task_order_submitted", task_order=task_order)
return redirect(
url_for("workspaces.workspace_members", workspace_id=task_order.workspace.id)
)

View File

@@ -113,6 +113,7 @@ def new(screen, task_order_id=None):
workflow.template,
current=screen,
task_order_id=task_order_id,
task_order=workflow.task_order,
screens=workflow.display_screens,
form=workflow.form,
)