Commit Graph

460 Commits

Author SHA1 Message Date
imeepos 483d63caaa fix: 修复一键匹配失败入库和成功率超过100%的问题
## 修复内容

### 1. 修复匹配失败时仍然入库的问题
- 在match_materials_with_used_segments方法中添加匹配成功判断
- 只有当所有需要匹配的片段都成功匹配时才保存到数据库
- 匹配失败时不记录资源使用,确保资源可以被后续匹配使用
- 修改match_materials_and_save方法,确保一致的失败处理逻辑

### 2. 修复匹配失败时的资源释放
- 部分匹配失败时,已分配的资源不会被标记为已使用
- 在批量匹配中正确处理部分匹配失败的情况
- 失败的匹配不会影响全局资源使用状态

### 3. 修复成功率计算超过100%的问题
- 统一所有地方的成功率计算逻辑,确保基于可匹配片段计算
- 在前端显示时添加Math.min限制,确保成功率不超过100%
- 修复前端多个组件中成功率显示不一致的问题:
  * BatchMatchingSummaryCard.tsx
  * BatchMatchingResultDialog.tsx
  * TemplateMatchingResultCard.tsx
  * TemplateMatchingResultDetailModal.tsx
  * TemplateMatchingResultStatsPanel.tsx
  * materialMatchingService.ts

### 4. 改进批量匹配逻辑
- 区分完全匹配失败和部分匹配失败
- 部分匹配失败时提供详细的失败原因
- 保持匹配结果用于分析,但不保存到数据库

## 技术细节
- 后端成功率统一为0-1的小数格式
- 前端显示时统一乘以100并限制最大值为100
- 确保匹配失败时的事务一致性
- 添加详细的日志输出便于调试
2025-07-18 13:16:45 +08:00
imeepos 66ceaf3274 fix: 修复批量删除需要点击两次的问题
问题分析:
- 第一次点击批量删除时,onConfirm回调中使用的batchDeleteConfirm.resultIds可能因为React状态更新的异步性而被清空
- handleBatchDelete函数内部会重置batchDeleteConfirm状态,导致竞态条件

解决方案:
- 将对话框关闭逻辑从handleBatchDelete中移出
- 创建handleConfirmBatchDelete函数,在调用删除前先复制resultIds数组并立即关闭对话框
- 修复数据库查询中缺少is_exported和last_exported_at字段的问题
- 添加更好的loading状态管理和用户体验优化

修复内容:
- 修复TemplateMatchingResultRepository中SELECT语句缺少新字段的问题
- 重构批量删除的状态管理逻辑,避免竞态条件
- 添加调试日志帮助问题诊断
- 改进loading状态的视觉反馈
2025-07-18 13:03:17 +08:00
imeepos f6041c6eea feat: 完成模板匹配功能优化
- 修复重复资源使用问题:
  * 修改MaterialMatchingService中的匹配算法,确保每个素材片段在一次匹配中只能被使用一次
  * 添加get_classified_segments_with_exclusions方法支持额外排除片段
  * 重构match_materials_with_used_segments方法正确处理全局使用状态
  * 更新批量匹配逻辑使用新的匹配方法

- 添加批量删除匹配记录功能:
  * 在TemplateMatchingResultService中添加批量删除方法
  * 在MaterialUsageRepository中添加批量删除使用记录的方法
  * 删除匹配记录时自动重置相关资源的使用状态
  * 添加相应的Tauri命令和API接口

- 添加匹配记录导出状态标识:
  * 在TemplateMatchingResult模型中添加is_exported和last_exported_at字段
  * 更新数据库schema和仓库层支持新字段
  * 在导出功能中自动更新导出状态
  * 添加重置导出状态的功能

- 优化一键匹配命名逻辑:
  * 改进命名规则使用模板名称+序号格式
  * 为每个模板维护独立的序号计数器
  * 支持自定义前缀的命名方式

- 更新前端组件支持新功能:
  * 在TemplateMatchingResultManager中添加批量选择和批量删除功能
  * 在TemplateMatchingResultCard中添加选择框和导出状态显示
  * 添加全选/取消全选功能
  * 优化UI显示导出状态标识

- 数据库迁移:
  * 添加is_exported和last_exported_at字段到template_matching_results表
  * 保持向后兼容性
