239 lines
6.7 KiB
Markdown
239 lines
6.7 KiB
Markdown
# 24H换单率计算逻辑最终修正 - v5.0
|
||
|
||
**更新日期**: 2026-05-16
|
||
**版本**: v5.0 - 24H换单率完整定义
|
||
**状态**: ✅ 编译通过
|
||
|
||
---
|
||
|
||
## 核心修正:24H换单率的正确含义
|
||
|
||
### 用户提供的场景说明
|
||
|
||
```
|
||
场景1:冻结标签率 = 79% (< 80%,低标签率)
|
||
├─ 100个应该完成的订单
|
||
├─ 规则:完成即达标
|
||
├─ 24H完成数:80个
|
||
└─ 局部24H换单率 = 80 / 100 = 80%
|
||
|
||
场景2:冻结标签率 = 80% (>= 80%,高标签率)
|
||
├─ 100个应该完成的订单
|
||
├─ 规则:按16点前后分段+考核时间
|
||
├─ 考核通过数:75个(16点前通过 + 16点后通过)
|
||
└─ 局部24H换单率 = 75 / 100 = 75%
|
||
|
||
汇总:
|
||
├─ 低标签率:80个完成 + 100个应该完成 = 80%
|
||
├─ 高标签率:75个考核通过 + 100个应该完成 = 75%
|
||
└─ 整体24H换单率 = (80 + 75) / (100 + 100) = 155 / 200 = 77.5%
|
||
```
|
||
|
||
### 关键洞察
|
||
|
||
**24H换单率应该按照"标签率维度"分别计算,然后汇总**:
|
||
|
||
| 标签率维度 | 应该完成数 | 完成/通过数 | 计算 | 含义 |
|
||
|----------|---------|----------|------|------|
|
||
| 低标签率(<80%)| 100 | 24H完成=80 | 80/100 | 完成即达标的24小时完成情况 |
|
||
| 高标签率(≥80%)| 100 | 考核通过=75 | 75/100 | 按规则考核通过的情况 |
|
||
| **整体** | **200** | **155** | **155/200** | **整体24小时的履约达成率** |
|
||
|
||
---
|
||
|
||
## SQL 实现修改
|
||
|
||
### 新增 CTE 1: DailyLowLabelRate24HCompleted
|
||
|
||
```sql
|
||
DailyLowLabelRate24HCompleted AS (
|
||
SELECT
|
||
ar.到货日期 AS 日期,
|
||
COUNT(DISTINCT ar.NeutralWaybillNumber) AS 低标签率24H完成数
|
||
FROM ArrivalRequests ar
|
||
INNER JOIN OverallScanStatus oss ON ar.NeutralWaybillNumber = oss.NeutralWaybillNumber
|
||
WHERE
|
||
oss.曾成功 = 1
|
||
AND oss.首次成功时间 IS NOT NULL
|
||
-- 低标签率订单:考核时间为NULL(完成即达标)
|
||
AND ar.考核时间 IS NULL
|
||
GROUP BY ar.到货日期
|
||
)
|
||
```
|
||
|
||
**说明**:
|
||
- 统计冻结标签率 < 80% 的订单在24H内完成的数量
|
||
- 这些订单的规则是"完成即达标",所以只需统计"曾成功"的
|
||
|
||
### 新增 CTE 2: DailyHighLabelRateAssessed
|
||
|
||
```sql
|
||
DailyHighLabelRateAssessed AS (
|
||
SELECT
|
||
日期,
|
||
SUM(16点前考核通过包裹数) + SUM(16点后考核通过包裹数) AS 高标签率考核通过数
|
||
FROM (
|
||
SELECT 日期, 16点前考核通过包裹数, 0 AS 16点后考核通过包裹数 FROM DailyBeforeNoonPassed
|
||
UNION ALL
|
||
SELECT 日期, 0 AS 16点前考核通过包裹数, 16点后考核通过包裹数 FROM DailyAfternoonPassed
|
||
) t
|
||
GROUP BY 日期
|
||
)
|
||
```
|
||
|
||
**说明**:
|
||
- 统计冻结标签率 ≥ 80% 的订单中,根据16点前/后分段规则考核通过的数量
|
||
- 注意:这里不包括"低标签率考核通过包裹数"(那些本来就是标签率<80%的)
|
||
|
||
### 修改24H换单率计算
|
||
|
||
```sql
|
||
24H换单率 = (低标签率24H完成数 + 高标签率考核通过数)
|
||
/ (低标签率应该换单数 + 高标签率应该换单数) × 100%
|
||
```
|
||
|
||
**这个公式的构成**:
|
||
|
||
- **分子**:
|
||
- `低标签率24H完成数`:标签率<80%且24H内完成的订单
|
||
- `高标签率考核通过数`:标签率≥80%且按规则考核通过的订单
|
||
|
||
- **分母**:
|
||
- `低标签率应该换单数`:所有标签率<80%的订单总数
|
||
- `高标签率应该换单数`:所有标签率≥80%的订单总数
|
||
|
||
---
|
||
|
||
## 数据流示例
|
||
|
||
### 完整的日报表数据
|
||
|
||
```
|
||
【输入数据】
|
||
|
||
低标签率维度 (冻结标签率 < 80%):
|
||
├─ 低标签率应该换单数: 100
|
||
├─ 低标签率24H完成数: 80
|
||
├─ 低标签率24H换单率: 80/100 = 80%
|
||
|
||
高标签率维度 (冻结标签率 >= 80%):
|
||
├─ 高标签率应该换单数: 100
|
||
├─ 16点前考核通过: 40
|
||
├─ 16点后考核通过: 35
|
||
├─ 高标签率考核通过数: 40 + 35 = 75
|
||
├─ 高标签率24H换单率: 75/100 = 75%
|
||
|
||
【计算】
|
||
|
||
整体24H换单率 = (低标签率24H完成数 + 高标签率考核通过数)
|
||
/ (低标签率应该换单数 + 高标签率应该换单数)
|
||
= (80 + 75) / (100 + 100)
|
||
= 155 / 200
|
||
= 77.5%
|
||
|
||
【输出】
|
||
|
||
日期: 2026-05-16
|
||
低标签率应该换单数: 100
|
||
高标签率应该换单数: 100
|
||
低标签率24H完成数: 80
|
||
高标签率考核通过数: 75
|
||
16点前考核通过包裹数: 40
|
||
16点后考核通过包裹数: 35
|
||
24H换单率: 77.5%
|
||
```
|
||
|
||
---
|
||
|
||
## 关键字段说明
|
||
|
||
### 新增字段
|
||
|
||
| 字段 | 含义 | 来源 | 说明 |
|
||
|------|------|------|------|
|
||
| 低标签率24H完成数 | 标签率<80%的24H完成订单数 | DailyLowLabelRate24HCompleted | 完成即达标的24小时完成情况 |
|
||
| 高标签率考核通过数 | 标签率≥80%的考核通过订单数 | DailyHighLabelRateAssessed | 16点前考核通过 + 16点后考核通过 |
|
||
|
||
### 24H换单率计算逻辑
|
||
|
||
```
|
||
24H换单率用途:衡量24小时内的整体履约达成率
|
||
|
||
分子 = 低标签率24H完成 + 高标签率考核通过
|
||
= 所有在24H内满足规则的订单
|
||
|
||
分母 = 低标签率应该换单 + 高标签率应该换单
|
||
= 所有应该完成的订单总数
|
||
|
||
结果 = 分子 / 分母
|
||
= 整体24小时的履约达成情况
|
||
```
|
||
|
||
---
|
||
|
||
## 完整的指标体系(最终版)
|
||
|
||
### 基础统计指标(11个)
|
||
```
|
||
日期、当日新增换单数、当日换单失败、当日换单成功数、当日STOP数、
|
||
16点前到仓、16点后到仓、当日完成数、24H内完成数、
|
||
当日标签推送数、当日扫描数
|
||
```
|
||
|
||
### 递推计算指标(2个)
|
||
```
|
||
累计要换的总单数、当天应该换单数
|
||
```
|
||
|
||
### 逻辑相关指标(1个)
|
||
```
|
||
换单失败未完结订单
|
||
```
|
||
|
||
### 考核维度指标(3个)
|
||
```
|
||
16点前考核通过、16点后考核通过、低标签率考核通过
|
||
```
|
||
|
||
### 标签率维度指标(2个)
|
||
```
|
||
高标签率应该换单数、低标签率应该换单数
|
||
```
|
||
|
||
### 衍生计算指标(4个)
|
||
```
|
||
考核通过总数、当天换单完成率、24H换单率、数据拉取时间
|
||
```
|
||
|
||
### 24H换单率支撑字段(2个)
|
||
```
|
||
低标签率24H完成数、高标签率考核通过数
|
||
```
|
||
|
||
---
|
||
|
||
## 编译状态
|
||
|
||
✅ **编译成功**
|
||
- 所有新增CTE已定义
|
||
- 24H换单率计算公式已修正
|
||
- JOIN语句已更新
|
||
- 无编译错误
|
||
|
||
---
|
||
|
||
## 业务意义总结
|
||
|
||
**24H换单率 = 77.5% 说明**:
|
||
|
||
在当日的200个应该完成的订单中:
|
||
- 100个是标签率低的订单 → 80个在24H内完成 (80%)
|
||
- 100个是标签率高的订单 → 75个满足规则并通过考核 (75%)
|
||
- 整体:155个完成/通过 → **77.5%的整体履约达成**
|
||
|
||
这个指标对客户有说服力,因为:
|
||
1. 分子是实际完成的订单(不区分标签率)
|
||
2. 分母是应该完成的订单总数(统一标准)
|
||
3. 结果反映了整个团队的24小时履约能力
|
||
|