- 在商品模型中新增 isTop 字段支持置顶状态(1置顶,0不置顶) - 商品列表新增置顶列,支持列表内联切换置顶状态 - 启用排序号列排序功能,置顶列参与前端排序 - 新增单个商品上架/下架切换接口及批量上下架操作 - 优化商品列表工具栏和选中操作栏,加入批量上架、下架按钮 - 商品分类及图片列表调用 OSS 图片压缩接口处理展示图片 - 新增删除商品导入模板及图片导入模板下载链接与使用说明 - 优化图片压缩工具,新增去除 URL 中 x-oss-process 参数功能,确保调用参数生效
36 lines
1.8 KiB
SQL
36 lines
1.8 KiB
SQL
-- ============================================================
|
||
-- 商品表新增「置顶」字段 is_top,并调整默认排序(方案 B)
|
||
-- ------------------------------------------------------------
|
||
-- 约定说明(依据本项目代码 /Users/gxwebsoft/VUE/guilixu-admin):
|
||
-- 1. is_top = 1 表示置顶,0(默认)表示不置顶
|
||
-- 2. 表名/字段名 snake_case 约定(Node + TypeORM 常见);
|
||
-- 若你的库列名是驼峰(goodsId / isTop),请自行替换
|
||
-- 3. 与 recommend(推荐)同为「列表内联一键切换」的布尔开关
|
||
-- 4. 混合排序思路:置顶的永远在最前;置顶内部按排序号升序;
|
||
-- 其余商品按创建时间倒序(绝大多数商品无需手动排)
|
||
-- ============================================================
|
||
|
||
-- 第一步:新增字段(已存在则跳过;MySQL 5.7 / 8 通用)
|
||
ALTER TABLE shop_goods
|
||
ADD COLUMN is_top TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否置顶:1置顶 0不置顶';
|
||
|
||
-- (可选)联合索引,置顶 + 排序号分页查询更稳
|
||
-- ALTER TABLE shop_goods
|
||
-- ADD INDEX idx_is_top_sort (is_top, sort_number);
|
||
|
||
-- 第二步:调整分页查询(page 接口)默认排序
|
||
-- 原(示例):ORDER BY create_time DESC
|
||
-- 改: ORDER BY is_top DESC, sort_number ASC, create_time DESC
|
||
-- 说明:若后端排序字段来自前端 orders 参数,需放开 is_top / sort_number 参与排序
|
||
-- (前端「置顶」「排序号」列已开启 sorter,会向后端传 orders)
|
||
|
||
-- 第三步(验证):确认字段已加、数据默认 0,且排序符合预期
|
||
SELECT goods_id,
|
||
name,
|
||
is_top,
|
||
sort_number,
|
||
create_time
|
||
FROM shop_goods
|
||
ORDER BY is_top DESC, sort_number ASC, create_time DESC
|
||
LIMIT 20;
|