From 047d54a204ddc0838b637df290c87a600b1c268d Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sat, 29 Aug 2026 08:25:56 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=97=A0=E9=92=89=E9=92=89=E5=87=AD?= =?UTF-8?q?=E6=8D=AE=E6=97=B6=E6=98=8E=E7=A1=AE=E6=8A=A5=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E8=AE=A9=E4=B8=9A=E5=8A=A1=E9=99=8D=E7=BA=A7=E4=BA=BA=E5=B7=A5?= =?UTF-8?q?=E2=80=94=E2=80=94=E9=98=B2mock=E5=AE=9E=E4=BE=8B=E6=97=A0?= =?UTF-8?q?=E4=BA=BA=E5=8F=AF=E5=AE=A1=E5=AF=BC=E8=87=B4=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E6=B0=B8=E4=B9=85=E5=8D=A1=E6=AD=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dingdingflow/init.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dingdingflow/init.py b/dingdingflow/init.py index 5207faa..55b00e1 100644 --- a/dingdingflow/init.py +++ b/dingdingflow/init.py @@ -185,6 +185,14 @@ async def submit_approval(biz_type, biz_id, title, applicant_id, org_id='0'): """ client = get_dingtalk_client() + # 无钉钉凭据(未对接):明确报失败让调用方降级人工审批。 + # ⚠️ 不能返回 mock 成功——假实例无人可审,回调永不到达,审批会永久卡死。 + if client.is_dev_mode: + logger.warning('DingTalk credentials not configured, biz_type=%s ' + 'should fall back to human approval', biz_type) + return {'success': False, + 'message': 'DingTalk not configured (missing DINGTALK_APP_KEY/SECRET)'} + # 查找审批配置 config = await get_approval_config_by_type(org_id, biz_type) if not config: