修复回忆录图片重试状态透传与前端展示
This commit is contained in:
@@ -15,7 +15,12 @@ from reportlab.pdfbase import pdfmetrics
|
||||
from reportlab.pdfbase.cidfonts import UnicodeCIDFont
|
||||
from services.memoir_images.parser import PLACEHOLDER_RE
|
||||
from services.memoir_images.schema import IMAGE_STATUS_COMPLETED, normalize_image_assets
|
||||
from services.memoir_images.storage import TencentCosStorageService, resolve_image_storage_key
|
||||
from services.memoir_images.storage import (
|
||||
CosDownloadUrlError,
|
||||
TencentCosStorageService,
|
||||
mark_image_delivery_unavailable,
|
||||
resolve_image_storage_key,
|
||||
)
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -53,8 +58,15 @@ def _prepare_pdf_image_assets(images: list[dict]) -> list[dict]:
|
||||
if asset.get("status") == IMAGE_STATUS_COMPLETED and storage_key:
|
||||
try:
|
||||
asset["url"] = storage.get_download_url(storage_key)
|
||||
except CosDownloadUrlError as exc:
|
||||
logger.warning(
|
||||
"PDF 图片签名失败: key=%s, retryable=%s, request_id=%s, error=%s",
|
||||
storage_key, exc.retryable, exc.request_id, exc,
|
||||
)
|
||||
asset = mark_image_delivery_unavailable(asset)
|
||||
except Exception as exc:
|
||||
logger.warning(f"PDF 图片签名失败: key={storage_key}, error={exc}")
|
||||
logger.warning("PDF 图片签名失败: key=%s, error=%s", storage_key, exc)
|
||||
asset = mark_image_delivery_unavailable(asset)
|
||||
prepared_assets.append(asset)
|
||||
|
||||
return prepared_assets
|
||||
|
||||
Reference in New Issue
Block a user