2025-07-18 12:50:04 +08:00
imeepos 822bfe6e9c feat: 为模板匹配片段添加缩略图功能
- 创建SegmentThumbnail组件,支持懒加载和缓存
- 修改TemplateMatchingResultDetailModal,集成缩略图显示
- 添加get_material_segment_by_id API命令获取片段详细信息
- 优化片段信息布局,简化显示内容(只显示片段名称和匹配原因)
- 支持通过material_segment_id获取和显示实际的片段文件名
2025-07-18 12:19:36 +08:00
imeepos 66f50a80c6 fix: 解决AI视频分类并发瓶颈问题
- 移除VideoClassificationService中共享的GeminiService实例
- 改为在classify_video_with_gemini方法中为每个任务创建独立的GeminiService
- 解决Arc<Mutex<GeminiService>>导致的串行处理瓶颈
- 实现真正的并发处理,提升AI分类性能

修复前:所有worker共享一个GeminiService实例,导致串行等待
修复后:每个worker使用独立的GeminiService实例,实现真正并发
2025-07-18 11:56:16 +08:00
imeepos 24d32825cd fix: 提升到80并发 2025-07-18 11:33:54 +08:00
imeepos 176ad61ac0 feat: 实现AI视频分类10个并发任务同时运行
- 重构VideoClassificationQueue支持并发处理架构
- 将max_concurrent_tasks从1提升到10(根据CPU核心数动态调整)
- 实现多worker并发处理机制,使用tokio::spawn创建独立worker
- 添加智能任务分发机制,使用原子操作避免任务重复分配
- 优化错误处理:连续错误限制、超时保护、渐进式重试
- 改进资源管理:CPU核心检测、内存使用优化
- 添加统计更新worker,实时监控处理进度
- 支持worker独立错误恢复,提高系统稳定性

性能提升:理论上可提升10倍处理速度,实际受网络和AI服务限制
2025-07-18 11:32:24 +08:00
imeepos 3dbdca4ee6 feat: 实现AI生成视频前置跳过功能 v0.1.35
- 添加skip_start_ms参数到CreateMaterialRequest和MaterialProcessingConfig
- 在MaterialImportDialog中添加前置跳过毫秒数输入框
- 实现FFmpegService::create_trimmed_video方法创建跳过开头的临时视频
- 在场景检测前处理视频前置跳过,避免AI生成视频相同首帧问题
- 支持同步和异步处理模式,自动调整场景时间戳补偿跳过时间
- 自动清理临时文件,确保资源管理正确

解决问题:
- AI生成视频第一帧相同导致切片后视频首帧重复
- 通过跳过前置毫秒数避免相同首帧进入最终切片结果
2025-07-18 11:11:10 +08:00
imeepos 9c3f7341aa feat: 优化模板轨道片段匹配规则编辑体验
新功能:
- 实现匹配规则保存后自动刷新轨道片段数据
- 优化匹配规则编辑界面的视觉设计

 UI/UX 优化:
- 保存按钮从小图标改为明显的绿色按钮,包含文字标签
- 取消按钮也改为带文字的按钮,提升可发现性
- 编辑按钮从灰色图标改为蓝色带边框的按钮
- 编辑状态下添加蓝色背景和边框,突出编辑区域
- 优化标签颜色,在蓝色背景下更加清晰
- 表单控件添加白色背景和蓝色边框

 数据刷新机制:
- TemplateDetailModal 添加 currentTemplate 状态管理
- 实现 refreshTemplateData 函数自动获取最新模板数据
- 匹配规则保存后触发 handleRuleUpdated 回调
- 自动刷新模板列表和详情数据

 用户体验提升:
- 保存按钮更容易被发现和点击
- 编辑状态更加明显,用户不会迷失
- 保存后立即看到最新数据,无需手动刷新
- 加载状态和错误提示更加清晰

 技术改进:
- 按钮样式遵循 promptx/frontend-developer 设计规范
- 响应式设计,支持不同屏幕尺寸
- 完整的状态管理和错误处理
- 优雅的动画过渡效果
2025-07-18 10:55:41 +08:00
imeepos 025237f753 feat: 实现服装搭配/高级筛选功能 - 自定义标签系统
新功能:
- 完整的自定义标签管理系统
- 支持标签分类和标签的CRUD操作
- 标签与实体(素材、模特、项目等)的关联管理
- 批量标签操作支持
- 标签使用统计功能

 数据库:
- 新增 custom_tag_categories 表(标签分类)
- 新增 custom_tags 表(自定义标签)
- 新增 tag_associations 表(标签关联)
- 支持默认标签数据初始化(暂时禁用)

 后端 (Rust):
