lead-pool Specification
Purpose
TBD - created by archiving change add-lead-management-system. Update Purpose after archive.
Requirements
Requirement: 公海池线索查询
系统 MUST 提供多条件查询功能,允许用户根据品牌名称、品牌国家/地区、业务线、联系人姓名、手机号、线索来源、线索状态、介绍人、创建时间范围等条件筛选线索。
Scenario: 按品牌名称模糊查询
- WHEN 用户输入品牌名称关键词并点击查询
- THEN 系统返回品牌名称包含该关键词的所有线索(支持中英文模糊匹配)
Scenario: 多条件组合查询
- WHEN 用户选择多个查询条件(品牌国家、线索状态、创建时间范围)并点击查询
- THEN 系统返回同时满足所有条件的线索列表
Scenario: 按手机号查询
- WHEN 用户输入带区号的完整手机号并查询
- THEN 系统返回匹配该手机号的线索记录
Requirement: 线索批量导入
系统 MUST 支持从Excel文件批量导入线索数据,单文件最多5000条记录,单个文件不超过10MB,最多支持3个文件同时导入。
Scenario: 成功导入所有线索
- WHEN 用户上传符合模板要求的Excel文件(所有必填字段完整、格式正确、无重复)
- THEN 系统成功导入所有线索,显示成功数量,线索状态设为"未分配"
Scenario: 部分导入失败
- WHEN 用户上传的Excel文件中部分行存在错误(如必填字段为空、格式错误、品牌组合重复)
- THEN 系统导入正确数据,失败数据生成错误文件(包含失败原因列),并提供下载
Scenario: 文件格式校验失败
- WHEN 用户上传非Excel格式文件(如CSV、PDF)
- THEN 系统拒绝导入并提示"仅支持.xlsx、.xls格式"
Scenario: 文件大小超限
- WHEN 用户上传文件超过10MB
- THEN 系统拒绝导入并提示"文件大小不能超过10MB"
Scenario: 数据量超限
- WHEN 用户上传Excel文件包含超过5000条记录
- THEN 系统拒绝导入并提示"单文件最多支持5000条线索"
Scenario: 下载导入模板
- WHEN 用户点击"下载模板"按钮
- THEN 系统提供空Excel模板文件,表头为国际化字段名(中英双语)
Requirement: 线索批量导出
系统 MUST 支持将当前查询条件下的所有线索导出为Excel文件,最多支持10万条记录,文件名包含时间戳。
Scenario: 导出所有字段
- WHEN 用户点击"导出"按钮且当前查询结果不超过10万条
- THEN 系统生成Excel文件,包含所有线索字段(与列表列配置无关),自动下载到本地
Scenario: 导出数据量超限
- WHEN 当前查询结果超过10万条记录
- THEN 系统提示"导出超过10万条限制,请缩小查询范围",不执行导出
Scenario: 特殊字段处理
- WHEN 用户导出线索数据
- THEN 门店Logo导出为CDN图片URL,名片导出为文件URL列表(逗号分隔),时间字段转换为用户本地时区格式
Requirement: 线索手动分配
系统 MUST 支持将公海池中的线索手动分配给指定的销售人员,分配后线索从公海池移至该销售人员的个人线索池,并发送通知。
Scenario: 单条分配成功
- WHEN 用户选择一条线索并选择归属人(该归属人拥有"线索管理"权限)
- THEN 系统将线索状态从"未分配"更新为"待处理",设置归属人和归属部门,从公海池移除,发送通知给归属人
Scenario: 批量分配成功
- WHEN 用户选择多条线索并选择归属人
- THEN 系统批量更新所有线索的归属人和状态,发送包含线索数量的通知邮件/企微
Scenario: 归属人无权限
- WHEN 用户选择的归属人没有"线索管理"菜单权限
- THEN 系统提示"该用户无线索管理权限,请选择其他用户"
Scenario: 分配通知发送
- WHEN 线索分配成功
- THEN 系统发送多语言通知给归属人(包含线索数量、品牌列表、分配人、分配时间)
Requirement: 公海池线索详情查看
系统 MUST 支持查看线索的完整信息,包括基本信息、品牌信息、联系信息、AI信息(仅AI线索)、其他信息,以及修改记录和跟进记录。
Scenario: 查看线索基本信息
- WHEN 用户点击线索的"详情"按钮
- THEN 系统展示线索的三个Tab页:"线索信息"、"修改记录"、"跟进记录",默认显示"线索信息"
Scenario: 查看AI信息
- WHEN 用户查看AI来源的线索详情
- THEN 系统在"线索信息"页展示"AI信息"区块,包括AI标识、结果标签、来源标签、来源链接、AI抓取时间、数据置信度
Scenario: 查看修改记录
- WHEN 用户切换到"修改记录"Tab
- THEN 系统以时间轴形式展示所有修改记录(最新在前),格式为"时间 用户 修改了 字段: '旧值' → '新值'"
Scenario: 查看跟进记录
- WHEN 用户切换到"跟进记录"Tab
- THEN 系统展示从待办任务同步的拜访记录,格式为" 访问时间 归属人 访问形式 - 合作意向 - 销售阶段 ",点击可展开访问详情
Scenario: 无跟进记录
- WHEN 用户切换到"跟进记录"Tab且该线索无跟进记录
- THEN 系统显示"暂无跟进记录"占位文案
Scenario: 一键复制线索ID
- WHEN 用户点击线索ID旁的复制图标
- THEN 系统将线索ID复制到剪贴板并提示"已复制"
Scenario: 查看门店Logo
- WHEN 用户点击门店Logo图片
- THEN 系统打开图片预览(支持放大、下载)
Scenario: 跳转来源链接
- WHEN 用户点击AI线索的"来源标签"
- THEN 系统在新标签页打开原始信息URL
Requirement: 公海池线索修改
系统 MUST 支持修改公海池中的线索信息,但AI来源字段禁止修改,所有修改需经过唯一性校验和格式校验。
Scenario: 修改基本信息成功
- WHEN 用户点击"编辑"按钮,修改允许编辑的字段(如联系人姓名、邮箱),并保存
- THEN 系统更新线索信息,记录修改人、修改时间、修改内容,关闭编辑弹窗并提示"修改成功"
Scenario: 修改AI字段被拒绝
- WHEN 用户尝试修改AI标识、AI标签、AI抓取时间等AI字段
- THEN 系统禁用这些字段的输入框,不允许修改
Scenario: 品牌组合唯一性校验
- WHEN 用户修改品牌名称或品牌国家/地区后,该组合在公海池或个人线索中已存在
- THEN 系统在字段下方红字提示"品牌'品牌名'在'国家'已存在",并阻止保存
Scenario: 必填字段校验
- WHEN 用户清空必填字段(品牌名称、品牌国家、联系人姓名、公司名称、线索来源、业务线)并尝试保存
- THEN 系统在字段下方红字提示"请完善所有必填项",并阻止保存
Scenario: 联系方式条件必填校验
- WHEN 用户清空所有联系方式(邮箱、电话、手机号、微信)并尝试保存
- THEN 系统提示"至少填写一种联系方式(邮箱、电话、手机号、微信)",并阻止保存
Scenario: 邮箱格式校验
- WHEN 用户输入不符合RFC 5321标准的邮箱格式
- THEN 系统在字段下方实时红字提示"邮箱格式错误"
Scenario: 国际电话格式校验
- WHEN 用户输入不符合E.164国际电话格式的电话号码
- THEN 系统在字段下方实时红字提示"电话格式错误"
Scenario: 网址格式校验
- WHEN 用户输入不以http://或https://开头的网址
- THEN 系统在字段下方实时红字提示"网址格式错误"
Requirement: 公海池线索统计
系统 MUST 在公海池列表页顶部展示统计卡片,包括今日新增线索数、累计线索数、未分配线索数。
Scenario: 显示统计数据
- WHEN 用户进入公海池管理页面
- THEN 系统在查询结果顶部显示3个统计卡片,标签支持多语言,数据实时计算
Requirement: 公海池列表分页与排序
系统 MUST 支持线索列表的分页展示(20/50/100/200/1000条可选)、默认排序(最新修改在前)、可排序列(点击列头排序)。
Scenario: 默认排序
- WHEN 用户进入公海池管理页面
- THEN 系统按"最后更新时间"降序排列线索(最新修改的在前)
Scenario: 点击列头排序
- WHEN 用户点击"品牌名称"列头
- THEN 系统按品牌名称升序排列线索,再次点击切换为降序
Scenario: 切换每页显示数量
- WHEN 用户选择每页显示100条
- THEN 系统重新查询并显示前100条线索,底部显示页码跳转控件
Requirement: 公海池列配置
系统 MUST 支持用户自定义列表显示的列及列顺序。
Scenario: 自定义列显示
- WHEN 用户点击"列配置"图标,拖拽调整列顺序并隐藏部分列,保存配置
- THEN 系统按用户配置显示列,并持久化保存用户配置
Scenario: 恢复默认列配置
- WHEN 用户在"列配置"弹窗中点击"恢复默认"按钮
- THEN 系统恢复默认列配置(品牌名称、品牌国家/地区、业务线、联系人姓名、公司名称、线索来源、线索状态、邮箱、电话、手机、微信、创建人、创建时间、最后归属人、最后归属人部门、最后更新时间、最后跟进时间)