140 lines
4.6 KiB
Markdown
140 lines
4.6 KiB
Markdown
|
|
# DWBG9FB3 RA 安全评估 — 千分制计算说明
|
|||
|
|
|
|||
|
|
## 核心原则
|
|||
|
|
|
|||
|
|
- 所有分值为**千分制(0-1000)**
|
|||
|
|
- **分值越高越安全**(与风险扣分相反)
|
|||
|
|
- 各维度先统计**风险扣分**,再换算:**安全分 = 1000 - 风险扣分**
|
|||
|
|
|
|||
|
|
## 字段与方法对应关系
|
|||
|
|
|
|||
|
|
| 输出字段 | 计算方法 | 统计逻辑 |
|
|||
|
|
| :--- | :--- | :--- |
|
|||
|
|
| `ra_fraud_score` | `calcRAFraudScore` | `1000 - calcRAFraudRiskPoints` |
|
|||
|
|
| `ra_credit_score` | `calcRACreditScore` | `1000 - calcRACreditRiskPoints` |
|
|||
|
|
| `ra_judicial_score` | `calcRAJudicialScore` | `1000 - calcRAJudicialRiskPoints` |
|
|||
|
|
| `ra_verify_score` | `calcRAVerifyScore` | `1000 - calcRAVerifyRiskPoints` |
|
|||
|
|
| `ra_score` | `buildDWBG9FB3RA` | 四维安全分加权汇总 |
|
|||
|
|
| `ra_level` | `raLevelFromScore` | 由 `ra_score` 映射 A-F |
|
|||
|
|
|
|||
|
|
## 等级划分(越高越安全,每档间隔 100)
|
|||
|
|
|
|||
|
|
| 等级 | 分数区间 | 含义 |
|
|||
|
|
| :--- | :--- | :--- |
|
|||
|
|
| A | 900 - 1000 | 最安全 |
|
|||
|
|
| B | 800 - 899 | 较安全 |
|
|||
|
|
| C | 700 - 799 | 一般 |
|
|||
|
|
| D | 600 - 699 | 较不安全 |
|
|||
|
|
| E | 500 - 599 | 不安全 |
|
|||
|
|
| F | 0 - 499 | 最不安全 |
|
|||
|
|
|
|||
|
|
## 综合分公式(ra_score)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
ra_score = round(
|
|||
|
|
ra_fraud_score × 25% +
|
|||
|
|
ra_credit_score × 35% +
|
|||
|
|
ra_judicial_score × 25% +
|
|||
|
|
ra_verify_score × 15%
|
|||
|
|
)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 一、ra_fraud_score
|
|||
|
|
|
|||
|
|
- **方法链:** `calcRAFraudScore` → `calcRAFraudRiskPoints` → `toRASafetyScore`
|
|||
|
|
- **数据来源:** `behavior`、`complaint`、`fraud`、`special`
|
|||
|
|
|
|||
|
|
| 风险扣分项 | 子字段路径 | 触发条件 | 扣分 |
|
|||
|
|
| :--- | :--- | :--- | :--- |
|
|||
|
|
| 行为黑名单 | `behavior.result.black_list` | `"1"` | 500 |
|
|||
|
|
| 行为黑标签 | `behavior.result.black_tag**` | 任意 `"1"` | 每个 80 |
|
|||
|
|
| 投诉风险 | `complaint.result.score` | 有值 | score×10,上限 300 |
|
|||
|
|
| 欺诈黑名单 | `fraud.hit` | `1` | 400 |
|
|||
|
|
| 特殊名单 | `special.Rule_final_decision` | `Reject` / `Review` | 350 / 200 |
|
|||
|
|
|
|||
|
|
**安全分 = 1000 - 风险扣分(上限 1000)**
|
|||
|
|
|
|||
|
|
### 样例(DWBG9FB3.json)
|
|||
|
|
|
|||
|
|
风险扣分 110 → **ra_fraud_score = 890**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 二、ra_credit_score
|
|||
|
|
|
|||
|
|
- **方法链:** `calcRACreditScore` → `calcRACreditRiskPoints` → `toRASafetyScore`
|
|||
|
|
- **数据来源:** `probe`、`intent`、`rating`
|
|||
|
|
|
|||
|
|
| 风险扣分项 | 子字段路径 | 触发条件 | 扣分 |
|
|||
|
|
| :--- | :--- | :--- | :--- |
|
|||
|
|
| 当前逾期 | `probe.currently_overdue` | `"1"` | 300 |
|
|||
|
|
| 睡眠账户 | `probe.acc_sleep` | `"1"` | 150 |
|
|||
|
|
| 未履约 | `probe.currently_performance` | `"0"` | 100 |
|
|||
|
|
| 探针命中 | `probe.result_code` | `"1"` | 100 |
|
|||
|
|
| 借贷意向 | `intent.Rule_final_decision` | `Reject` / `Review` | 400 / 250 |
|
|||
|
|
| 规则权重 | `intent.Rule_final_weight` | 有值 | weight×5,上限 250 |
|
|||
|
|
| 借选指数低 | `rating.score` | 0<score<500 | 500-score,上限 300 |
|
|||
|
|
|
|||
|
|
### 样例(DWBG9FB3.json)
|
|||
|
|
|
|||
|
|
风险扣分 1100(截断 1000)→ **ra_credit_score = 0**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 三、ra_judicial_score
|
|||
|
|
|
|||
|
|
- **方法链:** `calcRAJudicialScore` → `calcRAJudicialRiskPoints` → `toRASafetyScore`
|
|||
|
|
- **数据来源:** `judicial.judicial_data`
|
|||
|
|
|
|||
|
|
| 风险扣分项 | 子字段路径 | 触发条件 | 扣分 |
|
|||
|
|
| :--- | :--- | :--- | :--- |
|
|||
|
|
| 涉诉总件数 | `lawsuitStat.*.count.count_total` | 各类型累加 | 每件 80,单项上限 400 |
|
|||
|
|
| 未结案数 | `lawsuitStat.*.count.count_wei_total` | 各类型累加 | 每件 60,单项上限 300 |
|
|||
|
|
| 被告件数 | `lawsuitStat.*.count.count_beigao` | 各类型累加 | 每件 50,单项上限 250 |
|
|||
|
|
| 失信案件 | `breachCaseList` 长度 | 每条 | 150,上限 450 |
|
|||
|
|
| 限高名单 | `consumptionRestrictionList` 长度 | 每条 | 200,上限 400 |
|
|||
|
|
|
|||
|
|
### 样例(DWBG9FB3.json)
|
|||
|
|
|
|||
|
|
风险扣分 420 → **ra_judicial_score = 580**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 四、ra_verify_score
|
|||
|
|
|
|||
|
|
- **方法链:** `calcRAVerifyScore` → `calcRAVerifyRiskPoints` → `toRASafetyScore`
|
|||
|
|
- **数据来源:** `triple`、`identity`、`presence`
|
|||
|
|
|
|||
|
|
| 风险扣分项 | 子字段路径 | 触发条件 | 扣分 |
|
|||
|
|
| :--- | :--- | :--- | :--- |
|
|||
|
|
| 三要素不一致 | `triple.state` | 有值且不为 `"1"` | 400 |
|
|||
|
|
| 二要素不一致 | `identity.result` | 不为 `0` | 400 |
|
|||
|
|
| 在网异常 | `presence.desc` | 含停机/销号/不在网 | 150 |
|
|||
|
|
| 状态码异常 | `presence.status` | 大于 `1` | 100 |
|
|||
|
|
|
|||
|
|
### 样例(DWBG9FB3.json)
|
|||
|
|
|
|||
|
|
风险扣分 150 → **ra_verify_score = 850**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 五、综合分与等级(样例)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
ra_score = round(890×0.25 + 0×0.35 + 580×0.25 + 850×0.15)
|
|||
|
|
= round(222.5 + 0 + 145 + 127.5)
|
|||
|
|
= 495
|
|||
|
|
ra_level = "F"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 代码位置
|
|||
|
|
|
|||
|
|
| 方法 | 文件 |
|
|||
|
|
| :--- | :--- |
|
|||
|
|
| `buildDWBG9FB3RA` | `dwbg9fb3_ra.go` |
|
|||
|
|
| `calcRA*Score` / `calcRA*RiskPoints` | `dwbg9fb3_ra.go` |
|
|||
|
|
| `toRASafetyScore` | `dwbg9fb3_ra.go` |
|
|||
|
|
| `raLevelFromScore` | `dwbg9fb3_ra.go` |
|