Fix engagement task categories and add Tally Data upload
This commit is contained in:
@@ -359,14 +359,14 @@ def upload_engagement_document(
|
||||
remarks: str | None = Form(None),
|
||||
existing_document_id: str | None = Form(None),
|
||||
udin_required: str | None = Form(None),
|
||||
evidence_type: str | None = Form(None),
|
||||
evidence_description: str | None = Form(None),
|
||||
file: UploadFile = File(...),
|
||||
return_to: str = Form(""),
|
||||
csrf_token: str = Form(...),
|
||||
):
|
||||
validate_csrf(request, csrf_token)
|
||||
db = CommonSessionLocal()
|
||||
try:
|
||||
return_target = _safe_documents_return_url(return_to, f"/documents/engagements/{engagement_id}")
|
||||
user, response = _require_user(request, db, "documents.upload")
|
||||
if response:
|
||||
return response
|
||||
@@ -378,9 +378,9 @@ def upload_engagement_document(
|
||||
if not engagement or not user_can_upload_to_engagement(db, user, engagement, scope):
|
||||
return _redirect_denied()
|
||||
if is_row_financial_year_locked(db, engagement):
|
||||
return RedirectResponse(url=f"/documents/engagements/{engagement.id}?year_locked=1", status_code=303)
|
||||
return RedirectResponse(url=return_target if return_to else f"/documents/engagements/{engagement.id}?year_locked=1", status_code=303)
|
||||
if not file or not file.filename:
|
||||
return RedirectResponse(url=f"/documents/engagements/{engagement_id}?error=missing_file", status_code=303)
|
||||
return RedirectResponse(url=return_target if return_to else f"/documents/engagements/{engagement_id}?error=missing_file", status_code=303)
|
||||
try:
|
||||
doc = save_uploaded_revision(
|
||||
db,
|
||||
@@ -393,10 +393,7 @@ def upload_engagement_document(
|
||||
user=user,
|
||||
existing_document_id=int(existing_document_id) if existing_document_id else None,
|
||||
udin_required=_bool_from_form(udin_required),
|
||||
evidence_type=evidence_type,
|
||||
evidence_description=evidence_description,
|
||||
)
|
||||
recalculate_task_aqmm_status(db, task)
|
||||
log_document_access(db, action="upload", result="success", user=user, request=request, document=doc)
|
||||
db.commit()
|
||||
except Exception as exc:
|
||||
@@ -408,8 +405,8 @@ def upload_engagement_document(
|
||||
except Exception:
|
||||
db.rollback()
|
||||
logger.exception("Unable to write document upload failure audit log for engagement_id=%s", engagement_id)
|
||||
return RedirectResponse(url=f"/documents/engagements/{engagement_id}?error=upload_failed", status_code=303)
|
||||
return RedirectResponse(url=f"/documents/engagements/{engagement_id}?uploaded=1", status_code=303)
|
||||
return RedirectResponse(url=return_target if return_to else f"/documents/engagements/{engagement_id}?error=upload_failed", status_code=303)
|
||||
return RedirectResponse(url=return_target if return_to else f"/documents/engagements/{engagement_id}?uploaded=1", status_code=303)
|
||||
finally:
|
||||
db.close()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user