feat(需求): 撞款重复检查改查数据库——①采集明细先落库再更新文件(V111 biz_shop_data_crawl_item行级明细,归档时countryResults展开,同店同日幂等替换) ②撞款扫描换源直接查明细表(不再解析OSS xlsx,修复旧文件表头差异致4家店静默丢弃) ③存量Excel数据自动迁移(日报快照row_payload优先+OSS宽松表头回退:ASIN码/小写兼容) ④移除84家店铺全量空态注入(重复检查基数=已采集店,超管口径8家) ⑤新增明细聚合/宽松解析单测6个
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
-- 店铺数据采集行级明细表:采集数据先落库再更新文件,撞款重复检查直接查库(不再解析 Excel)。
|
||||
-- 语义:每店×每日一份快照(countryResults 展开为行);撞款扫描取每家店最新 business_date 的明细。
|
||||
CREATE TABLE IF NOT EXISTS biz_shop_data_crawl_item (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT,
|
||||
shop_id BIGINT NULL COMMENT '店铺 ID(biz_shop_manage.id)',
|
||||
shop_name VARCHAR(255) NOT NULL COMMENT '规范化店铺名(与结果文件 source_filename 一致)',
|
||||
group_name VARCHAR(255) NULL COMMENT '归档时店铺分组名快照(多分组「、」连接)',
|
||||
business_date DATE NOT NULL COMMENT '采集批次日期(每日文件日期)',
|
||||
country VARCHAR(8) NOT NULL COMMENT '国家站点码(UK/DE/FR/ES/IT,展示层统一中文)',
|
||||
asin VARCHAR(32) NOT NULL COMMENT 'ASIN',
|
||||
brand VARCHAR(512) NULL COMMENT '品牌',
|
||||
price VARCHAR(64) NULL COMMENT '价格(原始文本)',
|
||||
item_date VARCHAR(64) NULL COMMENT '原「日期」列原文(如 2026年8月15日 上午10:59)',
|
||||
units_sold VARCHAR(64) NULL COMMENT '售出件数(原始文本)',
|
||||
item_json JSON NULL COMMENT '其余列原文兜底(库存销量/销售排名/浏览量/商品图等)',
|
||||
result_id BIGINT NULL COMMENT '来源结果文件行 id(biz_file_result.id)',
|
||||
task_id BIGINT NULL COMMENT '来源任务 id(biz_file_task.id)',
|
||||
daily_file_id BIGINT NULL COMMENT '来源每日文件行 id(biz_shop_data_crawl_daily_file.id)',
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY uk_shop_data_crawl_item_batch (shop_name, business_date, country, asin),
|
||||
KEY idx_shop_data_crawl_item_asin (asin),
|
||||
KEY idx_shop_data_crawl_item_shop_date (shop_name, business_date),
|
||||
KEY idx_shop_data_crawl_item_biz_date (business_date)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='店铺数据采集行级明细(快照批次)';
|
||||
Reference in New Issue
Block a user