471 Commits

Author SHA1 Message Date
chenpei
02ebaabd0e feat(外部接口): 新增自动上架成套通知能力
- 新增任务-详情全套入库后的自动上架通知与重试补发能力

- 扩展 product-assets 支持按 materialId 拉取正式资源

- 补充后台通知目标管理、投递记录和对接文档
2026-03-25 20:39:56 +08:00
chenpei
bc4c609826 fix(数据库): 补充AI生成字段迁移脚本
- 强制纳入 is_ai_generated 的迁移文件
- 避免后续环境漏列导致素材接口报错
2026-03-25 10:34:32 +08:00
chenpei
4712175cb0 feat(素材链路): 发布白底图双轨与AI生图回传能力
- 完成白底图 WebP 双轨接口、上传链路与预览缓存改造
- 新增 AI 生图平台成品回传接口、任务状态与表单规则
- 补齐 AI 生成标签、任务详情补全、相关测试与对接文档
2026-03-25 10:28:02 +08:00
chenpei
482447fe40 同步当前工作区源码并修复白底图上传问题 2026-03-14 10:36:21 +08:00
chenpei
7fdc6bb91d 清理 scripts 中无引用的一次性补洞脚本 2026-03-06 15:57:44 +08:00
chenpei
2b522aa5a5 清理断链脚本与调试脚本 2026-03-06 15:09:11 +08:00
chenpei
43ed6e2313 补充本地运行产物忽略规则 2026-03-06 15:02:17 +08:00
chenpei
995be07b83 清理迁移残留与历史方案文档 2026-03-06 14:59:00 +08:00
chenpei
f3b4641010 清理历史文档与测试样本 2026-03-06 14:22:31 +08:00
chenpei
6aab2f305e 修复清理逻辑并同步项目文档 2026-03-06 14:14:50 +08:00
chenpei
752b7bf999 fix: 修复批量上传和视频扩展名问题
主要修复:

- 修复批量上传闭包陷阱,防止文件丢失

- 添加 fileName 参数传递原始文件名,保留正确扩展名

- 添加取消检查回调,改进批量上传取消功能

其他改进:

- 优化搜索功能和管理后台

- 添加 FRP 故障诊断文档

- 更新环境验证和网络检测
2026-02-03 11:12:50 +08:00
chenpei
4e89b57798 feat(upload): optimize upload UI and performance
- Expand batch upload list area and optimize preview image layout
- Improve upload speed tracking and display (server-side & client-side)
- Reduce network detection log noise
- Optimize Docker build process (caching, env validation)
- Add shadow environment deployment support
2026-01-28 15:07:50 +08:00
chenpei
837067e93c 优化:降低网速显示刷新频率 - 从0.1秒改为1秒
- 解决速度数字跳动过快,用户看不清的问题
- 速度计算逻辑保持准确(使用5次历史平均)
- 更新间隔:0.1秒 → 1秒
- 用户体验:速度数字更稳定易读
2026-01-27 12:52:04 +08:00
chenpei
9dc0f10446 修复:TypeScript类型错误 - reinitPromise返回void 2026-01-27 10:40:15 +08:00
chenpei
d0d308db6a 修复:reinitPromise类型错误 2026-01-27 10:33:49 +08:00
chenpei
4cf06c0463 优化:分片上传性能和稳定性 - 50MB分片+4小时TTL
主要改动:
1. 统一使用50MB分片(内网公网一致)
   - 请求数减少80%(1GB文件从100个减少到20个)
   - TCP利用率更高,网络开销更低
2. 延长会话TTL:5分钟 → 4小时
   - 支持220GB大文件上传
   - 解决大文件上传中途失败问题
3. 优化超时时间:支持50MB分片(5-10分钟)
4. 新增会话刷新机制(不清空进度)
   - 新增 /api/materials/upload/refresh API
   - 会话过期后保留已上传进度
5. 新增TUS协议迁移方案文档
   - docs/TUS协议迁移方案.md

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-27 10:24:53 +08:00
chenpei
cd6e40d9d2 优化:网络传输性能和稳定性 - TCP缓冲区+并发控制优化
主要改动:
1. TCP缓冲区优化(16MB)- 解决公网上传速度慢问题
2. 并发数降低到1-3 - 避免4并发导致ERR_CONNECTION_RESET
3. 动态并发控制 - 根据网络环境自动调整
4. Nginx超时增加到120s - 支持大分片上传
5. 上传进度修复 - 修复剩余时间计算
6. 新增任务-页面上传器和详情组件
7. 统一部署文档为deploy-remote-build.ps1

