7 天内独立完成从需求调研到部署上线的全栈数据管理平台,利用 AI 辅助开发(Vibe Coding)为传统化工企业构建可视化销售管理工具,现已在内部试点团队使用。

xx 化工企业(客户要求保密)是一家化工产品贸易公司,主营纯碱、尿素、小苏打三类产品,全国设有 5 个销售区域,覆盖 31 个省市,销售团队分布在不同大区。本次受邀协助制作可视化销区管理系统。
公司的销售数据管理长期依赖 Excel 表格——客户信息、区域分配、销量统计全部靠手动维护的电子表格。随着业务增长,这种方式暴露出明显的痛点:
与销售团队沟通后,梳理了现有的业务结构和数据流:
| 功能模块 | 用户价值 |
|---|---|
| 全国销售地图 | 一目了然看到全国各省 / 市的销售分布,颜色深浅代表销量大小 |
| 省份下钻 | 点击省份进入该省地图,查看各市的销售详情和客户列表 |
| 三产品切换 | 纯碱 / 尿素 / 小苏打一键切换,各自独立的数据视图 |
| 客户管理后台 | 增删改查客户信息,支持多地区关联、批量操作 |
| Excel 批量导入 | 保留业务方熟悉的 Excel / CSV 工作方式,上传即可自动解析入库 |
| 销区配色地图 | 5 个销区用不同颜色标注,含业务员 hover 信息 |
作为一个产品经理背景的开发者,我选择用 AI 辅助开发(Vibe Coding)来完成这个项目。核心考虑是:
| 决策点 | 背景 | 我的判断 |
|---|---|---|
| 数据库从 SQLite 迁移到 PostgreSQL | 项目初期用 SQLite 快速验证,但上线需要生产级数据库 | 数据量不大且都是演示数据,迁移成本低,果断切换 |
| 客户数据模型重构 | 最初一个客户只能对应一个地区,业务方反馈一个客户可能在多城市有业务 | 引入一对多关联(Customer → SalesCoverage),重构数据库 schema |
React 前端(ECharts 地图可视化)
↓
Node.js 后端(Express + Prisma ORM)
↓
PostgreSQL 数据库




| 阶段 | 时间 | 工作内容 |
|---|---|---|
| 需求调研 | Day 1 | 与销售团队沟通,收集销区划分、组织架构、数据格式等业务信息 |
| V1:销区地图 | Day 2 | 完成基础中国地图 + 5 销区配色 + 销区信息面板 + 内蒙古城市级拆分 |
| V2:全栈系统 | Day 3-4 | 搭建 Node.js 后端 + 数据库,实现客户管理 CRUD、地图热力图、省份下钻、产品切换 |
| V3:功能完善 | Day 5 | 客户多地区关联重构、Excel 批量导入、批量删除、UI 美化 |
| 部署上线 | Day 6-7 | 阿里云 ECS 部署、Nginx 配置、子域名方案、PostgreSQL 迁移、CI/CD 配置 |
| 技术点 | 实现方式 | 解决的业务问题 |
|---|---|---|
| 中国地图可视化 | ECharts + 阿里 DataV GeoJSON | 直观展示全国销售分布,替代 Excel 数据表 |
| 省份下钻 | 动态加载省级 GeoJSON + 后端 API 联动 | 支持从全国 → 省 → 市的逐级查看 |
| 客户多地区模型 | Prisma 一对多关联(Customer → SalesCoverage) | 支持一个客户在多个城市有业务的真实场景 |
| Excel 智能导入 | Multer + xlsx.js + 自动 adcode 映射 | 保留业务方熟悉的 Excel 工作方式,同名客户自动合并 |
| 生产级部署 | Nginx 反向代理 + PM2 进程管理 + GitHub Actions CI/CD | 子域名访问、后端自动重启、push 自动部署 |