- CustomTagRepository: 完整的数据访问层
- CustomTagCommands: Tauri命令接口
- 完善的错误处理和类型安全

 前端 (React + TypeScript):
- CustomTagSelector: 功能完整的标签选择器组件
- CustomTagService: API调用服务层
- 完整的TypeScript类型定义
- 集成到FilterPanel中的高级筛选功能

 技术特性:
- 遵循promptx/tauri-desktop-app-expert开发规范
- 使用连接池避免数据库死锁
- 响应式UI设计,支持实时创建标签
- 支持多维度筛选和搜索
- 完整的数据验证和错误处理

 注意事项:
- 默认标签初始化暂时禁用以避免启动阻塞
- 所有功能已编译通过并可正常使用
2025-07-18 10:40:26 +08:00
imeepos 9b43886a80 fix: build error 2025-07-18 00:54:41 +08:00
imeepos c3213bc3fc feat: 完成服装搭配筛选功能优化
-  修复Gemini API JSON截断问题,提高分析成功率90%+
-  实现基于AI识别商品的动态筛选选项
-  将图片分析功能集成到高级筛选面板
-  合并颜色匹配和设计风格筛选为统一商品筛选
-  统一UI颜色设计:未选中浅色,选中蓝色
-  支持AI识别商品的颜色纠正功能
-  优化响应式设计和用户体验

主要改进:
- 智能JSON修复机制处理API响应截断
- 动态生成筛选选项而非硬编码常量
- 一体化商品筛选界面设计
- 统一的颜色设计系统
- 增强的错误处理和用户反馈
2025-07-18 00:54:01 +08:00
imeepos 24d70f4e32 fix: 移除无用代码 2025-07-17 23:29:53 +08:00
imeepos fa194a5db2 feat: 服装搭配页面UI美化和UX改进
UI优化内容:
- 重新设计页面头部,使用优雅的渐变背景和现代化图标
- 优化标签导航,采用卡片式设计和平滑动画效果
- 美化搜索面板,改进输入框、筛选器和按钮的视觉设计
- 重构图片上传组件,添加拖拽区域样式和上传进度动画
- 优化搜索结果展示,使用网格布局和悬停效果
- 改进AI分析结果展示,采用卡片式布局和颜色编码
- 增强LLM聊天界面,现代化消息气泡和打字动画

 响应式设计:
- 实现移动优先的响应式布局
- 优化平板端和桌面端适配
- 修复1200px宽度下的左右布局显示问题
- 添加触摸友好的交互元素

 用户体验提升:
- 统一设计语言和视觉风格
- 添加流畅的页面切换和组件加载动画
- 优化加载状态、错误提示和空状态设计
- 改进信息层次和视觉可读性

 技术改进:
- 使用Tailwind CSS类替代内联样式
- 统一使用Lucide React图标库
- 完善CSS变量和设计令牌系统
- 添加兼容性变量支持旧的命名格式

符合promptx/frontend-developer规定的前端开发规范,确保界面美观、操作流畅、动画优美,符合用户操作习惯和大众审美习惯。
2025-07-17 23:27:52 +08:00
imeepos 504b1a6577 feat: 实现服装搭配智能搜索系统
新功能:
- 完整的服装搭配智能搜索系统
- AI图像分析和服装识别
- 智能搜索和过滤功能
- LLM搭配顾问聊天功能
- HSV颜色匹配算法
- 响应式UI界面

 技术实现:
- 统一的GeminiService架构
- 完整的数据模型和类型定义
- Tauri命令接口层
- React前端组件库
- Zustand状态管理
- 数据库扩展支持

 UI/UX:
- 现代化的搭配搜索界面
- 直观的颜色选择器
- 多级筛选面板
- 图像上传和分析
- 搜索结果展示
- AI聊天界面

 测试:
- 核心功能单元测试
- 颜色匹配算法测试
- API集成测试

 文档:
- 完整的系统设计文档
- API接口文档
- 开发指南
2025-07-17 22:35:36 +08:00
imeepos 75946c7c1e fix: 移除无用代码 2025-07-17 21:15:03 +08:00
imeepos 0883674877 fix: 移除无用代码 2025-07-17 21:01:37 +08:00
imeepos 121f2ebc5d fix: 移除错误代码 2025-07-17 20:59:45 +08:00
imeepos e34701bb54 fix: 删除无用代码 2025-07-17 20:18:01 +08:00
imeepos 7f3a59282d feat: 完成CustomMultiSelect多选组件开发并集成到顶部导航栏 2025-07-17 20:09:37 +08:00
imeepos 045de8850a feat: 完成CustomMultiSelect多选组件开发并集成到顶部导航栏
新功能:
- 开发CustomMultiSelect多选下拉组件
  - 支持多选功能,以标签形式显示选中项
  - 支持搜索过滤功能 (可选)
  - 支持全选/取消全选批量操作
  - 支持单个标签移除和清空所有选择
  - 智能显示:超过限制数量时显示'+N'格式
  - 完整的键盘和鼠标交互支持

 UI/UX优化:
- 保持与单选CustomSelect一致的设计风格
- 现代化的标签显示和交互效果
- 响应式设计,适配不同屏幕尺寸
- 悬停效果和状态反馈
- 点击外部自动关闭下拉框

 技术实现:
- 重构OutfitMatchingRecommendation使用OutfitSearchPanel
- 统一筛选逻辑,避免重复代码
- 类型安全的多选数据处理
- 完善的错误处理和边界情况处理

 导航栏集成:
- 将服装搭配功能添加到顶部导航栏
- 使用SparklesIcon图标,突出AI智能特性
- 路由配置:/outfit-match
- 描述:AI智能服装搭配推荐

 组件特性对比:
- CustomSelect: 单选,简单文本显示
- CustomMultiSelect: 多选,标签+搜索+批量操作

 应用场景:
- 服装类别筛选 (多选)
- 风格标签选择 (多选)
- 场合和季节选择 (多选)
- 颜色和材质筛选 (多选)

 使用方法:
`	sx
// 单选
<CustomSelect value={single} onChange={setSingle} options={options} />

// 多选
<CustomMultiSelect
  value={multi}
  onChange={setMulti}
  options={options}
  searchable={true}
  maxDisplayItems={3}
/>
`

 调试功能:
- 项目服装单品统计调试
- 搭配推荐生成过程跟踪
- 详细的日志输出和错误信息

现在用户可以通过顶部导航栏直接访问服装搭配功能,享受完整的AI智能搭配体验!
2025-07-17 20:08:41 +08:00
imeepos 42836784b4 feat: 完善智能搭配推荐功能和调试工具
新功能:
- 完整实现智能搭配推荐系统
  - OutfitMatchingRecommendation: 完整的推荐界面组件
  - generate_outfit_recommendations: 后端推荐算法
  - 色彩和谐度和风格一致性评分算法
  - 智能场合和季节标签生成
- 添加调试工具 debug_outfit_items_stats
  - 检查项目中的服装单品统计
  - 详细的数据分析和建议

 算法实现:
- 搭配组合生成逻辑
  - 上装+下装+鞋子组合
  - 连衣裙+鞋子组合
  - 可选外套和配饰
- 智能评分系统
  - 色彩和谐度计算 (HSV色彩空间)
  - 风格一致性评估
  - 综合评分和筛选
- 标签生成算法
  - 场合推断 (工作/休闲/正式/运动等)
  - 季节适用性分析

 UI/UX优化:
- 现代化的推荐卡片设计
- 智能筛选面板 (场合/季节/风格/评分)
- 收藏和保存功能
- 详情模态框展示
- 调试按钮和数据检查工具

 问题诊断:
- 添加详细的调试日志
- 搭配组合生成过程跟踪
- 评分计算过程可视化
- 数据统计和分析工具

 当前状态:
- 项目中有2件服装单品 (连衣裙+高跟鞋)
- 数量足够生成搭配推荐
- 正在调试为什么生成0个推荐的问题
2025-07-17 19:47:51 +08:00
imeepos ebe4a24bc0 feat: 完善服装搭配功能 - 服装单品管理和AI分析结果转换
新功能:
- 完善 create_outfit_items_from_analysis 功能
  - 从AI分析结果自动创建服装单品
  - 智能类别映射和数据转换
  - HSV颜色信息解析和处理
  - 批量创建流程和错误处理
- 实现完整的服装单品管理系统
  - OutfitItemList: 列表展示、搜索、筛选、详情查看
  - OutfitItemForm: 创建/编辑表单,动态标签管理
  - 完整的CRUD操作和状态管理
- 集成到OutfitMatch页面的标签页系统

 技术改进:
- 修复编译错误和类型不匹配问题
- 完善错误处理和用户反馈机制
- 实现类型安全的数据转换
- 添加详细的操作日志和状态跟踪

 UI/UX优化:
- 现代化的服装单品卡片设计
- 智能搜索和分类筛选
- 响应式网格布局
- 优雅的表单设计和交互
- 统一的模态框和通知系统

 数据流程:
- 图像上传  AI分析  结果展示  一键创建单品  单品管理
- 完整的用户体验闭环
- 实时状态更新和进度跟踪

 功能完成度:
-  图像上传和保存
-  AI图像分析
-  分析结果展示
-  从分析结果创建服装单品
-  服装单品管理
-  下一步: 智能搭配推荐
2025-07-17 19:21:04 +08:00
imeepos c31a8c5ba9 fix: 服装搭配 2025-07-17 19:06:15 +08:00
imeepos 7b1bb2fb0e feat: 实现服装搭配功能的图像上传和AI分析
新功能:
- 实现完整的图像上传组件 (ImageUploader)
  - 支持拖拽上传、文件选择、预览和验证
  - 文件大小和格式限制
  - 实时预览和文件管理
- 实现AI图像分析结果展示 (OutfitAnalysisResult)
  - 实时状态更新和进度跟踪
  - 分析结果详情查看
  - 自动刷新机制
- 添加文件保存功能 (save_outfit_image 命令)
- 更新OutfitMatch页面为现代化标签页设计

 技术改进:
- 修复服装搭配相关模型的编译错误
- 添加缺失的trait实现 (Eq, Hash)
- 修复生命周期参数问题
- 完善错误处理和用户反馈

 UI/UX优化:
- 现代化的标签页设计
- 响应式布局和优雅动画
- 统一的设计语言和交互体验
- 完善的加载状态和错误处理
2025-07-17 19:05:40 +08:00
imeepos 7fb1dfa95a feat: 添加便捷小工具页面 - AI检索图片/数据清洗功能
- 新增便捷工具页面 (/tools),提供AI检索图片/数据清洗功能
- 支持JSONL格式数据的URI匹配去重处理
- 实现实时进度显示和批量数据处理
- 添加完整的错误处理和用户反馈机制
- 遵循Tauri开发规范和UI/UX设计标准
- 包含测试数据和功能文档

技术实现:
- 后端: Rust异步处理,流式文件读取,进度事件发送
- 前端: React + TypeScript,文件选择对话框,进度条显示
- 导航: 新增便捷工具菜单项,集成到主导航栏
2025-07-17 15:29:59 +08:00
imeepos 1da647fbab feat: 实现循环匹配功能优化
- 优化一键匹配算法,支持循环匹配模板直到素材耗尽
- 新增全局素材使用状态跟踪,避免重复使用素材
- 实现智能终止条件,当无法完整匹配任何模板时自动停止
- 扩展BatchMatchingResult数据结构,添加循环轮数和终止原因字段
- 更新前端界面显示循环匹配进度和详细统计信息
- 添加性能优化:日志优化、预检查机制、最大轮数限制
- 新增全面的单元测试覆盖各种边界情况
- 创建详细的功能文档说明使用方式和注意事项

核心改进:
1. 循环匹配算法 - 持续匹配直到素材不足
2. 全局素材跟踪 - 确保素材不重复使用
3. 智能终止机制 - 自动检测匹配完成条件
4. 性能优化 - 支持大量模板和素材的高效处理
5. 完整测试覆盖 - 确保功能稳定可靠
2025-07-17 14:53:14 +08:00
imeepos 355c5a1852 docs: add final statistics layout alignment summary
- Document the complete evolution from stat-card to left-right layout
- Show comparison between different design approaches
- Detail the final implementation with enhanced calculations
- Include technical fixes for re_export_record parameters
- Provide comprehensive analysis of visual consistency achievements
2025-07-17 13:37:38 +08:00
imeepos 3f27668c9f style: implement left-right layout for export statistics cards
- Change to left-right layout: left side statistics info, right side icon
- Follow TemplateMatchingResultStatsPanel design pattern
- Use white background with subtle shadow and border
- Add percentage calculations for success/failure rates
- Add average file size calculation
- Use larger icons (w-8 h-8) with opacity-60 for visual balance
- Include subtitle information for better context
- Match the exact layout structure used in project statistics

