3.6 KiB
3.6 KiB
客户跟进功能实现总结
已完成的改动
1. 侧边栏导航
✅ 在"客户信息管理"旁边新增了"客户跟进"导航项
2. 客户跟进页面
✅ 创建了完整的客户跟进管理页面,包含:
2.1 表单字段
- 客户名称: 下拉框选择,数据源来自客户列表
- 成交状态: 下拉框选择 (未成交/已成交)
- 客户级别: 下拉框选择
- A级 - 重点客户
- B级 - 潜在客户
- C级 - 一般客户
- 客户行业: 文本输入框
- 跟进时间: 日期时间选择器
2.2 跟进列表
- 显示所有跟进记录
- 包含分页功能
- 显示通知状态 (已通知/待通知)
- 支持删除操作
3. 后端实现
3.1 数据模型 (models/followup.go)
- FollowUp 结构体
- CreateFollowUpRequest
- UpdateFollowUpRequest
3.2 存储层 (internal/storage/followup_storage.go)
- CRUD 操作
- 获取待通知的跟进记录
- 标记通知已发送
3.3 处理器 (internal/handlers/followup_handler.go)
- HTTP 请求处理
- 飞书 Webhook 集成
- 自动通知检查
3.4 API 路由 (cmd/server/main.go)
- GET /api/followups - 获取跟进列表
- POST /api/followups - 创建跟进
- GET /api/followups/:id - 获取单个跟进
- PUT /api/followups/:id - 更新跟进
- DELETE /api/followups/:id - 删除跟进
- GET /api/customers/list - 获取客户列表
4. 飞书机器人通知
4.1 通知机制
- 后台定时任务每分钟检查一次
- 当跟进时间到达时自动发送通知
- 通知内容: "@所有人 请及时跟进"客户名称""
- 使用飞书卡片消息格式
4.2 配置方式
通过环境变量配置:
export FEISHU_WEBHOOK_URL="https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxx"
5. 前端实现 (frontend/)
5.1 HTML (index.html)
- 新增客户跟进导航项
- 新增客户跟进页面区域
- 表单和列表展示
5.2 JavaScript (js/main.js)
- 页面切换逻辑
- 表单提交处理
- 数据加载和渲染
- 分页控制
- 删除操作
技术特点
- 完整的 CRUD 功能: 支持创建、读取、更新、删除跟进记录
- 自动化通知: 后台定时检查并自动发送飞书通知
- 用户友好:
- 客户名称下拉选择
- 日期时间选择器
- 清晰的通知状态显示
- 数据持久化: 使用 JSON 文件存储
- 分页支持: 前后端都支持分页
- 响应式设计: 适配移动端和桌面端
数据存储
- 跟进记录存储在:
./data/followups.json - 客户数据存储在:
./data/customers.json
使用说明
- 点击侧边栏"客户跟进"进入页面
- 点击"添加跟进"按钮显示表单
- 填写所有必填字段
- 点击"确认"创建跟进记录
- 系统会在设定时间自动发送飞书通知
注意事项
- 需要配置
FEISHU_WEBHOOK_URL环境变量才能使用通知功能 - 飞书机器人需要添加到对应的群聊中
- 确保服务器时区设置正确
- 每条跟进记录只会发送一次通知
文件清单
新增文件:
models/followup.go- 跟进数据模型internal/storage/followup_storage.go- 跟进存储层internal/handlers/followup_handler.go- 跟进处理器README_FOLLOWUP.md- 功能说明文档IMPLEMENTATION_SUMMARY.md- 本文件
修改文件:
cmd/server/main.go- 添加跟进路由和后台任务frontend/index.html- 添加跟进页面UIfrontend/js/main.js- 添加跟进页面逻辑
构建和运行
# 构建
go build ./cmd/server/main.go
# 运行 (可选配置飞书 Webhook)
export FEISHU_WEBHOOK_URL="your_webhook_url"
go run ./cmd/server/main.go
服务器将在 http://localhost:8081 启动