6.8 KiB
6.8 KiB
标签优化说明 v2.1
📅 更新日期:2025-10-17
📝 标签更新概述
为了更好地匹配实际业务场景,对系统中的标签进行了全面优化:
| 原标签 | 新标签 | 说明 |
|---|---|---|
| 商品型号 | SPU | 更专业的电商术语,表示标准产品单元 |
| 一级分类 | 使用店铺 | 明确表示素材所属的电商店铺 |
| 场景名称/二级分类 | 场景类别 | 统一命名,表示素材适用的场景分类 |
🎯 更新范围
1. 前端组件
UploadModal.tsx(上传模态框)
- ✅ "商品型号" → "SPU"
- ✅ "一级分类" → "使用店铺"
- 提示文本:"输入新店铺名称"
- 按钮文本:"+ 新建店铺"
- 选择提示:"选择使用店铺"
- ✅ "二级分类/场景" → "场景类别"
- 提示文本:"输入新场景类别"
- 按钮文本:"+ 新建场景类别"
- 选择提示:"选择场景类别"
page.tsx(首页)
-
✅ 搜索框 placeholder:
- 原:"搜索商品型号、分类、场景、作者..."
- 新:"搜索SPU、店铺、场景类别、作者..."
-
✅ 筛选区域标题:
- "一级分类" → "使用店铺"
- "二级分类/场景" → "场景类别"
-
✅ 筛选标签显示:
- "一级分类: xxx" → "店铺: xxx"
- "二级分类: xxx" → "场景类别: xxx"
-
✅ 素材卡片信息:
- "一级分类:" → "店铺:"
- "二级分类:" → "场景类别:"
2. 后端API
/api/categories/route.ts
- ✅ 注释更新:"获取所有一级分类" → "获取所有使用店铺"
- ✅ 错误消息更新:
- "获取分类列表失败" → "获取店铺列表失败"
- "分类名称不能为空" → "店铺名称不能为空"
- "该分类已存在" → "该店铺已存在"
- "创建分类失败" → "创建店铺失败"
/api/scenes/route.ts
- ✅ 注释更新:"获取所有场景" → "获取所有场景类别"
- ✅ 错误消息更新:
- "获取场景列表失败" → "获取场景类别列表失败"
- "场景名称不能为空" → "场景类别名称不能为空"
- "该场景已存在" → "该场景类别已存在"
- "创建场景失败" → "创建场景类别失败"
/api/materials/route.ts
- ✅ 搜索注释更新:
- 原:"search in productModel, categoryName, sceneName, authorName"
- 新:"search in SPU, shop, scene category, author"
- ✅ 筛选注释更新:
- "Add category filter" → "Add shop filter (使用店铺)"
- "Add scene filter" → "Add scene category filter (场景类别)"
3. 数据库Schema
prisma/schema.prisma
model Material {
productModel String // SPU (原:商品型号)
categoryName String // 使用店铺 (原:一级分类名称)
sceneName String // 场景类别 (原:二级分类/场景名称)
...
}
model Category {
name String @unique // 使用店铺名称 (原:一级分类名称)
...
}
model Scene {
name String @unique // 场景类别名称 (原:二级分类/场景名称)
...
}
4. 部署脚本
update-deploy.sh
-
✅ 初始化数据更新:
# 原:初始化一级分类数据(家居、办公、商业等) # 新:初始化店铺数据(天猫旗舰店、京东自营等) -
✅ 部署完成提示新增标签更新说明:
标签更新: 📝 商品型号 → SPU 📝 一级分类 → 使用店铺 📝 场景名称 → 场景类别
💡 业务场景说明
SPU(Standard Product Unit)
- 定义:标准产品单元,电商行业标准术语
- 示例:
- iPhone 15 Pro Max 256GB(SPU)
- ├─ 深空黑色(SKU)
- ├─ 原色钛金属(SKU)
- └─ 白色钛金属(SKU)
- 用途:统一管理同一产品的所有变体
使用店铺
- 定义:素材所属的电商店铺/销售渠道
- 示例:
- 天猫旗舰店
- 京东自营
- 拼多多店铺
- 1688店铺
- 淘宝店铺
- 抖音小店
- 小红书店铺
- 用途:区分不同渠道的素材需求
场景类别
- 定义:素材适用的具体场景分类
- 示例:
- 客厅
- 卧室
- 厨房
- 办公室
- 商业展厅
- 户外场景
- 用途:快速找到特定场景的素材
📊 数据迁移
无需迁移
✅ 本次更新仅涉及标签文本更改,不涉及数据库字段名修改
✅ 现有数据完全兼容,无需数据迁移
✅ 只需要重新部署前端和后端代码即可
可选:更新初始数据
如果希望更新初始店铺数据,可以执行:
ssh root@192.168.58.20
cd /mnt/tank/apps/youyidian-3d
docker compose exec -T app npx prisma db execute --schema=/app/prisma/schema.prisma --stdin <<< "
-- 清空现有分类(可选)
DELETE FROM categories;
-- 插入新的店铺数据
INSERT INTO categories (id, name, \"createdAt\") VALUES
(gen_random_uuid(), '天猫旗舰店', NOW()),
(gen_random_uuid(), '京东自营', NOW()),
(gen_random_uuid(), '拼多多店铺', NOW()),
(gen_random_uuid(), '1688店铺', NOW()),
(gen_random_uuid(), '淘宝店铺', NOW()),
(gen_random_uuid(), '抖音小店', NOW()),
(gen_random_uuid(), '小红书店铺', NOW()),
(gen_random_uuid(), '其他店铺', NOW())
ON CONFLICT (name) DO NOTHING;
"
🚀 部署更新
方式一:自动部署(推荐)
cd /Users/lanmu/Desktop/gongxiangp2
./update-deploy.sh
方式二:手动部署
# 1. 打包
cd /Users/lanmu/Desktop/gongxiangp2
tar -czf update.tar.gz --exclude='node_modules' --exclude='.next' .
# 2. 上传
scp update.tar.gz root@192.168.58.20:/mnt/tank/apps/youyidian-3d/
# 3. 部署
ssh root@192.168.58.20
cd /mnt/tank/apps/youyidian-3d
tar -xzf update.tar.gz
docker compose down
docker compose up -d --build
✅ 验证更新
1. 上传页面
- 打开上传模态框
- 检查标签:
- ✅ "SPU"(而不是"商品型号")
- ✅ "使用店铺"(而不是"一级分类")
- ✅ "场景类别"(而不是"场景名称")
2. 首页
- 检查搜索框 placeholder
- 检查筛选区域标题:
- ✅ "使用店铺"
- ✅ "场景类别"
- 检查素材卡片信息显示
3. 功能测试
- 测试新建店铺
- 测试新建场景类别
- 测试搜索功能
- 测试筛选功能
📈 用户体验改进
更专业
- ✅ 使用行业标准术语(SPU)
- ✅ 提升系统专业度
更清晰
- ✅ "使用店铺"比"一级分类"更明确
- ✅ "场景类别"比"场景名称/二级分类"更统一
更易用
- ✅ 标签语义更明确
- ✅ 减少理解成本
- ✅ 提升操作效率
📞 技术支持
如有问题,请查看:
- 功能更新文档:
FEATURE_UPDATES.md - 快速部署指南:
QUICK_DEPLOY.md - 项目信息:
PROJECT_INFO.md
更新完成! 🎉