# 日级报表所有指标的来源和计算方式 - 完整版(v6.0) **更新日期**: 2026-05-16 **版本**: v6.0 - 完整字段来源总结 **状态**: ✅ 编译通过,逻辑最终确定 --- ## 核心指标定义变更 ### 24H换单率 - 最终定义 **新公式**: ``` 24H换单率 = 高标签率考核通过数 / 高标签率应该换单数 × 100% 其中: - 高标签率考核通过数 = 16点前考核通过 + 16点后考核通过 - 高标签率应该换单数 = 所有冻结标签率≥80%的订单 ``` **场景说明**: ``` 情景1:冻结标签率 = 79% (< 80%) ├─ 100个订单 ├─ 完成数:80个 ├─ 贡献到24H换单率的分子:0(不计入) ├─ 贡献到24H换单率的分母:0(不计入) 情景2:冻结标签率 = 80% (>= 80%) ├─ 100个订单 ├─ 考核通过数:75个 ├─ 贡献到24H换单率的分子:75(全部计入) ├─ 贡献到24H换单率的分母:100(全部计入) 汇总24H换单率: 24H换单率 = 75 / 100 = 75% (注意:79%的100个订单不参与计算) ``` --- ## 完整字段清单与数据来源 ### 第1组:基础时间字段 | 字段名 | 中文名 | 数据来源 | 计算方式 | 说明 | |-------|-------|--------|--------|------| | Date | 日期 | ArrivalRequests | DATE(CONVERT_TZ(到货时间, '+00:00', '-05:00')) | UTC-5时区的自然日 | ### 第2组:基础统计字段(直接来自原始数据) | 字段名 | 中文名 | 数据来源 CTE | 查询逻辑 | 说明 | |-------|-------|-----------|--------|------| | DailyNewReplaceCount | 当日新增换单数 | DailyBase | COUNT(DISTINCT 交接单) WHERE 到货日期=当日 | 当天新增的交接单总数 | | DailyFailureCount | 当日换单失败数 | DailyFailedOrders | COUNT(DISTINCT 订单) WHERE 失败标记时间=当日 | 当天新增失败的订单数 | | DailySuccessCount | 当日换单成功数 | DailySuccessCount | COUNT(DISTINCT 订单) WHERE 首次成功时间=当日 | 当天首次成功扫描的订单数 | | DailyStopCount | 当日STOP数 | DailyScanMetrics | COUNT(DISTINCT 订单) WHERE STOP标记时间=当日 | 当天被STOP的订单数 | | BeforeNoonArrivedCount | 16点前到仓包裹数 | DailyBase | COUNT(DISTINCT 订单) WHERE 到货时间 BETWEEN 当日00:00 AND 16:00 | 当天早上16点前到达的订单 | | AfternoonArrivedCount | 16点后到仓包裹数 | DailyBase | COUNT(DISTINCT 订单) WHERE 到货时间 BETWEEN 当日16:01 AND 23:59 | 当天下午16点后到达的订单 | | DailyCompletedOrders | 当日完成数 | DailyCompletedOrders | COUNT(DISTINCT 订单) WHERE 完成时间=当日 | 当天完成流程的订单数 | | Daily24HCompleted | 24H内完成数 | Daily24HCompletedOrders | COUNT(DISTINCT 订单) WHERE 完成时间在24小时内 | 24小时周期内完成的订单数 | | DailyLabelPushCount | 当日标签推送数 | DailyBase | COUNT(DISTINCT 订单) WHERE 标签推送时间=当日 | 当天新增推送的标签数 | | DailyScanCount | 当日扫描数 | DailyScanMetrics | COUNT(DISTINCT 订单) WHERE 首次扫描时间=当日 | 当天首次被扫描的订单数 | ### 第3组:递推累计字段(需要上一日数据) | 字段名 | 中文名 | 计算方式 | 说明 | |-------|-------|--------|------| | CumulativeTotalReplaceCount | 累计要换的总单数 | MAX(0, 前一日累计 + 前一日新增 - 前一日完成) | 当前待处理的积压交接单数 | | ShouldReplaceCount | 当天应该换单数 | 累计要换的总单数 + 当日新增换单数 | 当天的完成目标数 | | UnfinishedFailureCount | 换单失败未完结订单 | 从HistoryUnfinished或LatestUnfinished | 失败且未完成的订单数 | ### 第4组:考核维度字段 #### 4.1 高标签率考核通过(标签率≥80%) | 字段名 | 中文名 | 数据来源 CTE | 考核逻辑 | 说明 | |-------|-------|-----------|--------|------| | BeforeNoonPassedCount | 16点前考核通过包裹数 | DailyBeforeNoonPassed | WHERE 到货时间<16:00 AND 首次成功时间≤考核时间 AND 标签率≥80% | 16点前到仓,标签率高,按16点分段规则考核通过 | | AfternoonPassedCount | 16点后考核通过包裹数 | DailyAfternoonPassed | WHERE 到货时间≥16:00 AND 首次成功时间≤考核时间 AND 标签率≥80% | 16点后到仓,标签率高,按23:59:59规则考核通过 | **考核时间规则**: ``` IF 冻结标签率 >= 80% THEN IF 到货时间 < 16:00 THEN 考核时间 = 当日16:00 ~ 次日16:00 ELSE 考核时间 = 当日16:00 ~ 次日23:59:59 END IF ELSE 考核时间 = NULL(完成即达标) END IF ``` #### 4.2 低标签率考核通过(标签率<80%) | 字段名 | 中文名 | 数据来源 CTE | 考核逻辑 | 说明 | |-------|-------|-----------|--------|------| | LowLabelRatePassedCount | 低标签率考核通过包裹数 | DailyLowLabelRatePassed | WHERE 首次成功时间 IS NOT NULL AND 标签率<80% | 标签率低,只要完成就达标 | ### 第5组:标签率维度字段 | 字段名 | 中文名 | 数据来源 CTE | 计算方式 | 说明 | |-------|-------|-----------|--------|------| | HighLabelRateShouldCount | 高标签率应该换单数 | DailyHighLabelRateShould | COUNT(所有冻结标签率≥80%的交接单中的包裹) | 应该按高标签率规则处理的订单总数 | | LowLabelRateShouldCount | 低标签率应该换单数 | DailyLowLabelRateShould | COUNT(所有冻结标签率<80%的交接单中的包裹) | 应该按低标签率规则处理的订单总数 | ### 第6组:衍生计算字段 #### 6.1 考核通过总数 | 字段名 | 中文名 | 计算公式 | 说明 | |-------|-------|--------|------| | AssessmentPassedCount | 考核通过总数 | 16点前考核通过 + 16点后考核通过 + 低标签率考核通过 | 所有通过考核的订单总数 | #### 6.2 当天换单完成率 | 字段名 | 中文名 | 计算公式 | 说明 | |-------|-------|--------|------| | DailyCompletionRate | 当天换单完成率 | 当日完成数 / 当天应该换单数 × 100% | 当天的完成达成率 | #### 6.3 24H换单率(最终定义) | 字段名 | 中文名 | 计算公式 | 说明 | |-------|-------|--------|------| | Rate24Hour | 24H换单率 | 高标签率考核通过数 / 高标签率应该换单数 × 100% | **关键KPI:标签率≥80%的订单在24小时内的考核达成率** | **详细计算**: ``` 高标签率考核通过数 = 16点前考核通过包裹数 + 16点后考核通过包裹数 24H换单率 = 高标签率考核通过数 / 高标签率应该换单数 × 100% 示例: 16点前考核通过:40个 16点后考核通过:35个 高标签率考核通过数 = 40 + 35 = 75个 高标签率应该换单数 = 100个 24H换单率 = 75 / 100 = 75% ``` #### 6.4 元数据 | 字段名 | 中文名 | 计算方式 | 说明 | |-------|-------|--------|------| | DataFetchTime | 数据拉取时间(UTC-5) | UTC_TIMESTAMP() - INTERVAL 5 HOUR | 报表生成时间 | --- ## 冻结标签率详解 ### 定义 ``` 冻结标签率 = (最早扫描时间 > 标签推送时间的包裹数) / 总包裹数 × 100% ``` ### 计算来源 ``` InterchangeUnitLabelRates CTE: ├─ 对每个交接单计算 ├─ 最早扫描时间 = MIN(label_scan_history.CreatedAt) ├─ 标签推送时间 = label_replace_requests.LabelRetrievedAt └─ 比较:最早扫描时间 > 标签推送时间 ↓ TRUE → 标签在作业开始前推送(高标签率) FALSE → 标签在作业开始时或之后推送(低标签率) ``` ### 应用 ``` IF 冻结标签率 >= 80% THEN 整个交接单的所有包裹 → 按高标签率规则处理 ├─ 16点前到仓 → 考核时间 = 当日16:00 ~ 次日16:00 └─ 16点后到仓 → 考核时间 = 当日16:00 ~ 次日23:59:59 ELSE IF 冻结标签率 < 80% THEN 整个交接单的所有包裹 → 按低标签率规则处理 └─ 完成即达标(无固定考核时间) END IF ``` --- ## 完整的数据流示例 ### 场景数据 ``` 【高标签率交接单】冻结标签率 = 85% ├─ 100个应该完成的订单 ├─ 16点前到仓:60个 ├─ 16点后到仓:40个 ├─ 16点前考核通过:50个 ├─ 16点后考核通过:30个 【低标签率交接单】冻结标签率 = 30% ├─ 100个应该完成的订单 ├─ 完成即达标 ├─ 实际完成:85个 【总计】200个订单 ``` ### 指标计算 ``` 1. 标签率维度统计 高标签率应该换单数 = 100(冻结标签率≥80%的交接单) 低标签率应该换单数 = 100(冻结标签率<80%的交接单) 2. 考核通过统计 高标签率考核通过 = 50 + 30 = 80个 低标签率考核通过 = 85个(完成即达标) 考核通过总数 = 80 + 85 = 165个 3. 完成率统计 当天换单完成率 = (50 + 30 + 85) / 200 × 100% = 82.5% 4. 24H换单率(关键指标) 24H换单率 = 高标签率考核通过数 / 高标签率应该换单数 = 80 / 100 × 100% = 80% 注意:低标签率的85个完成订单不参与这个指标 因为24H换单率只关注"标签率≥80%"的履约情况 ``` --- ## 指标的业务含义 ### 当天换单完成率 (82.5%) - **含义**:当天应该完成的所有200个订单中,有82.5%在当天完成 - **用途**:衡量当天的工作效率 - **计算**:`(当日完成数) / (当天应该换单数)` ### 24H换单率 (80%) - **含义**:标签率≥80%的100个订单中,有80个在24小时内满足考核条件 - **用途**:**客户看到的关键指标**,衡量"高质量需求"的履约能力 - **计算**:`(高标签率考核通过数) / (高标签率应该换单数)` - **为什么不包括低标签率**? - 低标签率的订单只需"完成即达标",门槛较低 - 24H换单率重点反映"标签率高"(难度大)的订单的完成情况 - 对客户更有说服力 --- ## SQL CTE 关键依赖关系 ``` 基础表 (label_replace_requests, OverallScanStatus, arrival_handover_forms) ↓ ┌─ ArrivalRequests (考核时间计算) │ ↓ ├─ InterchangeUnitLabelRates (冻结标签率计算) │ ↓ ├─ DailyBeforeNoonPassed (16点前考核通过) │ ├─ DailyAfternoonPassed (16点后考核通过) │ ↓ ├─ DailyHighLabelRateAssessed (高标签率考核通过数汇总) │ ├─ DailyLowLabelRatePassed (低标签率考核通过) │ ├─ DailyHighLabelRateShould (高标签率应该换单数) │ ├─ DailyLowLabelRateShould (低标签率应该换单数) │ └─ DailyStatsWithPrev (最终汇总) ↓ 最终SELECT (所有指标输出) ``` --- ## 编译状态 ✅ **编译成功** (exit code 0) - 24H换单率公式已修正 - 所有字段来源已梳理 - SQL逻辑已完整 --- ## 关键总结 ### 24H换单率的核心价值 **公式**:`高标签率考核通过数 / 高标签率应该换单数` **意义**: 1. ✅ **专注于高难度需求**:只看标签率≥80%的订单 2. ✅ **衡量24小时履约**:在规定考核时间内是否完成 3. ✅ **对客户有说服力**:客观反映在更高要求下的完成能力 4. ✅ **分子分母明确**:分子=考核通过,分母=应该换单 ### 与其他指标的区别 | 指标 | 分子 | 分母 | 涵盖范围 | |------|------|------|--------| | 当天完成率 | 当日完成数 | 当天应该换单数 | 所有订单 | | 24H换单率 | 高标签率考核通过 | 高标签率应该换单 | **仅≥80%** | | 考核通过率 | 考核通过总数 | 高标签率应该换单 | 参考用 |