Files
happy-export/docs/DEVELOPMENT.md
T
Drsakura 13d67c804f feat: 多用户权限体系、AI 助手、SKU 目录与合同清洗(开源准备)
本地长期开发成果的整体入库快照,包含后端鉴权/权限、AI 接入、合同解析、
SKU 目录等模块,以及前端相应页面与样式改版。

后端
- 新增鉴权与会话:scrypt 密码哈希、HttpOnly cookie(happy_sid)、登录失败锁定
- 新增「角色 → 权限组 → 权限点」三级权限模型与审计日志
- 新增 AI 提供商接入与预设(兼容 OpenAI 协议,内置 DeepSeek / 通义千问等)
- 新增合同解析、合同文件保留策略、客户归属与访问控制
- 新增 SKU 目录、组织品牌、新客开发、系统日志等路由

前端
- 新增登录页与用户 / 权限组 / 系统日志管理页
- 新增客户详情、客户公海、询盘详情、报价编辑器、合同清洗中心
- 新增 AI 配置、组织品牌、包装参数、SKU 选择器等组件
- 新增英文大写金额、未保存改动拦截、抽屉与骨架屏
- 新增 stage1 样式层;产品、供应商、订单等页面改版
- EmbeddedSku 页面并入现有产品体系后删除

开源准备
- 新增 AGPL-3.0 LICENSE
- README:移除未启用的 SQLCipher 加密声明(改为如实的「已知限制」)、
  补充环境变量说明、许可证由「私有项目」改为 AGPL-3.0
- 移除历史遗留的空文件 _index_backup.txt
- 文档中的项目路径更新为 happy-export
2026-09-17 14:53:02 +08:00

3.0 KiB
Raw Blame History

项目开发指南

当前进度

✅ Phase 1 已完成:基础框架搭建

已完成的工作

  1. 项目结构

    • 前后端分离架构
    • 标准化目录结构
    • 开发环境配置
  2. 数据库设计

    • 完整的表结构设计
    • 索引优化
    • SQLite + SQLCipher 加密
  3. 后端 API

    • Express 服务器
    • 数据库连接层
    • 基础 CRUD 接口
    • 健康检查接口
  4. 前端页面

    • React + React Router
    • 6个核心页面:
      • 工作台(Dashboard)
      • 供应商管理
      • 产品管理
      • 客户管理
      • 订单管理
      • 新客开发
    • 响应式布局
    • 完整的样式系统

下一步工作

立即可做

  1. 安装依赖并启动

    cd D:\wayne\Personal\happy-export
    
    # 安装后端依赖
    cd backend
    npm install
    
    # 安装前端依赖
    cd ..\frontend
    npm install
    
    # 或者直接双击 start.bat
    
  2. 测试基础功能

短期规划(1-2周)

  1. 迁移 SKU Manager 核心功能

    • 复制合同解析引擎
    • 复制产品管理逻辑
    • 复制图片处理功能
    • 复制 AI 配置模块
  2. 完善供应商管理

    • 供应商详情页
    • 阶梯价格表录入
    • 报价记录管理
    • 导入导出功能
  3. 完善产品管理

    • 产品详情页
    • SKU/SPU 两层管理
    • 包装参数编辑
    • 产品图片上传

中期规划(3-4周)

  1. 客户 CRM

    • 客户详情页
    • 联系人管理
    • 跟进记录时间线
    • 商机管道视图
  2. 订单管理

    • 订单创建向导
    • 订单详情页
    • 订单状态流转
    • 订单备注系统
  3. 报价单生成

    • 客户报价单
    • PDF 导出
    • 模板定制

长期规划(1-2个月)

  1. 自动获客

    • 集成 GoodJob 获客引擎
    • 数据源适配器
    • AI 智能分析
    • 线索转化流程
  2. 高级功能

    • 权限管理系统
    • 数据分析报表
    • 导入导出优化
    • 移动端适配

技术决策记录

为什么选择 SQLite?

  • 单文件数据库,备份简单
  • 支持加密(SQLCipher)
  • 适合中小规模(10万级数据)
  • 零配置,易于部署

为什么选择 React?

  • 组件化开发效率高
  • 生态系统成熟
  • 与 GoodJob 技术栈一致

为什么不用现成的 ERP?

  • ERPNext 过于复杂,定制成本高
  • 需要高度定制化的业务流程
  • 完全掌控代码和数据

常见问题

Q: 如何备份数据?

A: 直接复制 backend/data/trade.db 文件

Q: 如何迁移到 MySQL?

A: 修改 backend/db/db.js 使用 mysql2 驱动

Q: 如何部署到服务器?

A:

  1. 后端:npm start 或 PM2
  2. 前端:npm run build 后用 Nginx 托管
  3. 配置反向代理

Q: 如何集成 SKU Manager?

A:

  1. 复制 lib/ 目录下的解析器
  2. 复制 parsers/ 目录
  3. 调整数据库表结构对应关系

联系方式

项目负责人:Wayne