Files
happy-export/README.md
T
Drsakura 691f315341 docs(readme): 功能模块与开发计划对齐代码现状
功能模块:按应用实际的导航结构重写,补上此前完全没提的模块——
系统管理(用户/权限组/系统日志三级授权与审计)、合同清洗中心、
客户公海、采购单管理、报价单与询盘管理、工作台的汇率计算器、
时区时钟与 AI 助手。

开发计划:订正大规模过期状态。Phase 2(SKU 迁移、阶梯价格、合同解析、
产品图片)与 Phase 3 主体均已实现,原文误标为全部未完成;Phase 4 补标
已完成的订单状态管理,保留未实现的订单备注与 PDF 导出;Phase 5 标出
已完成的 AI 智能分析与客户公海线索转化,保留未做的 GoodJob 集成与
数据源适配。商机管道视图注明 deals 表已建但前端界面待实现。
2026-09-18 11:05:05 +08:00

183 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 外贸供应链管理系统
一个专为外贸企业设计的供应链与客户管理系统。
## 功能模块
### 工作台
- 工作日历:日程安排、节日标注、今日待办
- 汇率计算器与时区时钟
- AI 助手(可接入自有模型)
### 业务管理
- **询盘管理** - 询盘登记、明细与跟进
- **客户报价单管理** - 报价单编制、英文大写金额
- **PI合同管理** - PI 合同台账、收款条件
- **订单管理** - 订单跟踪与状态管理
### 客户管理
- **我的客户** - 客户信息、联系人、跟进记录
- **新客开发** - 线索登记、AI 智能分析
- **客户公海** - 未分配客户的领取与分配
### 采购管理
- **采购单管理** - 采购单登记与跟踪
- **产品管理** - SKU/SPU 两层管理、包装参数、阶梯价格、产品图片
- **供应商管理** - 供应商档案与采购价
- **合同清洗中心** - 合同文件导入、解析与校对
### 系统管理
- **用户管理** - 账号、角色与启停用
- **权限组管理** - 角色 → 权限组 → 权限点三级授权
- **系统日志** - 登录、改密与数据变更审计
## 技术栈
### 后端
- Node.js + Express
- SQLite + better-sqlite3-multiple-ciphers
### 前端
- React 18
- React Router
- Vite
- 原生 CSS
## 快速开始
### 安装依赖
```bash
# 后端
cd backend
npm install
# 前端
cd frontend
npm install
```
### 启动开发环境
```bash
# 启动后端服务器(终端1)
cd backend
npm start
# 启动前端开发服务器(终端2)
cd frontend
npm run dev
```
### 访问系统
- 前端开发地址: http://127.0.0.1:5300
- 后端 API 地址: http://127.0.0.1:4300
### 默认账号
- 用户名: `admin`
- 密码: `admin123`
**⚠️ 首次登录后请立即修改密码!**
## 项目结构
```
happy-export/
├── backend/ # 后端
│ ├── db/ # 数据库
│ │ ├── schema.sql # 数据库结构
│ │ └── db.js # 数据库连接
│ ├── lib/ # 工具库
│ ├── routes/ # API 路由
│ ├── data/ # 数据存储目录
│ ├── uploads/ # 上传文件
│ ├── server.js # 服务器入口
│ └── package.json
├── frontend/ # 前端
│ ├── src/
│ │ ├── components/ # 组件
│ │ ├── pages/ # 页面
│ │ ├── services/ # API 服务
│ │ ├── styles/ # 样式
│ │ ├── App.jsx # 主应用
│ │ └── main.jsx # 入口文件
│ ├── index.html
│ ├── vite.config.js
│ └── package.json
├── docs/ # 文档
└── README.md
```
## 数据库与配置
SQLite 单文件存储:
- 数据库文件:`backend/data/trade.db`
- 首次启动时自动建表
- 支持备份和迁移
- 数据目录与上传文件已在 `.gitignore` 中排除,不会入库
> **已知限制:数据库当前未加密。** 驱动选用的是 `better-sqlite3-multiple-ciphers`
> (本身具备 SQLCipher 能力),但代码尚未设置加密密钥,`trade.db` 以明文存放。
> 部署到共享主机或不可信环境前,请自行启用磁盘加密。
后端可识别的环境变量(全部有代码默认值,不设置也能跑):
| 变量 | 默认值 | 说明 |
| --- | --- | --- |
| `DATA_DIR` | `backend/data` | 数据库与汇率缓存所在目录 |
| `PORT` | `4300` | 后端监听端口 |
| `CONTRACT_RETENTION_DAYS` | `7` | 合同导入原文件的保留天数 |
| `HAPPY_UPDATE_REPO` | `Drsakura/happy-export` | 在线更新检查所用的 GitHub 仓库 |
> 注意:后端**没有引入 dotenv**,不会自动读取 `.env` 文件。
> 请通过系统环境变量、启动脚本或容器编排来设置上述变量。
## 开发计划
Phase 1 至 Phase 3 已完成;Phase 4、Phase 5 部分完成,未完成项保留为待办。
### Phase 1:基础框架 ✅
- [x] 项目结构搭建
- [x] 数据库设计
- [x] 前后端基础框架
- [x] 工作台页面
### Phase 2:供应商与产品管理 ✅
- [x] 迁移 SKU Manager 功能
- [x] 阶梯价格管理
- [x] 合同解析引擎
- [x] 产品图片管理
### Phase 3:客户 CRM
- [x] 客户详细页面
- [x] 联系人管理
- [x] 跟进活动时间线
- [ ] 商机管道视图(`deals` 表已建,前端界面待实现)
### Phase 4:订单管理
- [x] 订单创建和编辑
- [x] 订单状态管理
- [ ] 订单备注系统
- [ ] PDF 导出
### Phase 5:自动获客
- [x] AI 智能分析
- [x] 线索转化(客户公海领取)
- [ ] 集成 GoodJob 获客引擎
- [ ] 数据源适配
## 许可证
本项目采用 [GNU Affero 通用公共许可证 v3.0](LICENSE)(AGPL-3.0)。
你可以自由使用、修改和分发,但需要遵守 AGPL-3.0 的核心义务:
**如果你修改后的版本通过网络对外提供服务,必须向使用者公开你的完整源代码**,
并以同样的许可证授权。完整的条款见 [LICENSE](LICENSE)。
## 作者
Wayne