846b8c601b
fix: use report title as certificate material name
2026-09-28 20:28:48 +08:00
d2337b960e
fix: default certificate expiry to one year after testing
2026-09-27 16:06:27 +08:00
cb510075fc
feat: simplify report instructions and restore certificate expiry date
2026-09-27 15:36:29 +08:00
0baa951fd9
fix: use certificate test date for inspection reports
2026-09-24 11:14:25 +08:00
8dc5ffb71b
feat: add certificate report metadata and report kinds
2026-09-23 20:27:17 +08:00
d8d843e6ad
feat: add live clip material type with date host and platform
...
Register 直播切片 as a video-only material type. Upload and edit flows
collect required title, live date (defaults to today), optional host with
user link, and live platform presets. Persist the fields on Material and
skip SPU formatting for free-text titles.
2026-09-22 18:59:05 +08:00
江林铖
83673baf70
fix: support large brand knowledge uploads
2026-09-16 15:28:42 +08:00
chenpei
d2ca6a1bd8
feat: protect private task details and unify supervisor resolution
2026-08-31 15:25:03 +08:00
chenpei
ae75bca301
feat: 上传面板对齐看板视觉,通用类型可填钉钉审批编号
2026-08-18 22:24:39 +08:00
chenpei
2b5220fdd7
fix: 任务-详情源文件不再误套 1GB 图片上限
...
PSD/压缩包按单文件 10GB、合计 30GB 单独限制;提交时续上传会话,避免大文件传完再排队后会话丢失。
2026-08-17 18:48:00 +08:00
chenpei
5ef70bce4e
fix: 转码按正式目录找源文件,失败只给用户可重试提示
...
把 /uploads 网址路径落到 UPLOAD_DIR,避免误判文件不存在。
页面和接口不再回传路径或堆栈,只提示稍后重试。
2026-08-17 15:24:13 +08:00
chenpei
8009c62868
perf: 创意资产库第一页加速,空壳改为权威标记
2026-08-17 11:39:40 +08:00
chenpei
7b0ee5efb4
feat: 人员架构统一到钉钉唯一值,接入上游组织架构动态同步
...
素材库与考核调研此前各有一套人事数据,彼此没有外键,靠姓名、邮箱在运行时
逐层软匹配。本次把身份判定收敛到钉钉唯一值,并让组织架构与人员状态跟随
上游 HR 系统自动更新。
人员身份
- 新增账号与权威人员档案的正式绑定表,活跃绑定双向唯一
- users.dingtalkUserId 补上唯一约束,数据库层面杜绝一人多号
- 移除钉钉登录的同名自动合并,同名冲突一律转人工核对
- 看板删除特判由比对用户名改为比对钉钉唯一值,避免同名越权
组织架构
- 新增 OrganizationUnit,直接镜像上游 HR 部门树
- 不再从员工部门路径倒推,同名部门不会再被合并
- 上游已删除的部门下线而非物理删除
人员状态
- 新增规范化的 employmentState,取代对混杂原始值做关键词匹配
- 接入上游离职表,离职判定不再依赖中文关键词
- 离职联动:归档账号并把素材托管给所在部门,默认只处理离职满 30 天者
素材归属
- 归属变更纳入正式转移,记录最初上传者、转移流水与理由
- 新增素材托管部门,归属与署名分离:托管只改维护责任,不动署名
- 编辑素材的权限判定统一到 canManageMaterial
- 修复任务-详情上传把邮箱误存为作者名的问题
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-14 09:53:48 +08:00
chenpei
53b314a056
fix: validate video SPU without rewriting input
2026-08-13 13:15:46 +08:00
chenpei
0fe49db973
fix: validate video SPU names
2026-08-13 12:09:14 +08:00
chenpei
7326e273e1
fix: harden media upload and release safety
...
Protect upload cleanup and atomic completion paths, add durable media worker leases and brand asset validation, and introduce verified migration/bootstrap/deployment gates.
2026-08-12 18:04:08 +08:00
chenpei
d69eb6e252
feat: 支持视频手动预览图
2026-08-07 23:28:55 +08:00
chenpei
57a9a946ab
fix: restore task page previews and bound download memory
2026-08-03 15:42:02 +08:00
chenpei
0897c81471
fix: 稳定任务详情上传与素材查询
2026-08-01 16:17:42 +08:00
chenpei
e2f4911268
fix: 限制图片视频处理内存峰值
2026-07-31 10:40:00 +08:00
chenpei
b48872d83b
fix(security): 收紧上传与素材文件操作
2026-07-31 10:26:18 +08:00
chenpei
362a468d67
feat: 为任务素材增加钉钉审批编号
2026-07-29 11:57:35 +08:00
chenpei
7925ca74de
feat: 记录任务详情需求运营
2026-07-24 14:47:27 +08:00
chenpei
365e79f3a0
优化考核调研结果页与大图上传
2026-07-13 17:42:27 +08:00
chenpei
779cdba8a1
fix: 收紧系统权限并完善考核调研链路
2026-07-10 10:57:16 +08:00
chenpei
9cd3c0f231
feat: 任务详情无条码开关 + 上传面板信息密度优化 + 历史导入/脚本补全
...
- 任务详情上传支持"本批素材无条码"开关,跳过条码必填校验
- SKU卡片/主图网格从4列改5列,图片高度压缩,去掉冗余标签和提示
- 详情图/PSD上传区去掉大占位框,改成紧凑按钮+标签
- 补充历史导入相关脚本和工具文件
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-11 10:01:08 +08:00
chenpei
8c39d96249
chore: sync latest project source
2026-05-07 16:37:22 +08:00
chenpei
96fcf312cb
feat: support task detail barcode assets for product platform
2026-04-22 15:47:58 +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
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
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
836332ad13
备份:任务-详情上传流程改造前的代码状态
2026-01-19 21:13:07 +08:00
chenpei
6e4e72483b
源码备份:反编译还原完成后的完整源码 (2026-01-16)
2026-01-16 16:19:44 +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
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
8bf309e996
修复 AudioVisualizer 音频可视化组件:解决 'already connected' 错误,使用全局 WeakMap 跟踪初始化状态;修复 Dockerfile 构建依赖问题
2025-12-27 18:54:46 +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
6377ce6d24
feat: Change preview card dimensions from 300x500 to 300x400
...
- Update card height from 500px to 400px in homepage
- Adjust maxHeight in image processor from 1000px to 800px
- Update all processImage calls to use maxHeight: 800
- Optimized for better display ratio on homepage
2025-10-26 17:45:46 +08:00
chenpei
030fb2af0b
fix: Prevent concurrent upload conflicts with unique file names
...
- Add generateUniqueFileName function using crypto.randomBytes
- Replace Date.now() with timestamp + random hex for all file names
- Ensures unique file names even when multiple users upload simultaneously
- Fixes: temp PSD files, temp preview files, S3 preview files, and material files
- Resolves reported issue of upload errors with concurrent users
2025-10-26 17:21:39 +08:00
chenpei
0666edc4a8
feat: Update preview image dimensions to 300x500
...
- Modify PSD processor to crop long images to top 1200px
- Update image processor to support maxHeight parameter (1000px)
- Change homepage card height from 300px to 500px
- Update upload API to use new image processing parameters
- Support vertical/portrait images better with 300x500 display
2025-10-26 16:15:14 +08:00
chenpei
e69f15337d
feat: Add automatic PSD preview generation
...
- Add psd-processor library to auto-generate previews from PSD files
- Update upload API to detect PSD files and generate previews automatically
- Make preview image optional for PSD file uploads
- Update UploadModal UI to show PSD files don't require manual preview upload
- Install ag-psd package for PSD processing
2025-10-26 15:49:33 +08:00
chenpei
3b825883bb
feat: 添加多类型素材支持和系统外观设置功能 (v2.4.0)
...
新增功能:
- 素材类型系统:支持3DMAX/PSD/AI/CAD/C4D/其他等多种类型
- 智能表单:渲染器选项仅在3DMAX类型时显示
- 类型标签:首页卡片显示素材类型标签(橙色)
- 系统外观设置:自定义导航栏颜色、LOGO和网站名称
数据库变更:
- 新增materialType字段到materials表
- 新增materialType索引优化查询
- 新增SystemSettings表存储系统设置
技术改进:
- 完整的TypeScript类型支持
- 前后端完整适配
- 修复Next.js配置弃用警告
- 添加完整的部署文档
文件变更:
- 修改: 上传/编辑组件支持素材类型
- 修改: API接口处理新字段
- 新增: 系统设置管理页面
- 新增: 系统设置API路由
- 新增: 数据库迁移文件
- 更新: 项目文档和部署指南
2025-10-26 09:58:40 +08:00