后台店铺数据重复检查独立成菜单:删除店铺导入测试、新增撞款详情卡片区

- 删除「店铺导入测试」菜单及全部实现:admin.html 面板、admin.js 逻辑、
  admin_api.py 路由/常量/权限映射、Java 默认菜单
- 「店铺数据记录」页内子 tab 移除,只保留店铺数据列表
- 「店铺管理」下新增「店铺数据重复检查」菜单(V106 导入测试菜单保留并新增
  V107 清理 + 幂等插入新菜单,Java 清单同步)
- 新面板:筛选/指标卡/店铺上架分布/矩阵表格/撞款详情卡片区(同 ASIN 跨店
  上架明细,查看明细开抽屉,上架时间倒序)
- 重复扫描结果改为 MySQL 缓存 + 每日定时扫描(start_duplicate_scan_scheduler)
- 新增 test_admin_shop_data_duplicate_check.py 单元测试
This commit is contained in:
2026-09-04 00:16:14 +08:00
parent 672b9f9b46
commit d0db577a9c
9 changed files with 2693 additions and 514 deletions
@@ -0,0 +1,9 @@
-- V106: 新增「店铺导入测试」后台菜单(用于重复 ASIN 结果模拟验证)
-- 幂等:仅当 column_key 不存在时插入,绑定到「店铺管理」分组(admin_group_shop)。
INSERT INTO columns (name, column_key, menu_type, route_path, sort_order, parent_id)
SELECT '店铺导入测试', 'admin_shop_data_import', 'admin', 'shop-data-import', 83, parent.id
FROM columns parent
WHERE parent.column_key = 'admin_group_shop'
AND NOT EXISTS (
SELECT 1 FROM columns WHERE column_key = 'admin_shop_data_import'
);
@@ -0,0 +1,18 @@
-- V107: 「店铺导入测试」菜单下线,新增「店铺数据重复检查」菜单
-- 1) 删除「店铺导入测试」(admin_shop_data_import)后台菜单行与其授权记录(幂等)
DELETE FROM user_column_permission
WHERE column_id IN (
SELECT id FROM columns WHERE column_key = 'admin_shop_data_import'
);
DELETE FROM columns WHERE column_key = 'admin_shop_data_import';
-- 2) 新增「店铺数据重复检查」菜单,挂到「店铺管理」分组(admin_group_shop
-- 幂等:仅当 column_key 不存在时插入。
INSERT INTO columns (name, column_key, menu_type, route_path, sort_order, parent_id)
SELECT '店铺数据重复检查', 'admin_shop_data_duplicate_check', 'admin', 'shop-data-duplicate-check', 84, parent.id
FROM columns parent
WHERE parent.column_key = 'admin_group_shop'
AND NOT EXISTS (
SELECT 1 FROM columns WHERE column_key = 'admin_shop_data_duplicate_check'
);