# H1/H2 分层数据架构

## 设计原则

- **H1（1-6月）静态固化**：季度末一次性拉取+顺丰查询，写入 `h1_archive.json`（3KB纯汇总）
- **H2（7月+）动态实时**：每日cron刷新，仅查未归档订单的顺丰轨迹
- **自动归档**：已签收>7天的H2订单自动归入H1

## 数据文件结构

```
data/
├── h1_archive.json        # H1汇总（月度金额/客户/部门），~3KB
├── h2_live.json           # H2实时明细，~300KB
├── shipment_status.json   # H2 + H1汇总指标（前端主数据源）
└── mcp_customers.json     # 客户表+2026累计采购
```

## shipment_status.json 结构

```json
{
  "total": 343,
  "orders": [...],
  "full_year_tax": 23039076.16,
  "h1_summary": {"total_orders":3785, "status":{"已签收":934, "无物流":2718, ...}},
  "mcp_customer_count": 1678,
  "mcp_contact_count": 7723
}
```

## 前端渲染必须注意
- `ps.total` 排除 no_tracking
- `h1Summary.status['已签收']` 中文键名（不是 `.delivered`）
- H1合并用 `h1Tracked = h1Total - h1NoTracking`
