|
from sqlalchemy import select |
|
from sqlalchemy.orm import Session |
|
|
|
from models import ToolFile, UploadFile |
|
|
|
from .models import File |
|
|
|
|
|
def get_upload_file(*, session: Session, file: File): |
|
if file.related_id is None: |
|
raise ValueError("Missing file related_id") |
|
stmt = select(UploadFile).filter( |
|
UploadFile.id == file.related_id, |
|
UploadFile.tenant_id == file.tenant_id, |
|
) |
|
record = session.scalar(stmt) |
|
if not record: |
|
raise ValueError(f"upload file {file.related_id} not found") |
|
return record |
|
|
|
|
|
def get_tool_file(*, session: Session, file: File): |
|
if file.related_id is None: |
|
raise ValueError("Missing file related_id") |
|
stmt = select(ToolFile).filter( |
|
ToolFile.id == file.related_id, |
|
ToolFile.tenant_id == file.tenant_id, |
|
) |
|
record = session.scalar(stmt) |
|
if not record: |
|
raise ValueError(f"tool file {file.related_id} not found") |
|
return record |
|
|