Add links to download CSP estimate
This commit is contained in:
parent
30be2a5018
commit
eb4f3f4871
@ -1,5 +1,5 @@
|
|||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
from flask import g, Response
|
from flask import g, Response, current_app as app
|
||||||
|
|
||||||
from . import task_orders_bp
|
from . import task_orders_bp
|
||||||
from atst.domain.task_orders import TaskOrders
|
from atst.domain.task_orders import TaskOrders
|
||||||
@ -17,3 +17,22 @@ def download_summary(task_order_id):
|
|||||||
headers={"Content-Disposition": "attachment; filename={}".format(filename)},
|
headers={"Content-Disposition": "attachment; filename={}".format(filename)},
|
||||||
mimetype="application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
mimetype="application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@task_orders_bp.route("/task_orders/csp_estimate/<task_order_id>")
|
||||||
|
def download_csp_estimate(task_order_id):
|
||||||
|
task_order = TaskOrders.get(g.current_user, task_order_id)
|
||||||
|
if task_order.csp_estimate:
|
||||||
|
estimate = task_order.csp_estimate
|
||||||
|
generator = app.csp.files.download(estimate.object_name)
|
||||||
|
return Response(
|
||||||
|
generator,
|
||||||
|
headers={
|
||||||
|
"Content-Disposition": "attachment; filename={}".format(
|
||||||
|
estimate.filename
|
||||||
|
)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
else:
|
||||||
|
raise NotFoundError("task_order CSP estimate")
|
||||||
|
@ -133,7 +133,7 @@
|
|||||||
<div class="panel__content">
|
<div class="panel__content">
|
||||||
{{ DocumentLink(
|
{{ DocumentLink(
|
||||||
title="Cloud Services Estimate",
|
title="Cloud Services Estimate",
|
||||||
link_url="#") }}
|
link_url=task_order.csp_estimate and url_for("task_orders.download_csp_estimate", task_order_id=task_order.id) ) }}
|
||||||
{{ DocumentLink(
|
{{ DocumentLink(
|
||||||
title="Market Research",
|
title="Market Research",
|
||||||
link_url="#") }}
|
link_url="#") }}
|
||||||
|
@ -113,7 +113,7 @@
|
|||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
{% call ReviewField(("task_orders.new.review.performance_period" | translate), task_order.performance_length, filter="translateDuration") %}
|
{% call ReviewField(("task_orders.new.review.performance_period" | translate), task_order.performance_length, filter="translateDuration") %}
|
||||||
<p><a href="#" class='icon-link icon-link--left' download>{{ Icon('download') }} {{ "task_orders.new.review.usage_est_link" | translate }}</a></p>
|
<p><a href="{{ url_for("task_orders.download_csp_estimate", task_order_id=task_order.id) }}" class='icon-link icon-link--left' download>{{ Icon('download') }} {{ "task_orders.new.review.usage_est_link"| translate }}</a></p>
|
||||||
{% endcall %}
|
{% endcall %}
|
||||||
|
|
||||||
<div class="col col--grow">
|
<div class="col col--grow">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user