Fix PDF clearing bug
This commit is contained in:
@@ -4,6 +4,7 @@ from wtforms.fields.html5 import DateField, EmailField
|
||||
from wtforms.fields import StringField, FileField, FormField
|
||||
from wtforms.validators import InputRequired, Email, Regexp, Optional
|
||||
from flask_wtf.file import FileAllowed
|
||||
from werkzeug.datastructures import FileStorage
|
||||
|
||||
from .fields import NewlineListField, SelectField, NumberStringField
|
||||
from atst.forms.forms import ValidatedForm
|
||||
@@ -237,6 +238,10 @@ class FinancialVerificationForm(ValidatedForm):
|
||||
def task_order_number(self):
|
||||
return self.task_order.number
|
||||
|
||||
@property
|
||||
def has_task_order_pdf(self):
|
||||
return isinstance(self.task_order.pdf.data, FileStorage)
|
||||
|
||||
@property
|
||||
def is_missing_task_order_number(self):
|
||||
return "number" in self.errors.get("task_order", {})
|
||||
|
@@ -65,7 +65,7 @@ class Attachment(Base, mixins.TimestampsMixin):
|
||||
return (
|
||||
db.session.query(Attachment)
|
||||
.filter_by(resource=resource, resource_id=resource_id)
|
||||
.delete()
|
||||
.update({"resource_id": None})
|
||||
)
|
||||
except NoResultFound:
|
||||
raise NotFoundError("attachment")
|
||||
|
@@ -31,11 +31,12 @@ class FinancialVerificationBase(object):
|
||||
fv = FinancialVerification(request)
|
||||
form = FinancialVerificationForm(obj=fv, formdata=_formdata)
|
||||
|
||||
try:
|
||||
attachment = Attachment.get_for_resource("task_order", self.request.id)
|
||||
form.task_order.pdf.data = attachment.filename
|
||||
except NotFoundError:
|
||||
pass
|
||||
if not form.has_task_order_pdf:
|
||||
try:
|
||||
attachment = Attachment.get_for_resource("task_order", self.request.id)
|
||||
form.task_order.pdf.data = attachment.filename
|
||||
except NotFoundError:
|
||||
pass
|
||||
|
||||
return form
|
||||
|
||||
|
Reference in New Issue
Block a user