WuYongJie
|
7b9260d8d7
|
接入模板迁移前端预览
|
2026-05-28 17:26:20 +08:00 |
|
WuYongJie
|
0fcbd3bcb3
|
补充模板迁移预览
|
2026-05-28 17:12:32 +08:00 |
|
WuYongJie
|
a2776f68ae
|
收紧AI改图素材权限
|
2026-05-28 16:08:49 +08:00 |
|
WuYongJie
|
965871f8dc
|
前移上传模板可用性校验
|
2026-05-28 15:58:10 +08:00 |
|
WuYongJie
|
7157cd318a
|
补齐模板保存基础校验
|
2026-05-28 15:50:54 +08:00 |
|
WuYongJie
|
c52aff5245
|
保护使用中模板搜索和填写字段
|
2026-05-28 15:36:24 +08:00 |
|
WuYongJie
|
ebabeb94e2
|
阻断使用中模板取消分类字段
|
2026-05-28 15:23:32 +08:00 |
|
WuYongJie
|
5a1affe830
|
强化商业化地基权限与模板一致性
|
2026-05-28 15:11:36 +08:00 |
|
WuYongJie
|
111bb29a1a
|
完善付费模块包下载校验闭环
|
2026-05-26 17:25:48 +08:00 |
|
WuYongJie
|
2f6f051daf
|
接入付费模块凭证门槛
|
2026-05-26 16:58:44 +08:00 |
|
WuYongJie
|
3c9591cdeb
|
完善许可证防破解收尾闭环
|
2026-05-26 16:47:57 +08:00 |
|
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
|
1a9921c9fe
|
收敛工作台界面并完善安全分享入口
|
2026-05-25 17:30:11 +08:00 |
|
WuYongJie
|
5b6dd8b487
|
兼容转码恢复启动环境
|
2026-05-25 17:29:49 +08:00 |
|
WuYongJie
|
6a5077312e
|
收紧主应用接口权限与跨域边界
|
2026-05-25 17:12:11 +08:00 |
|
WuYongJie
|
c649b939c4
|
收紧安装 Agent 安全边界
|
2026-05-25 17:06:22 +08:00 |
|
WuYongJie
|
21f2efb0bf
|
清理历史运维脚本入口
|
2026-05-25 17:02:26 +08:00 |
|
WuYongJie
|
1aeadcc425
|
补齐数据库迁移链路并收紧初始化默认值
|
2026-05-25 16:59:59 +08:00 |
|
WuYongJie
|
25316809db
|
整理项目文档入口与历史资料
|
2026-05-25 16:57:08 +08:00 |
|
WuYongJie
|
1f46544991
|
收紧私有化部署配置与旧发布入口
|
2026-05-25 16:53:50 +08:00 |
|
WuYongJie
|
c759d0a37b
|
收紧模板管理权限并保护迁移数据
|
2026-05-25 16:48:19 +08:00 |
|
WuYongJie
|
720c163a6b
|
完善模板字段前端交互并收敛预览样式
|
2026-05-25 16:45:46 +08:00 |
|
WuYongJie
|
2ae7b9a067
|
补强模板字段保存校验与上传链路
|
2026-05-25 16:42:15 +08:00 |
|
WuYongJie
|
0b5bd8510a
|
支持自定义字段搜索并保护模板读取接口
|
2026-05-25 16:37:39 +08:00 |
|
WuYongJie
|
ab73b5ec75
|
保留素材硬删除审计并收紧清理权限
|
2026-05-25 16:32:51 +08:00 |
|
WuYongJie
|
b596c5d08b
|
收紧钉钉登录一次性票据安全
|
2026-05-25 16:20:26 +08:00 |
|
WuYongJie
|
f90c74fe6e
|
补强视频转码恢复与失败处理
|
2026-05-25 16:16:29 +08:00 |
|
WuYongJie
|
1a8087b406
|
收紧许可证激活与初始化安全
|
2026-05-25 16:10:18 +08:00 |
|
WuYongJie
|
45d1ad3adf
|
持久化视频转码任务并支持恢复
|
2026-05-25 16:05:01 +08:00 |
|
WuYongJie
|
bd50dbd6e0
|
收紧素材分享与文件访问安全
|
2026-05-25 15:36:51 +08:00 |
|
WuYongJie
|
0dabf6cee8
|
收紧管理权限与系统设置安全边界
|
2026-05-25 15:13:49 +08:00 |
|
WuYongJie
|
6b4ba0f861
|
完善许可证受限入口与外观管理
|
2026-05-25 14:52:24 +08:00 |
|
WuYongJie
|
ab29682ada
|
新增版本化 Registry 发布脚本
|
2026-05-25 14:36:37 +08:00 |
|
WuYongJie
|
b265cd7e5f
|
忽略本地运行与排查产物
|
2026-05-25 14:33:46 +08:00 |
|
WuYongJie
|
e705d9fe71
|
收紧主应用许可证与管理接口安全
|
2026-05-25 14:32:52 +08:00 |
|
WuYongJie
|
d9955b6835
|
完善许可证服务多项目交付地基
|
2026-05-25 14:31:58 +08:00 |
|
WuYongJie
|
1d03717ff9
|
refactor: 更新Harbor项目结构为flnxi-public(公开)+flnxi(私有)
- docker-compose.prod.yml: runtime镜像改为从flnxi-public拉取
- 发布管理.ps1: Agent推送到flnxi-public公开项目
- Runtime镜像同步到flnxi-public项目
- 素材系统保持在flnxi私有项目
|
2025-12-15 21:29:49 +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
|
b7776d468a
|
test: 添加防抖Hooks单元测试
- 创建useDebounce测试(9个测试用例)
* 测试基本功能(初始值、延迟更新、快速变化)
* 测试延迟时间配置(自定义延迟、0延迟)
* 测试不同数据类型(字符串、数字、对象、数组)
- 安装测试依赖
* jest-environment-jsdom - 提供DOM环境
* @testing-library/dom - React测试库依赖
- 优化useDebounce实现
* 添加组件卸载时的定时器清理
* 确保状态更新的正确性
测试结果:9个测试用例全部通过
|
2025-12-13 15:38:03 +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 |
|