diff --git a/apps/backend/app/routers/xcx_runtime_clock.py b/apps/backend/app/routers/xcx_runtime_clock.py index c72e3c2..502871f 100644 --- a/apps/backend/app/routers/xcx_runtime_clock.py +++ b/apps/backend/app/routers/xcx_runtime_clock.py @@ -26,7 +26,7 @@ router = APIRouter(prefix="/api/xcx/runtime", tags=["小程序业务时钟"]) @router.get("/clock") @trace_service("获取业务时钟", "Get business clock") async def get_business_clock( - user: CurrentUser = Depends(require_approved), + user: CurrentUser = Depends(require_approved()), ): """返回当前门店的业务时钟。 diff --git a/apps/backend/app/services/ai/admin_service.py b/apps/backend/app/services/ai/admin_service.py index 6a1ad7b..a4b0225 100644 --- a/apps/backend/app/services/ai/admin_service.py +++ b/apps/backend/app/services/ai/admin_service.py @@ -15,6 +15,8 @@ import uuid from datetime import datetime, timezone, timedelta from typing import TYPE_CHECKING, Any +import psycopg2.extras + from app.ai.budget_tracker import BudgetTracker from app.database import get_connection from app.services.runtime_context import ( @@ -390,7 +392,11 @@ class AdminAIService: original.get("member_id"), site_id, original.get("connector_type", "feiqiu"), - original.get("payload"), + # F1-5a 走查发现:psycopg2 把 jsonb 列读成 dict, + # INSERT 时需 Json() 适配,否则 "can't adapt type 'dict'" + psycopg2.extras.Json(original["payload"]) + if original.get("payload") is not None + else None, original.get("app_chain"), *runtime_params, ),