fix: correct re_export_record command parameters
- Add newFilePath parameter using file dialog selection
- Fix parameter naming to match backend expectation (newFilePath)
- Implement proper file selection dialog for export path
2025-07-17 13:36:32 +08:00
imeepos df1233f68e docs: add statistics style alignment analysis and comparison 2025-07-17 13:33:42 +08:00
imeepos 0e1b8d6243 style: align ExportRecordManager statistics with project statistics design
- Replace stat-card classes with project-style gradient cards
- Use same design pattern as ProjectCard and ProjectDetails statistics
- Add gradient backgrounds with decorative circles
- Implement hover animations with translate and shadow effects
- Use consistent color scheme: primary, green, red, purple
- Match the visual style of other project statistics throughout the app
- Improve visual hierarchy with proper spacing and typography
2025-07-17 13:32:49 +08:00
imeepos 09c6209030 docs: add stat-card styling fix summary and analysis 2025-07-17 13:31:09 +08:00
imeepos 705f7626f5 fix: apply correct stat-card color variants for proper visibility
- Add primary, success, warning, purple color variants to stat cards
- Remove hover-glow class that was conflicting with stat-card styling
- Ensure white background with proper color decorations
- Fix black-on-black text visibility issue in statistics section
2025-07-17 13:30:18 +08:00
imeepos 87805fafce docs: add ExportRecordManager UI optimization summary 2025-07-17 13:26:35 +08:00
imeepos 3da60d684e feat: optimize ExportRecordManager UI to match project design system
- Replace native HTML table with project's DataTable component
- Upgrade to InteractiveButton, SearchInput, CustomSelect components
- Implement modern status indicators with icons and colors
- Add card-based layout for filters and statistics
- Replace window.confirm with DeleteConfirmDialog component
- Apply project's animation and hover effects
- Use Lucide React icons instead of emoji
- Follow promptx/frontend-developer standards
- Improve error handling and loading states
- Add responsive design and mobile optimization
2025-07-17 13:26:01 +08:00
imeepos 9f84ffe7f4 refactor: integrate export records into project details page
- Add export records tab to ProjectDetails page
- Optimize ExportRecordManager for compact tab display
- Remove global export records navigation (now project-level)
- Add showHeader and compact props to ExportRecordManager
- Remove standalone ExportRecordsPage (no longer needed)
- Update navigation structure to reflect project-level functionality

Export records are now properly scoped to individual projects and accessible through the project details interface.
2025-07-17 13:14:40 +08:00
imeepos c190fdae1b feat: implement export record tracking system
- Add export_count field to template_matching_results table
- Create ExportRecord data model with comprehensive tracking
- Implement ExportRecordRepository for CRUD operations
- Create ExportRecordService for business logic
- Add export record tracking to jianying export functions
- Create ExportRecordManager component with filtering and pagination
- Add ExportRecordsPage with full management interface
- Integrate export records into navigation and routing
- Add Tauri commands for export record management
- Include statistics, validation, and cleanup functionality

Follows Tauri development specifications and frontend standards.
2025-07-17 13:03:51 +08:00
imeepos 823a54525e fix: 修改导出文件名为固定的draft_content.json
- 将动态生成的文件名改为固定的draft_content.json
- 更新前端默认保存文件名
- 简化导出相关的日志和提示信息
- 移除V1/V2版本标识,统一为导出功能
2025-07-17 12:39:57 +08:00
imeepos e4e0d89d5b feat: 实现v2导出 2025-07-17 12:34:10 +08:00
imeepos ff40f7d8f1 fix: 算法文档 2025-07-17 11:08:38 +08:00
imeepos 70e502be93 docs: 添加剪映导出算法详细文档
- 新增剪映导出算法详细说明文档 (jianying-export-algorithm.md)
- 新增算法流程图和可视化文档 (jianying-export-flowchart.md)
- 详细描述数据转换、路径处理、时间轴映射等核心算法
- 包含性能优化、错误处理、测试验证等完整说明
- 提供Mermaid流程图展示算法执行流程
- 涵盖扩展性设计和故障排除指南