问题修复:
- 公网用户上传从200-900KB/s提升到预期3-5MB/s
- 内网用户上传更稳定,无连接重置错误
- UploadProgress组件剩余时间计算修正

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-27 09:33:09 +08:00
chenpei
4dba93c4e5 feat: 完成任务-详情素材迁移到新逻辑
- 迁移57个老素材到新逻辑(本地zip + S3预览图)
- 优化文件命名:SPU_作者_店铺_类型.zip
- PSD文件单独存储,不打包进all.zip
- 修复下载接口,优先使用本地zip文件
- 修复预览图重复问题
- 添加迁移脚本和验证脚本
- 更新文档和迁移计划

迁移统计:
- 总素材数:77个
- 成功迁移:57个
- 新逻辑上传:18个
- 空记录:2个
2026-01-21 10:16:28 +08:00
chenpei
b1276b7dd1 改造:任务-详情上传流程统一 - 改用分片上传到本地服务器
- 移除 uploadToS3 函数,改用 uploadFileWithChunks(分片上传)
- 修改 uploadAssets 函数,返回 uploadId 而不是 fileUrl
- 修改 uploadPsdFiles 函数,使用分片上传
- complete 接口传递 uploadId,后端已兼容处理
- 与任务-3D原图/AI原图/实拍原图/视频截图保持一致
- 老素材自动兼容(complete接口支持fileUrl模式)
2026-01-19 21:16:41 +08:00
chenpei
836332ad13 备份:任务-详情上传流程改造前的代码状态 2026-01-19 21:13:07 +08:00
chenpei
6e4e72483b 源码备份:反编译还原完成后的完整源码 (2026-01-16) 2026-01-16 16:19:44 +08:00
chenpei
562b7c6cdb 优化文档结构,整合内外网访问和钉钉登录相关信息,删除冗余内容,提升可读性 2026-01-14 15:40:09 +08:00
chenpei
0368cf8f62 部署更新 - 2026-01-12 23:25:35 2026-01-12 23:25:35 +08:00
chenpei
e465f7d766 鏇存柊椤圭洰鏂囨。鍜岄儴缃茶剼鏈?- 娣诲姞Git閮ㄧ讲鑴氭湰鍜孭owerShell 7鏀寔璇存槑 2026-01-12 22:37:31 +08:00
chenpei
90a56e6506 整理内外网统一访问和钉钉登录相关文档,删除重复文档,创建整合文档 2026-01-06 11:36:56 +08:00
chenpei
ea9076df45 feat: 实现统一的下载错误处理系统并修复产品全案数据库Schema
- 创建统一的下载错误处理模块 (lib/download-errors.ts)
- 实现13种错误类型分类和中文错误消息
- 后端统一使用 createDownloadError 创建标准化错误响应
- 前端统一使用 parseDownloadError 解析错误并显示
- 修复正式系统数据库Schema,添加产品全案相关字段和表
- 执行数据库迁移:添加 task_no, task_status, task_fetched_at 字段
- 创建 material_assets, api_keys, api_call_logs 表
2026-01-05 17:52:42 +08:00
chenpei
0ce59be34e 备份:组织架构设计方案讨论前的代码快照
- 包含所有当前修改和新功能
- 准备开始组织架构优化实施方案
2025-12-30 13:20:26 +08:00
chenpei
2b7cd7f654 源码还原完成,清理项目结构,更新steering规范 2025-12-27 19:03:41 +08:00
chenpei
8bf309e996 修复 AudioVisualizer 音频可视化组件:解决 'already connected' 错误,使用全局 WeakMap 跟踪初始化状态;修复 Dockerfile 构建依赖问题 2025-12-27 18:54:46 +08:00
chenpei
29115dddb8 反编译恢复源码:阶段1 - 核心API和工具库
- 反编译 app/api/materials/route.ts (素材列表和删除API)
- 反编译 app/api/materials/stats/route.ts (统计API)
- 新增 lib/material-log.ts (素材操作日志工具)
- 新增 lib/utils.ts (URL规范化工具)

