11 Commits

Author SHA1 Message Date
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
3c009350d7 feat: 前端性能优化(任务23)
- 创建防抖Hooks
  * useDebounce - 延迟更新值直到用户停止输入
  * useDebouncedCallback - 创建防抖的回调函数
  * 支持自定义延迟时间(默认300ms)

- 创建SWR缓存Hooks
  * useTemplates - 缓存模板列表
  * useTemplate - 缓存单个模板详情
  * 配置智能缓存策略(5秒去重、错误重试)
  * 支持手动刷新数据

- 现有优化
  * 字段验证使用useMemo避免重复计算
  * 表单组件使用React.memo和useCallback优化渲染
  * 拖拽排序使用防抖避免频繁更新

性能提升:
- 减少不必要的API请求
- 优化表单输入响应速度
- 提升大表单的渲染性能
2025-12-13 15:33:10 +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
adf4af21a2 docs: 更新任务列表状态 2025-12-13 15:23:49 +08:00
WuYongJie
b065ecdce6 feat: 增强select字段的选项管理(任务10)
- 添加选项列表输入框
  * 支持每行一个选项的简单格式
  * 支持JSON数组格式
  * 使用等宽字体便于编辑

- 自动处理选项值
  * 保存时自动清洗和规范化(已在后端实现)
  * 自动去重选项(已在field-pool.ts实现)
  * 展开嵌套数组格式(已在field-pool.ts实现)
  * 转换为JSON字符串存储(已在TemplateManager实现)

- 优化用户体验
  * 仅在select和radio类型时显示选项输入框
  * 提供清晰的格式说明和示例
  * 添加提示信息说明自动处理功能
2025-12-13 15:23:26 +08:00
WuYongJie
ad888185ec feat: 优化字段创建和管理UI(任务9)
- 添加实时字段key验证
  * 验证格式:必须以字母开头,只能包含字母、数字和下划线
  * 验证唯一性:检测重复的字段key
  * 验证长度:不超过50个字符
  * 显示错误和警告提示

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

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

- 添加字段删除确认对话框
  * 删除前显示确认对话框
  * 提示删除的影响和不可撤销性
  * 美观的对话框UI设计
2025-12-13 15:22:31 +08:00
WuYongJie
40cf6f6c26 feat: 完成阶段1和阶段2优化任务
阶段1: 核心基础设施优化
- 完善模板验证工具(template-validator.ts)
- 优化上传API的模板验证
- 增强字段池同步机制(支持增量同步和重试)
- 优化选项清洗逻辑(处理10种脏数据场景)

阶段2: 模板管理功能增强
- 实现模板版本控制(并发冲突检测)
- 增强模板数据完整性验证(必填字段、字段key唯一性)
- 优化模板CRUD API错误处理(统一格式、Prisma错误处理)
- 实现模板使用统计(materialCount、字段填写率分析)

详细改进:
- lib/field-pool.ts: 新增OptionCleaningIssue枚举、增强normalizeFieldOptionValue函数、支持增量同步
- app/api/admin/upload-templates/route.ts: 增强验证逻辑、优化错误处理、添加materialCount统计
- app/api/admin/upload-templates/[id]/route.ts: 版本控制、字段统计、删除保护、详细日志
- .kiro/specs/template-system-optimization/tasks.md: 更新任务完成状态(8/30完成)
2025-12-13 15:07:11 +08:00
WuYongJie
6756d5e72c feat: 完成阶段1核心基础设施优化
✅ 任务1: 完善模板验证工具
- 添加详细的错误代码和错误信息
- 添加性能监控(记录验证耗时)
- 添加模板状态检查
- 添加批量验证功能
- 添加结构化日志记录

✅ 任务2: 优化上传API的模板验证
- 集成增强的validateTemplateId函数
- 添加详细的验证日志
- 返回错误代码便于前端处理

✅ 任务3: 增强字段池同步机制
- 添加增量同步支持
- 添加同步失败重试机制(指数退避)
- 添加详细的同步统计信息
- 添加同步日志和监控
- 优化错误处理

相关需求: 1.1-1.4, 3.1-3.4, 6.1-6.4, 24.1-24.5
2025-12-13 14:48:03 +08:00
WuYongJie
542c7bcc49 feat: 优化自定义上传模板系统
- 修复内置模板验证问题(builtin-video-material等)
- 添加模板验证工具 lib/template-validator.ts
- 创建模板系统优化需求文档(30个详细需求)
- 优化上传API的模板验证逻辑
- 改进错误提示信息的清晰度
- 添加字段池和分类管理相关需求
- 完善自定义字段的创建、验证、存储逻辑
- 清理过期的 .specstory 和 .trae 文件
2025-12-13 14:26:43 +08:00