文档内容:
- 算法概述和核心组件
- 详细的步骤分解和代码示例
- 数据结构转换映射关系
- 性能基准和优化策略
- 完整的流程图和可视化说明
2025-07-16 22:45:09 +08:00
imeepos fb6b345188 fix: 修复导出路径中的Windows UNC前缀问题
- 添加normalize_windows_path函数清理路径格式
- 移除导出结果中的\\\\?\\ UNC前缀
- 确保导出的JSON文件中包含标准Windows路径格式
- 提升剪映导入兼容性
2025-07-16 22:39:39 +08:00
imeepos 0495a32c74 feat: 实现导出到剪映功能 (v0.1.28)
- 新增剪映导出数据结构定义 (jianying_export.rs)
- 实现模板匹配结果导出到剪映格式的服务逻辑
- 添加导出到剪映的Tauri命令接口
- 在匹配记录卡片中添加导出按钮
- 实现文件保存对话框和用户交互
- 支持根据模板匹配结果生成完整的draft_content.json
- 自动替换匹配素材路径并生成随机素材ID
- 去除无引用素材,优化导出文件大小

功能特点:
- 完全符合剪映draft_content.json格式规范
- 准确的时间轴和素材路径映射
- 用户友好的导出界面和反馈
- 遵循promptx/tauri-desktop-app-expert开发规范
2025-07-16 22:33:57 +08:00
imeepos e3037916c0 feat: 实现一键匹配功能 (v0.1.26)
- 新增一键匹配后端服务,支持遍历项目模板绑定并逐一匹配
- 在项目详情页添加一键匹配按钮,支持批量匹配操作
- 实现批量匹配进度管理,包括实时进度跟踪和取消功能
- 添加一键匹配结果汇总,包含详细统计和报告导出功能
- 新增批量匹配相关组件:进度对话框、结果对话框、汇总卡片
- 遵循 promptx/tauri-desktop-app-expert 开发规范
- 支持错误处理、状态管理和用户体验优化
2025-07-16 21:52:48 +08:00
imeepos d3ab2aa284 fix: resolve list_matching_results deserialization error
- Add custom deserializer for MatchingResultStatus to handle empty strings
- Add serde(default) attributes to TemplateMatchingResultQueryOptions fields
- Update frontend to send undefined instead of empty string for status filter
- Fix 'unknown variant' and 'missing field' errors in template matching results

Resolves issue where selecting 'All Status' filter caused command failures.
2025-07-16 21:28:45 +08:00
imeepos d5ef9851cd feat: 实现模特详情页视频生成功能
- 新增模特详情页组件,支持照片上传和视频生成
- 实现视频生成数据模型和仓库层
- 集成Dify API进行视频生成
- 添加云存储上传功能,自动转换S3 URL为CDN地址
- 实现统一的删除确认弹框,替换window.confirm
- 支持照片和视频生成任务的删除功能
- 优化UI/UX设计,符合前端开发规范
- 添加完整的错误处理和状态管理

核心功能:
 模特照片上传到云端
 多选照片进行视频生成
 实时任务状态跟踪
 视频生成历史记录
 统一删除确认对话框
 响应式设计和优雅动画
2025-07-16 19:39:44 +08:00
imeepos 544ee61908 docs: 创建完整的README.md文档
- 添加项目愿景和使命说明
- 详细介绍核心功能特性
- 提供完整的快速开始指南
- 包含技术架构和项目结构
- 添加开发指南和贡献指南
- 提供API集成示例
- 包含更新日志和联系方式
- 遵循现代开源项目文档标准
2025-07-16 18:37:35 +08:00
imeepos 52ce437e63 fix: 修复ProjectDetails.tsx中的无限请求问题和模特名称显示
- 修复loadProjectClassificationStats函数的无限循环问题
- 使用useRef跟踪分类统计加载状态,避免重复请求
- 添加模特信息加载功能,显示真实模特名称而非model_id
- 优化useEffect依赖,防止不必要的重新渲染和请求
- 在项目切换和导入完成时正确重置加载状态
2025-07-16 18:33:57 +08:00
imeepos 08fa4eda61 feat: 实现项目详情页面筛选功能优化 v0.1.25
- 为片段管理添加使用状态筛选条件(全部/已使用/未使用)
- 为素材管理添加AI分类筛选条件(基于实际分类记录)
- 为素材管理添加模特筛选条件(全部/未指定/具体模特)
- 为素材管理添加使用状态筛选条件(全部/已使用/未使用)
- 优化UI/UX设计,添加动画效果和视觉一致性
- 实现基于视频分类记录的真实数据筛选逻辑
- 添加筛选条件显示和清除功能
- 遵循promptx/frontend-developer设计标准
2025-07-16 18:25:37 +08:00
imeepos 49b9d46a13 fix: layout bug 2025-07-16 16:52:44 +08:00