## MODIFIED Requirements ### Requirement: 运营商上游流量重置日配置 `tb_carrier` SHALL 包含 `data_reset_day` 字段(INT, 1-28),表示该运营商每月上游流量重置日(即上游运营商清零网关计数器的日期)。创建/编辑运营商时 SHALL 支持设置此字段。 注意:此字段与套餐级别的 `data_reset_cycle`(daily/monthly/yearly)是**完全独立的两个维度**。`data_reset_day` 用于检测上游网关值下降是否为正常重置,`data_reset_cycle` 用于我们系统套餐的已用量定时归零。 #### Scenario: 创建运营商时指定重置日 - **WHEN** 管理员创建运营商,指定 `data_reset_day = 27` - **THEN** 该运营商记录的 `data_reset_day` SHALL 为 27 #### Scenario: 轮询时读取重置日判断上游重置 - **WHEN** 轮询系统检测到网关流量值下降(`increment < 0`) - **THEN** 系统 SHALL 读取该卡对应运营商的 `data_reset_day` - **AND** 使用 `isResetWindow(now, resetDay)` 判断是否在重置日窗口内(重置日当天 + 前一天容错) - **AND** 窗口内视为正常上游重置,窗口外记录 Warn 日志并丢弃异常值