/** * 机器人回复语 mock:与现网整理表、migration_inq_bot_reply_replace_v1.sql 同源。 * 正式页走主账 /inquiry/botReply;本文件仅对照,共 51 条。 */ export type ReplyItem = { id: string; replyCode?: string; trigger: string; text: string; enabled: boolean; }; export type ReplyCategory = { id: string; title: string; desc: string; tagClass: string; items: ReplyItem[]; }; export const mockReplyCategories: ReplyCategory[] = [ { id: "inquiring", title: "询价中", desc: "工单处于需求识别、TMS 查价或内部协同阶段,尚未形成可向客户出示的正式报价方案。", tagClass: "tag-blue", items: [ { id: "brv10000000000000000000000000001", replyCode: "inquiring.first_chat", trigger: "销售首次单聊机器人", text: "你好,我是询价机器人。请直接描述客户需求,例如「上海到洛杉矶空运,3 件 180kg,下周三前到」,我会解析需求并查询 TMS 标准报价。", enabled: true, }, { id: "brv10000000000000000000000000002", replyCode: "inquiring.ask_transport", trigger: "未识别运输方式", text: "请回复数字或文字,告知我询价的运输方式:\n1.陆运\n2.海运\n3.空运", enabled: true, }, { id: "brv10000000000000000000000000003", replyCode: "inquiring.continue_need_wo", trigger: "续办但未提供工单号", text: "请告诉我要继续的工单号,例如 WO202609140034。", enabled: true, }, { id: "brv10000000000000000000000000004", replyCode: "inquiring.continue_not_found", trigger: "续办找不到工单", text: "找不到工单 {{ticket_no}},请核对工单号后再试。", enabled: true, }, { id: "brv10000000000000000000000000005", replyCode: "inquiring.image_recognizing", trigger: "销售发送图片", text: "正在识别图片", enabled: true, }, { id: "brv10000000000000000000000000006", replyCode: "inquiring.image_tech_fail", trigger: "图片识别失败", text: "图片暂时没认出来,请再发一张或直接打字。", enabled: true, }, { id: "brv10000000000000000000000000007", replyCode: "inquiring.attach_recognizing", trigger: "销售发送附件", text: "正在识别附件", enabled: true, }, { id: "brv10000000000000000000000000008", replyCode: "inquiring.attach_tech_fail", trigger: "附件识别失败", text: "附件暂时没认出来,请再传一次或直接打字。", enabled: true, }, { id: "brv10000000000000000000000000009", replyCode: "inquiring.attach_h5_expired", trigger: "H5 上传链接过期", text: "已过期,请回企微重新说附件询价。", enabled: true, }, { id: "brv10000000000000000000000000010", replyCode: "inquiring.attach_h5_ok", trigger: "H5 上传成功", text: "已收到,请回企微查看识别结果。", enabled: true, }, { id: "brv10000000000000000000000000011", replyCode: "inquiring.pull_group_manual", trigger: "请手动拉人进群并发送工单号", text: "请手动拉相关人员和智能体到原有群,并在群聊发送工单编号{{ticket_no}}", enabled: true, }, { id: "brv10000000000000000000000000012", replyCode: "inquiring.skip_collab_ack", trigger: "销售跳过内部协同", text: "好的,已跳过内部协同。正在按 TMS 标准报价生成报价单草稿…", enabled: true, }, { id: "brv10000000000000000000000000013", replyCode: "inquiring.group_created", trigger: "协同群创建成功", text: "协同群已创建,群名与工单号一致:{{ticket_no}}。已邀请:销售{{sales_name}}、产品{{product_names}}。请在群聊中继续确认报价。", enabled: true, }, { id: "brv10000000000000000000000000014", replyCode: "inquiring.group_exists", trigger: "协同群已存在", text: "协同群已在,群名与工单号一致:{{ticket_no}}。请到该群继续确认报价。", enabled: true, }, { id: "brv10000000000000000000000000015", replyCode: "inquiring.sea_no_staff", trigger: "海运没有可拉的产品人员", text: "没有可拉的产品人员。请先在后台「员工管理」维护本线路的海运产品岗后再试。", enabled: true, }, { id: "brv10000000000000000000000000016", replyCode: "inquiring.land_no_staff", trigger: "陆运没有可拉的产品人员", text: "没有可拉的产品人员。请先在后台「员工管理」维护本线路的陆运产品岗后再试。", enabled: true, }, { id: "brv10000000000000000000000000017", replyCode: "inquiring.group_create_fail", trigger: "建群失败", text: "建群失败,请稍后重试。", enabled: true, }, { id: "brv10000000000000000000000000018", replyCode: "inquiring.quote_generating", trigger: "报价单生成中", text: "报价单正在生成,请稍候。", enabled: true, }, { id: "brv10000000000000000000000000019", replyCode: "inquiring.air_ticket_not_found", trigger: "空运群找不到工单", text: "找不到工单{{ticket_no}},请核对工单号后再试。", enabled: true, }, { id: "brv10000000000000000000000000020", replyCode: "inquiring.air_ticket_not_air", trigger: "工单不是空运单", text: "工单{{ticket_no}}不是空运单,不能在空运群里跟。", enabled: true, }, { id: "brv10000000000000000000000000021", replyCode: "inquiring.air_ticket_occupied", trigger: "空运工单已在另一个群", text: "工单{{ticket_no}}已经在另一个群跟了,请到那个群继续。", enabled: true, }, { id: "brv10000000000000000000000000022", replyCode: "inquiring.group_only_product", trigger: "非产品人员在群里报价", text: "只有产品能报价格,请产品在群里发价格或 Excel/PDF", enabled: true, }, { id: "brv10000000000000000000000000023", replyCode: "inquiring.group_file_saved", trigger: "群附件已保存", text: "附件已保存后台", enabled: true, }, { id: "brv10000000000000000000000000024", replyCode: "inquiring.air_lock_need_wo", trigger: "空运锁舱/释放未带工单号", text: "锁舱或释放舱位请带上工单号,例如 WO202609160001锁舱。", enabled: true, }, { id: "brv10000000000000000000000000025", replyCode: "inquiring.air_lock_need_quote", trigger: "没有报价不能锁舱", text: "工单{{ticket_no}}还没有报价,不能锁舱。", enabled: true, }, { id: "brv10000000000000000000000000026", replyCode: "inquiring.air_airline_only_cabin", trigger: "只有航线能锁舱或释放", text: "只有岗位为「航线·空运」的人能锁舱或释放舱位。", enabled: true, }, { id: "brv10000000000000000000000000027", replyCode: "inquiring.air_lock_ok", trigger: "空运锁舱成功", text: "工单{{ticket_no}} 已通知TMS执行空运锁舱,执行成功。\n操作人:{{operator}}\n舱位选项:{{option_no}}\n执行编号:{{exec_no}}\n报价编号:{{quote_no}}", enabled: true, }, { id: "brv10000000000000000000000000028", replyCode: "inquiring.air_lock_fail", trigger: "空运锁舱失败", text: "工单{{ticket_no}} 空运锁舱失败。\n操作人:{{operator}}\n锁舱失败的原因:{{reason}}\n已通知IT运维排查,请稍等。", enabled: true, }, { id: "brv10000000000000000000000000029", replyCode: "inquiring.air_release_ok", trigger: "空运释放成功", text: "工单{{ticket_no}} 已通知TMS执行空运释放舱位成功\n操作人:{{operator}}\n舱位选项:{{option_no}}\n执行编号:{{exec_no}}\n报价编号:{{quote_no}}", enabled: true, }, { id: "brv10000000000000000000000000030", replyCode: "inquiring.air_release_fail", trigger: "空运释放失败", text: "工单{{ticket_no}} 空运释放舱位失败。\n操作人:{{operator}}\n释放舱位失败的原因:{{reason}}\n已通知IT运维排查,请稍等。", enabled: true, }, { id: "brv10000000000000000000000000031", replyCode: "inquiring.air_release_deal_blocked", trigger: "已成交不能释放舱位", text: "释放舱位失败,工单{{ticket_no}}已成交。", enabled: true, }, { id: "brv10000000000000000000000000032", replyCode: "inquiring.air_release_need_lock", trigger: "没有有效锁舱不能释放", text: "工单{{ticket_no}}还没有有效锁舱,不能释放。", enabled: true, } ], }, { id: "quoted", title: "已报价", desc: "系统已出具结构化报价方案或最终报价单,销售可确认采用、调价或等待成交跟进。", tagClass: "tag-blue", items: [ { id: "brv10000000000000000000000000033", replyCode: "quoted.reject_ack", trigger: "销售选择「不采用」", text: "请问如何调整报价单,以满足您的需求?请说明要调哪一项费用,例如「提货费加 10%」。", enabled: true, }, { id: "brv10000000000000000000000000034", replyCode: "quoted.adopt_excel", trigger: "销售确认采用 → 生成 Excel", text: "已确认采用该方案,正在生成 Excel 最终报价单…", enabled: true, }, { id: "brv10000000000000000000000000035", replyCode: "quoted.adopt_pdf", trigger: "销售确认采用 → 生成 PDF", text: "已确认采用该方案,正在生成PDF最终报价单…", enabled: true, }, { id: "brv10000000000000000000000000036", replyCode: "quoted.template_missing", trigger: "后台未维护报价模板", text: "生成报价单失败,请联系IT运维维护后台报价模板。", enabled: true, }, { id: "brv10000000000000000000000000037", replyCode: "quoted.file_ready", trigger: "最终报价单生成完成", text: "已生成{{kind}}最终报价单:{{filename}}(工单 {{ticket_no}})", enabled: true, } ], }, { id: "deal", title: "已成交", desc: "客户已确认接受报价,工单进入终态,停止智能体跟进。", tagClass: "tag-green", items: [ { id: "brv10000000000000000000000000038", replyCode: "deal.recorded_won", trigger: "销售选择「成交」", text: "已记录为「已成交」。工单 {{ticket_no}} 已关闭智能体跟进。", enabled: true, } ], }, { id: "negotiating", title: "协商中", desc: "销售或客户对当前方案不满意,正在进行调价、换舱、条款沟通,或成交跟进中选择顺延。", tagClass: "tag-amber", items: [ { id: "brv10000000000000000000000000039", replyCode: "negotiating.recorded", trigger: "成交跟进中选择「协商中」", text: "已记录为「协商中」。已顺延三个工作日,{{followup_when}}的9:00再次发起成交状态询问。", enabled: true, } ], }, { id: "lost", title: "未成交", desc: "客户明确拒绝或销售确认未成单,须记录原因并通知负责人,工单进入终态。", tagClass: "tag-rose", items: [ { id: "brv10000000000000000000000000040", replyCode: "lost.ask_reason", trigger: "成交跟进中选择「未成交」且未写原因", text: "已记录为「未成交」。请补充未成交原因。", enabled: true, }, { id: "brv10000000000000000000000000041", replyCode: "lost.reason_ack", trigger: "销售回复未成交原因", text: "已记下未成交原因:{{lost_reason}}。", enabled: true, } ], }, { id: "closed", title: "已关闭", desc: "工单长期无有效推进,由系统自动关闭或人工手动关闭,不等同于客户明确拒绝。", tagClass: "tag-rose", items: [ { id: "brv10000000000000000000000000042", replyCode: "closed.air_cannot_activate", trigger: "空运工单已是终态仍要激活", text: "工单{{ticket_no}}已是「{{status}}」,不能再激活。", enabled: true, } ], }, { id: "event-ex", title: "事件异常", desc: "业务流程中参与方响应超时等业务侧异常,写入工单「事件异常」字段,需人工跟进。", tagClass: "tag-amber", items: [ ], }, { id: "sys-ex", title: "系统异常", desc: "大模型、TMS、企微建群等系统侧调用失败,写入工单「系统异常」字段。", tagClass: "tag-rose", items: [ { id: "brv10000000000000000000000000043", replyCode: "sys.llm_fail", trigger: "大模型调用失败(销售侧)", text: "大模型服务异常,IT排查中...", enabled: true, }, { id: "brv10000000000000000000000000044", replyCode: "sys.tms_fail", trigger: "TMS 接口失败(销售侧)", text: "TMS接口异常,IT运维排查中...", enabled: true, }, { id: "brv10000000000000000000000000045", replyCode: "sys.group_add_fail", trigger: "企微添加成员失败", text: "无法添加 {{staff_name}} 同事,请联系管理员检查企业微信配置。", enabled: true, }, { id: "brv10000000000000000000000000046", replyCode: "sys.tms_recovery", trigger: "TMS 已恢复", text: "TMS已恢复正常使用,感谢您的耐心等待。", enabled: true, }, { id: "brv10000000000000000000000000047", replyCode: "sys.llm_recovery", trigger: "大模型已恢复", text: "大模型已恢复正常使用,感谢您的耐心等待。", enabled: true, }, { id: "brv10000000000000000000000000048", replyCode: "sys.cabin_recovery", trigger: "空运舱位接口已恢复", text: "空运舱位接口已恢复正常使用,感谢您的耐心等待。", enabled: true, }, { id: "brv10000000000000000000000000049", replyCode: "sys.group_recovery", trigger: "建群已恢复", text: "建群已恢复正常,感谢您的耐心等待。", enabled: true, } ], }, { id: "transfer", title: "转人工", desc: "AI 无法独立完成询价时,引导销售确认是否拉内部航线/产品进群协同。", tagClass: "tag-violet", items: [ { id: "brv10000000000000000000000000050", replyCode: "transfer.already_collab", trigger: "该工单已拉过产品进群", text: "该工单已拉产品进群协同。", enabled: true, }, { id: "brv10000000000000000000000000051", replyCode: "transfer.air_hint", trigger: "空运转人工(不自动建群)", text: "触发转人工,请手动把航线和智能体拉进原有空运群,并发送工单号 {{ticket_no}}。", enabled: true, } ], } ];