这是从生产系统2.2.0版本编译代码反编译恢复的第一批文件
2025-12-20 18:10:47 +08:00
chenpei
134abfc0a3 更新系统功能:新增部门管理、平台管理API,优化上传功能和网络检测,更新数据库架构 2025-11-07 19:05:34 +08:00
chenpei
383772d39f 🛡️ 服务器安全加固和FRP问题修复
主要更新:
1. FRP服务器诊断与修复
   - 发现并修复文件描述符耗尽问题(65,536 → 1,048,576)
   - 分析并解决用户上传失败问题
   - 确认SSH服务器安全未被攻破

2. 安全防护系统部署
   - 部署IP黑名单防火墙(封禁20+攻击者)
   - 设置SSH端口速率限制
   - 配置自动化定时任务(每小时更新)
   - 安装Fail2ban实时防护系统
   - 添加白名单保护机制

3. 内网访问优化
   - 改进内网检测逻辑
   - 添加网络状态API
   - 优化钉钉登录流程
   - 完善信息补充功能

4. 文档完善
   - FRP服务器诊断修复报告
   - SSH安全评估报告
   - Fail2ban使用指南
   - 文件描述符详解
   - 用户上传失败原因分析
   - 防火墙配置说明
   - 内网检测改进报告

修复的问题:
- ✅ 文件描述符耗尽导致的服务异常
- ✅ 用户上传失败(影响9.5小时)
- ✅ SSH暴力破解攻击(91,299+次)
- ✅ 第三方项目攻击影响
- ✅ 127.0.0.1误封禁问题

部署的安全措施:
- 三重防护体系(Fail2ban + 防火墙 + 强密码)
- 自动化监控和封禁
- 实时攻击拦截(秒级响应)
- 完整的管理和监控工具

测试环境:开发环境
影响范围:服务器安全、用户上传、系统稳定性
当前状态:✅ 所有问题已修复,系统运行正常
2025-11-06 13:42:36 +08:00
chenpei
5d171c8e9a 修复部署脚本:排除源码目录避免构建错误 2025-10-28 09:20:45 +08:00
chenpei
ace624ee12 功能优化:1.系统设置-导航栏颜色改为主题颜色 2.首页按钮颜色与主题颜色同步 3.优化AI聊天窗口UI设计(渐变头部、圆角气泡、点阵背景等) 2025-10-27 21:39:00 +08:00
chenpei
8b2fbff098 修复AI聊天窗口:调整尺寸到420x680,添加拖拽功能,确保窗口在视口内 2025-10-27 21:17:56 +08:00
chenpei
720ed40b59 修复用户管理:在用户列表 API 中添加 department 字段返回 2025-10-27 19:09:20 +08:00
chenpei
10c2ea96ed debug: 添加部门更新API的详细日志
- 在update-department API中添加console.log
- 记录请求参数和更新结果
- 方便调试部门更新问题
2025-10-27 18:53:37 +08:00
chenpei
ce3b2f489d feat: AI聊天窗口添加拖拽功能
✨ 新功能:
- 窗口可拖动,用户可自由调整位置
- 智能边界限制,防止窗口超出视口
- 拖拽时视觉反馈(cursor: grabbing)
- 头部添加拖拽提示图标(六点握柄)

🎯 使用方式:
- 鼠标按住窗口头部即可拖动
- 自动限制在视口范围内
- 松开鼠标固定位置

🐛 修复:
- 窗口不再固定在右下角
- 解决窗口顶部超出浏览器视口问题
- 关闭按钮阻止拖拽事件冒泡

💡 UX优化:
- cursor-grab/cursor-grabbing 状态提示
- 头部提示文字改为"可拖动窗口"
- 平滑的拖拽体验
2025-10-27 18:46:09 +08:00
chenpei
e4e998b2a6 feat: 优化AI图片处理加载效果 - 对标业界最佳实践
🎨 参考Midjourney/DALL-E等主流AI工具的UX设计:

1. **动态呼吸效果** (breathe animation):
   - 模糊度从15px→12px周期性变化
   - Scale从1.0→1.02微妙缩放
   - 模拟真实的图片生成过程

2. **双层旋转Spinner**:
   - 外圈顺时针旋转
   - 内圈逆时针旋转
   - 增强视觉反馈

