16 Commits

Author SHA1 Message Date
WuYongJie
074b1e1bdc 加入本地时间回拨检测 2026-05-26 16:04:30 +08:00
WuYongJie
fc5c4fefe6 加入许可证请求签名防重放 2026-05-26 15:33:14 +08:00
WuYongJie
07192cf779 加入许可证在线租约校验 2026-05-26 15:10:35 +08:00
WuYongJie
b267b36486 启用生产镜像服务端混淆构建 2026-05-26 14:51:00 +08:00
WuYongJie
c7d93111c4 补充公开分享总开关并兼容转码恢复缺表场景 2026-05-26 11:18:18 +08:00
WuYongJie
25316809db 整理项目文档入口与历史资料 2026-05-25 16:57:08 +08:00
WuYongJie
ba98bf22cc feat: 添加许可证系统、Agent部署模块和Harbor镜像管理
- 新增许可证服务器 (license-server/)
- 新增 Agent 部署模块 (flnxi-agent/)
- 添加许可证验证和激活页面
- 添加 Harbor 镜像同步脚本
- 更新素材系统支持许可证验证
2025-12-15 21:19:46 +08:00
WuYongJie
63ec6b7dfb fix: 修复排行榜按钮消失、tag排序和输入框浅色模式问题
1. 排行榜悬浮窗关闭后小按钮消失问题
   - 修复面板居中模式关闭时按钮位置错误
   - 保存并恢复按钮的居中状态

2. 首页tag按钮按素材数量排序
   - 添加按素材数量降序排序逻辑

3. 上传弹窗输入框浅色模式文字不可见
   - 添加 text-slate-900 确保浅色模式下文字可见
   - 添加 placeholder 样式确保占位符正确显示
2025-12-14 21:41:29 +08:00
WuYongJie
4360b0d5d8 docs: 完成用户手册编写(任务27)
创建完整的用户手册:
- 系统概述
  * 什么是自定义上传模板
  * 为什么需要自定义模板
  * 内置模板 vs 自定义模板

- 如何创建自定义模板(6个步骤)
  * 步骤1:进入模板管理页面
  * 步骤2:选择起始模板
  * 步骤3:配置基本信息
  * 步骤4:配置字段(详细说明)
  * 步骤5:预览和保存
  * 步骤6:启用模板

- 字段配置详解
  * 字段键名规则和示例
  * 8种字段类型说明
  * 字段属性配置
  * 字段操作(排序、复制、删除)

- 如何使用分类管理
  * 分类管理的作用
  * 哪些字段会进入分类管理
  * 如何管理分类选项
  * 分类字段的同步机制

- 常见问题解答(10个FAQ)
  * 字段键名规则
  * 模板修改注意事项
  * 版本冲突处理
  * 模板删除限制
  * 选项管理优化
  * 首页筛选配置
  * 字段填写率分析
  * 批量更新方案
  * 模板导入导出
  * 新模板测试流程

- 附录:字段类型详解
  * 8种字段类型的详细说明
  * 适用场景和配置选项

文档位置:docs/user-guide/template-system-guide.md
2025-12-13 15:44:15 +08:00
WuYongJie
473176997a docs: 完成API文档编写(任务26)
创建完整的API文档:
- 模板管理API(5个接口)
  * 获取模板列表
  * 获取模板详情(含使用统计)
  * 创建模板(含验证规则)
  * 更新模板(含版本控制)
  * 删除模板(含使用检查)

- 模板验证API
  * 内置模板验证逻辑
  * 自定义模板验证逻辑
  * 内置模板列表

- 字段池管理API(2个接口)
  * 获取字段池列表
  * 同步字段池

- 分类字段管理API
  * 获取分类管理字段

- 错误代码规范
  * 统一错误响应格式
  * 常见错误代码说明

- 性能指标
  * 响应时间目标
  * 数据库优化说明(20+个索引)

- 最佳实践
  * 版本控制使用方法
  * 错误处理示例
  * 字段验证示例
  * 性能优化建议

文档位置:docs/api/template-system-api.md
2025-12-13 15:42:39 +08:00
WuYongJie
82623a005f feat: 数据库查询优化(任务22)
- 添加UploadTemplate表索引
  * status - 按状态筛选模板
  * materialType - 按素材类型筛选
  * materialKind - 按素材大类筛选
  * createdAt/updatedAt - 按时间排序

- 添加UploadField表索引
  * templateId - 查询模板的字段
  * key - 按字段键名查询
  * type - 按字段类型筛选
  * visibleOnHomeFilter - 查询首页筛选字段
  * isSearchable - 查询可搜索字段
  * addToCategory - 查询分类管理字段
  * orderIndex - 字段排序
  * templateId+orderIndex - 复合索引优化排序查询

- 添加FieldDefinition表索引
  * source - 按来源筛选(standard/custom)
  * isStandard - 查询标准字段
  * isFilterEnabled - 查询启用的筛选字段
  * filterOrder - 筛选字段排序
  * isFilterEnabled+filterOrder - 复合索引优化筛选查询

- 添加FieldOption表索引
  * fieldId - 查询字段的选项
  * fieldId+orderIndex - 复合索引优化选项排序

数据库迁移: 20251213073100_add_template_system_indexes
2025-12-13 15:31:47 +08:00
WuYongJie
ad888185ec feat: 优化字段创建和管理UI(任务9)
- 添加实时字段key验证
  * 验证格式:必须以字母开头,只能包含字母、数字和下划线
  * 验证唯一性:检测重复的字段key
  * 验证长度:不超过50个字符
  * 显示错误和警告提示

- 添加字段复制功能
  * 一键复制字段配置
  * 自动生成新的唯一key(添加_copy后缀)
  * 复制后自动滚动到新字段

- 优化拖拽排序体验
  * 添加拖拽手柄图标
  * 启用字段卡片的draggable属性
  * 优化拖拽时的视觉反馈

- 添加字段删除确认对话框
  * 删除前显示确认对话框
  * 提示删除的影响和不可撤销性
  * 美观的对话框UI设计
2025-12-13 15:22:31 +08:00
WuYongJie
d1c6efc79d feat: NAS 部署与 Harbor 推送流程
Some checks failed
CI Check / check (push) Has been cancelled
2025-12-03 14:39:06 +08:00
WuYongJie
8705b9846a feat: 统一弹窗样式系统与分类管理优化
Some checks failed
CI Check / check (push) Has been cancelled
- 创建统一的Modal组件,采用Apple风格设计
- 实现毛玻璃效果、圆角、动画和细边框描边
- 修复弹窗打开时背景滚动问题
- 修复分类管理中重复卡片和数组字符串显示问题
- 优化选项解析逻辑,添加去重和过滤机制
2025-11-25 09:37:00 +08:00
WuYongJie
e4dcb6260a feat: Admin页面重构 & UI三层架构系统
Some checks failed
CI Check / check (push) Has been cancelled
- 创建统一UI三层架构系统(基础层、颜色层、组合层)
- 拆分Admin页面为独立Tab组件(MonitorTab、UsersTab、DepartmentsTab等)
- 提取公共逻辑到Hooks(useToast、useDataFetch、useUserOperations等)
- 提取工具函数(validators、formatters、api等)
- 创建统一弹窗组件(Modal)和useModal Hook
- 添加错误边界和统一状态组件
- 完善类型定义和可访问性支持
- 更新文档(优化记录、优化计划、更新日志)
2025-11-22 15:17:10 +08:00
WuYongJie
f646b71813 chore: 初始化本地仓库并同步最近改动
Some checks failed
CI Check / check (push) Has been cancelled
2025-11-18 17:50:16 +08:00