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
This commit is contained in:
+22
-6
@@ -6,15 +6,15 @@ export default defineConfig({
|
||||
server: {
|
||||
port: 5300,
|
||||
proxy: {
|
||||
// SKU 能力代理(过渡期):前端统一以 /api/sku/* 访问,避免跨域与端口耦合。
|
||||
// 后端正式合并(P1)完成后可直接删除本段。
|
||||
// 产品目录(SKU)与产品图现在都由 happy 后端(4300)提供 —— 独立 SKU 服务已并入,
|
||||
// 3300 不再存在。前缀与路径保持原样(/api/sku/groups → 4300/api/sku/groups),
|
||||
// 前端代码零改动。写操作要记「上传者 / 调价人」,必须走 4300 才有人可记。
|
||||
'/api/sku': {
|
||||
target: 'http://127.0.0.1:3300',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/api\/sku/, '/api')
|
||||
target: 'http://127.0.0.1:4300',
|
||||
changeOrigin: true
|
||||
},
|
||||
'/product-images': {
|
||||
target: 'http://127.0.0.1:3300',
|
||||
target: 'http://127.0.0.1:4300',
|
||||
changeOrigin: true
|
||||
},
|
||||
'/api': {
|
||||
@@ -22,5 +22,21 @@ export default defineConfig({
|
||||
changeOrigin: true
|
||||
}
|
||||
}
|
||||
},
|
||||
build: {
|
||||
rollupOptions: {
|
||||
output: {
|
||||
/* 把「很少变」的第三方库拆成独立 chunk:
|
||||
* 1) 首屏只需再下载业务代码,React 这些体积大头可以长期缓存,发版不用重新下载;
|
||||
* 2) 配合页面懒加载,首屏体积能降一大截。
|
||||
* 只分两组,不按库细分 —— 拆太碎会变成一堆小请求,反而更慢。 */
|
||||
manualChunks: {
|
||||
'vendor-react': ['react', 'react-dom', 'react-router-dom'],
|
||||
'vendor-axios': ['axios']
|
||||
}
|
||||
}
|
||||
},
|
||||
/* 业务代码已按页面拆分,单块都不大;阈值放宽,免得控制台刷一堆体积警告 */
|
||||
chunkSizeWarningLimit: 700
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user