fix(web): steward plan 确认按钮直接拉起申请预览,不丢失 remaining tasks
根因:steward plan 的'确认创建申请单'按钮 action_type 是 ASSISTANT_SCOPE_ACTION_SWITCH,handleInlineSuggestedAction 没有匹配分支, 落到 startInlineConversation 重新发起对话,steward_remaining_tasks 完全丢失。 修复:当 payload 有 steward_current_task + session_type=application + task_type=expense_application 时,直接调 startAiApplicationPreviewFromAction (会透传 steward_remaining_tasks 到申请预览 message),不走 startInlineConversation。 这样保存草稿成功后,targetMessage 上有 stewardRemainingTasks, buildApplicationPreviewNextTaskAction 能生成'继续处理费用报销'按钮。
This commit is contained in:
@@ -114,6 +114,17 @@ export function useWorkbenchAiActionRouter({
|
||||
void expenseFlow.startAiApplicationPreviewFromAction(actionPayload)
|
||||
return
|
||||
}
|
||||
// steward plan 的"确认创建申请单"按钮:payload 有 steward_current_task + session_type=application,
|
||||
// 直接拉起申请预览(带 remaining tasks),不走 startInlineConversation(会丢失 steward 上下文)
|
||||
if (
|
||||
actionPayload.steward_current_task
|
||||
&& String(actionPayload.session_type || '').trim() === 'application'
|
||||
&& String(actionPayload.steward_current_task.task_type || '').trim() === 'expense_application'
|
||||
) {
|
||||
aiExpenseDraft.value = null
|
||||
void expenseFlow.startAiApplicationPreviewFromAction(actionPayload)
|
||||
return
|
||||
}
|
||||
if (actionType === 'select_expense_type') {
|
||||
const expenseType = String(action?.payload?.expense_type || '').trim()
|
||||
const expenseTypeLabel = String(action?.payload?.expense_type_label || action?.label || '').trim()
|
||||
|
||||
Reference in New Issue
Block a user