Commit Graph
3 Commits
Author SHA1 Message Date
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
Drsakura 02e985c011 fix(suppliers): 主营类目去重,消除 React 重复 key 警告
splitCats 未去重,源数据里同一类目重复登记时(如「游标卡尺;游标卡尺」)
会渲染出两个 key 相同的 chip。React 会因此报
'Encountered two children with the same key',且该行为官方标注为 unsupported。
在 splitCats 出口处按原顺序去重,既消警告也避免卡片上出现重复标签。

由无头浏览器全站巡检发现(供应商页原本有 22 条此类警告)。
2026-09-10 17:52:56 +08:00
Drsakura d8df2c3960 chore: happy 出口通初始提交(前端 React + 后端 Express,采购管理已原生化) 2026-09-10 16:16:59 +08:00