3. **渐变Overlay**:
   - 蓝紫渐变半透明背景
   - 毛玻璃backdrop-blur
   - 更精致的视觉效果

4. **完成后淡入动画**:
   - fade-in + slide-in-from-bottom
   - 每张图片延迟100ms
   - 总时长400ms
   - 平滑的视觉过渡

5. **用户图片尺寸优化**:
   - 限制max-w-[200px]
   - 保持原始比例(object-contain)
   - 不会撑大对话框

与业界对比:
- ✅ Midjourney: 渐进式清晰
- ✅ DALL-E: 扫描线+模糊渐变
- ✅ Stable Diffusion: 降噪过程可视化
- ✅ Adobe Firefly: Shimmer效果

现在用户体验媲美专业AI生图工具!
2025-10-27 18:37:38 +08:00
chenpei
463ade5a00 fix: 使用正确的Gemini API代理地址
- 更新API_BASE_URL为: https://api.huandutech.com/v1
- 修复AI聊天连接超时问题
- 使用国内可访问的API代理服务
2025-10-27 18:29:14 +08:00
chenpei
6d8dbf0274 fix: 使用.env.local中正确的Gemini API KEY 2025-10-27 18:26:45 +08:00
chenpei
5a9aa8e2d4 fix: 添加Gemini AI环境变量配置到docker-compose
🔧 修复AI聊天500错误:
- 添加GEMINI_API_KEY环境变量
- 添加GEMINI_API_BASE_URL环境变量
- 添加GEMINI_MODEL环境变量

这将修复AI聊天功能的API调用错误
2025-10-27 18:23:25 +08:00
chenpei
2bd55963fd fix: 优化AI聊天界面风格和图片布局
🎨 UI优化:
- 调整聊天窗口风格,更简洁,与首页风格匹配
- 移除过度华丽的渐变和毛玻璃效果
- 使用更简洁的白色/灰色配色方案
- 统一圆角大小(rounded-lg)

📐 图片布局修复:
- 4张图片加载占位符改为横向一排(grid-cols-4)
- 4张实际图片也改为横向一排显示
- 优化图片卡片样式

🔧 组件优化:
- 简化头部设计,使用蓝色图标
- 简化按钮样式,移除过度动画
- 优化输入框和发送按钮
- 调整悬浮按钮为简洁风格
2025-10-27 18:16:33 +08:00
chenpei
8b3003756b feat: AI聊天助手重大升级 - 支持4张图片生成和更大窗口
✨ 新功能:
- 默认生成4张不同风格/角度的图片
- 智能检测图片生成需求(关键词:生成、创建、画、图片等)
- 横向2x2网格布局展示4张图片
- 图片加载时同时显示4个占位符(动态模糊效果)

📐 窗口尺寸优化:
- 宽度: 420px → 546px (+30%)
- 高度: 680px → 884px (+30%)
- 提供更大的使用空间

🎨 UI改进:
- 图片网格布局(1张=1列,2张=2列,3张=3列,4张=2x2)
- 图片aspect-square正方形显示
- 优化图片悬停和缩放效果
- 改进下载按钮样式(毛玻璃+圆角)
- 每张图片独立下载(带序号)

💬 上下文对话支持:
- 完整保留对话历史(包括图片)
- 过滤掉正在生成的临时消息
- 支持连续多轮对话
- 图片信息在对话中保持

🐛 修复:
- 修复TypeScript类型错误(volc-sdk)
- 删除yedir目录避免构建冲突
- 优化消息内容构建逻辑

现在用户可以一次获得4张不同风格的AI生成图片!
2025-10-27 18:02:57 +08:00
chenpei
dbc26551f8 feat: AI聊天助手按苹果设计规范全面优化
✨ 新功能:
- 图片生成加载占位符(动态模糊效果+旋转动画)
- 智能检测是否需要显示图片加载状态
- 图片加载完成后平滑切换

🎨 UI优化 - 严格遵循苹果设计规范:

1. 毛玻璃效果 (Frosted Glass)
   - backdrop-blur-2xl 超强毛玻璃
   - 半透明背景 (white/95, gray-900/95)
   - 边框透明度 (border/50)

2. 圆角设计 (Corner Radius)
   - 窗口: rounded-3xl (24px)
   - 消息气泡: rounded-3xl
   - 按钮: rounded-2xl
   - 图片: rounded-2xl

