feat(admin): 店铺重复检查导出「站点」列改「国家」中文显示;撞款抽屉按点击处定位

- 导出 CSV 列头 站点→国家,值映射中文(DE德国/UK英国/FR法国/IT意大利/ES西班牙,未知回退原值)
- 撞款详情抽屉以触发元素为垂直锚点并钳制在视口内,不再贴区块/页面顶部导致看不见需上滑
- 同步 Java 静态托管副本;更新 Java/Python 相关断言
This commit is contained in:
2026-09-05 01:53:12 +08:00
parent d6086ec7b0
commit d3b499b596
5 changed files with 59 additions and 34 deletions
@@ -147,10 +147,14 @@ class ShopDataDuplicateCheckQueryServiceTest {
assertThat(bytes[2]).isEqualTo((byte) 0xBF);
String text = new String(bytes, StandardCharsets.UTF_8);
String[] lines = text.split("\r\n");
assertThat(lines[0]).endsWith("ASIN,店铺数,店铺,分组,站点,上架时间,价格,品牌");
assertThat(lines[0]).endsWith("ASIN,店铺数,店铺,分组,国家,上架时间,价格,品牌");
// 数据行 = E(3 记录) + A(2) + F(2) = 7,非空行总数为 8(尾随 CRLF 会产生一个空元素)
long nonEmpty = java.util.Arrays.stream(lines).filter(line -> !line.isEmpty()).count();
assertThat(nonEmpty).isEqualTo(8);
assertThat(lines[1]).startsWith("E0000001,3,");
// 站点代码列导出为中文国家名(UK→英国、FR→法国),与页面「国家」展示一致
assertThat(lines[1]).startsWith("E0000001,3,ShopA,GroupA,英国,");
assertThat(text).contains(",法国,");
assertThat(lines[1]).doesNotContain(",UK,");
}
}