3. 渐变与阴影 (Gradients & Shadows)
   - 多色渐变 (from-purple via-blue to-indigo)
   - 柔和阴影 (shadow-2xl with color/opacity)
   - 3D效果图标背景

4. 动画效果 (Animations)
   - shimmer扫光动画 (图片加载)
   - 消息淡入动画 (fade-in slide-in)
   - 按钮缩放反馈 (hover:scale-110 active:scale-95)
   - 悬浮按钮旋转 (rotate-180)
   - 脉动指示器 (animate-ping)

5. 间距与排版 (Spacing & Typography)
   - 更大的内边距 (px-5 py-4)
   - 更舒适的间距 (gap-3 space-y-3)
   - tracking-tight 字体紧凑
   - font-semibold 字重适中

6. 交互反馈 (Interactions)
   - 悬停状态 (hover:bg-white/20)
   - 激活状态 (active:scale-95)
   - 禁用状态透明度 (disabled:opacity-40)
   - 过渡动画 (transition-all duration-300)

7. 颜色系统 (Color System)
   - 透明度分层 (/80, /50, /30, /20)
   - 渐变叠加 (gradient-to-br)
   - 边框颜色统一

8. 详细改进:
   - 头部加入3D效果图标
   - 消息气泡添加阴影和缩放效果
   - 图片预览圆角+阴影+悬停缩放
   - 输入框毛玻璃+柔和边框
   - 发送按钮加载动画+图标
   - 悬浮按钮光晕效果+脉动指示器
   - 滚动条样式优化

📱 体验提升:
- 更流畅的动画
- 更清晰的视觉层次
- 更舒适的色彩搭配
- 更专业的设计质感

现在整个AI助手界面完全符合苹果Human Interface Guidelines!
2025-10-27 17:56:19 +08:00
chenpei
fc17c73df5 docs: 添加AI聊天助手使用指南 2025-10-27 17:50:46 +08:00
chenpei
b3de06ea39 feat: 增强AI聊天助手 - 完整图片支持
新增功能:
✅ 支持发送图片(点击上传、拖拽、粘贴)
✅ 支持接收AI返回的图片(Base64、inline data)
✅ 图片预览和下载功能
✅ 点击图片新窗口查看
✅ 拖拽上传可视化提示
✅ 支持粘贴剪贴板图片
✅ 最多支持5张图片同时发送
✅ 对话历史保留图片信息

图片处理:
- 自动转换为Base64格式
- 支持多种图片格式(PNG、JPG、GIF等)
- 图片预览带删除按钮
- 图片下载功能
- Hover显示下载按钮

用户体验:
- 拖拽区域高亮提示
- 实时图片预览
- 图片点击放大
- 支持键盘快捷键
- 响应式设计

这是一个功能完整的AI图片编辑助手!
2025-10-27 17:49:50 +08:00
chenpei
d0dc94e36d feat: 将弹幕功能替换为AI聊天助手
新功能:
- 创建AI聊天助手组件(AIChatWidget)
- 支持文字+图片多模态对话
- 集成Gemini AI API
- 支持图片编辑和内容生成
- 实时对话历史管理
- 优雅的UI设计,支持黑夜模式

技术实现:
- 后端API代理Gemini API(/api/ai-chat)
- 支持最多5张图片上传
- 流式响应处理
- 对话历史管理
- Base64图片处理

配置:
- 在.env中添加Gemini API配置
- GEMINI_API_KEY
- GEMINI_API_BASE_URL
- GEMINI_MODEL

替换原弹幕功能,提供更强大的AI助手体验!
2025-10-27 17:45:37 +08:00
chenpei
0c4e61ccfc feat: 系统管理页面完全支持浏览器黑夜模式
- 更新背景色、容器、卡片样式支持dark模式
- 更新所有表格(素材、用户)样式支持dark模式
- 更新标签栏、标题、文本颜色支持dark模式
- 更新分类管理(使用店铺、场景类别)支持dark模式
- 更新部门管理UI支持dark模式
- 更新所有按钮、输入框、模态框支持dark模式
- 更新空状态、加载状态文本颜色

现在系统管理和系统设置页面都完全支持黑夜模式,提升用户体验!
2025-10-27 17:33:13 +08:00
chenpei
52f8b930bb chore: 更新package-lock.json 2025-10-27 17:14:11 +08:00