This commit is contained in:
2026-06-21 17:35:20 +08:00
parent 757296bd2a
commit c424c2bcf5
25 changed files with 130 additions and 15591 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,350 +0,0 @@
## 返回字段说明
# 5. 返回参数说明
## result.detail 参数说明Object
| 字段名 | 类型 | 说明 |
|---|---|---|
| lawsuitStat | object | 涉诉结果详见【lawsuitStat 参数说明】 |
| breachCaseList | array | 失信结果详见【breachCaseList 参数说明】 |
| consumptionRestrictionList | array | 限高结果详见【consumptionRestrictionList 参数说明】 |
---
## lawsuitStat 参数说明Object
### 一、统计概览count
| 字段名 | 类型 | 说明 |
|---|---|---|
| area_stat | string | 涉案地点分布 |
| ay_stat | string | 涉案案由分布 |
| jafs_stat | string | 结案方式分布 |
| larq_stat | string | 涉案时间分布 |
| count_total | string | 案件总数 |
| count_beigao | string | 被告总数 |
| count_yuangao | string | 原告总数 |
| count_other | string | 第三人总数 |
| count_jie_total | string | 已结案总数 |
| count_jie_beigao | string | 被告已结案总数 |
| count_jie_yuangao | string | 原告已结案总数 |
| count_jie_other | string | 第三人已结案总数 |
| count_wei_total | string | 未结案总数 |
| count_wei_beigao | string | 被告未结案总数 |
| count_wei_yuangao | string | 原告未结案总数 |
| count_wei_other | string | 第三人未结案总数 |
| money_total | string | 涉案总金额 |
| money_beigao | string | 被告金额 |
| money_yuangao | string | 原告金额 |
| money_other | string | 第三人金额 |
| money_jie_total | string | 已结案金额 |
| money_jie_beigao | string | 被告已结案金额 |
| money_jie_yuangao | string | 原告已结金额 |
| money_jie_other | string | 第三人已结案金额 |
| money_wei_total | string | 未结案金额 |
| money_wei_beigao | string | 被告未结案金额 |
| money_wei_yuangao | string | 原告未结案金额 |
| money_wei_other | string | 第三人未结案金额 |
| money_wei_percent | string | 未结案金额百分比 |
---
### 二、案件明细
#### 1. 行政案件administrative
| 字段名 | 类型 | 说明 |
|---|---|---|
| cases | array | 案件列表 |
| count | object | 统计信息(同 count 结构) |
**cases 子字段说明**
| 字段名 | 类型 | 说明 |
|---|---|---|
| c_ah | string | 案号 |
| c_ah_hx | string | 后续案号 |
| c_ah_ys | string | 原审案号 |
| c_gkws_dsr | string | 当事人 |
| c_gkws_glah | string | 相关案件号 |
| c_gkws_id | string | 公开文书 ID |
| c_gkws_pjjg | string | 判决结果 |
| c_slfsxx | string | 审理方式信息 |
| c_ssdy | string | 所属地域 |
| d_jarq | string | 结案时间 |
| d_larq | string | 立案时间 |
| n_ajbs | string | 案件标识 |
| n_ajjzjd | string | 案件进展阶段 |
| n_ajlx | string | 案件类型 |
| n_jaay | string | 结案案由 |
| n_jaay_tree | string | 结案案由详细 |
| n_jabdje | string | 结案标的金额 |
| n_jabdje_gj | string | 结案标的金额估计 |
| n_jabdje_gj_level | string | 结案标的金额估计等级(万元) |
| n_jabdje_level | string | 结案标的金额等级(万元) |
| n_jafs | string | 结案方式 |
| n_jbfy | string | 经办法院 |
| n_jbfy_cj | string | 法院所属层级 |
| n_laay | string | 立案案由 |
| n_laay_tree | string | 立案案由详细 |
| n_pj_victory | string | 胜诉估计 |
| n_qsbdje | string | 起诉标的金额 |
| n_qsbdje_level | string | 起诉标的金额等级 |
| n_slcx | string | 审理程序 |
| n_ssdw | string | 诉讼地位 |
| n_ssdw_ys | string | 一审诉讼地位 |
| c_dsrxx | array | 当事人信息列表 |
**c_dsrxx 子字段说明**
| 字段名 | 类型 | 说明 |
|---|---|---|
| n_ssdw | string | 诉讼地位 |
| c_mc | string | 名称 |
| n_dsrlx | string | 当事人类型 |
---
#### 2. 民事案件civil
> 字段结构与 **行政案件** 基本一致,新增以下字段:
| 字段名 | 类型 | 说明 |
|---|---|---|
| n_jaay_tag | string | 结案案由标签 |
| n_laay_tag | string | 立案案由标签 |
| n_qsbdje_gj | string | 起诉标的金额估计 |
| n_qsbdje_gj_level | string | 起诉标的金额估计等级 |
---
#### 3. 刑事案件criminal
| 字段名 | 类型 | 说明 |
|---|---|---|
| n_dzzm | string | 定罪罪名 |
| n_dzzm_tree | string | 定罪罪名详细 |
| n_fzje | string | 犯罪金额 |
| n_fzje_level | string | 犯罪金额等级 |
| n_ccxzxje | string | 财产刑执行金额 |
| n_ccxzxje_gj | string | 财产刑执行金额估计 |
| n_ccxzxje_gj_level | string | 财产刑执行金额估计等级 |
| n_pcjg | string | 判处结果 |
| n_pcpcje | string | 判处赔偿金额 |
| n_pcpcje_gj | string | 判处赔偿金额估计 |
| n_pcpcje_gj_level | string | 判处赔偿金额估计等级 |
| n_bqqpcje | string | 被请求赔偿金额 |
| n_bqqpcje_level | string | 被请求赔偿金额等级 |
---
#### 4. 执行案件implement
| 字段名 | 类型 | 说明 |
|---|---|---|
| n_sqzxbdje | string | 申请执行标的金额 |
| n_sjdwje | string | 实际到位金额 |
| n_wzxje | string | 未执行金额 |
---
#### 5. 非诉保全审查preservation
| 字段名 | 类型 | 说明 |
|---|---|---|
| c_sqbqbdw | string | 申请保全标的物 |
| n_sqbqse | string | 申请保全数额 |
| n_sqbqse_level | string | 申请保全数额等级 |
---
#### 6. 强制清算与破产案件bankrupt
> 字段结构与行政案件一致,主要用于破产/清算类案件。
---
### 三、案件串联树cases_tree
| 字段名 | 类型 | 说明 |
|---|---|---|
| administrative | array | 行政案件链 |
| civil | array | 民事案件链 |
| criminal | array | 刑事案件链 |
**案件节点说明**
| 字段名 | 类型 | 说明 |
|---|---|---|
| c_ah | string | 案号 |
| case_type | string | 案件类型 |
| n_ajbs | string | 案件标识 |
| stage_type | string | 审理阶段类型 |
| next | object | 后续关联案件 |
---
## breachCaseList 参数说明Array
| 字段名 | 类型 | 说明 |
|---|---|---|
| xb | string | 性别 |
| zzjgdm | string | 组织机构代码(企业查询时有值) |
| qyfr | string | 企业法人 |
| zxfy | string | 执行法院 |
| sf | string | 省份 |
| zxyjwh | string | 执行依据文号 |
| larq | string | 立案时间yyyy-mm-dd |
| ah | string | 案号 |
| zxyjdw | string | 执行依据单位 |
| yw | string | 生效法律文书确定的义务 |
| lxqk | string | 被执行人的履行情况 |
| xwqx | string | 失信被执行人行为具体情形 |
| fbrq | string | 发布时间yyyy-mm-dd |
| pjje_gj | string | 判决金额估计 |
---
## consumptionRestrictionList 参数说明Array
| 字段名 | 类型 | 说明 |
|---|---|---|
| qyfr | string | 企业法人 |
| qymc | string | 企业名称 |
| zxfy | string | 执行法院 |
| fbrq | string | 发布时间yyyy-mm-dd |
| larq | string | 立案时间yyyy-mm-dd |
| ah | string | 案号 |
---
## 字典说明
### 案件类型case_type
| 代码 | 说明 |
|---|---|
| 200 | 刑事案件 |
| 300 | 民事案件 |
| 400 | 行政案件 |
| 1000 | 执行案件 |
---
### 审理阶段stage_type
| 代码 | 说明 |
|---|---|
| 1 | 一审 |
| 2 | 二审 |
| 3 | 再审审查 |
| 4 | 再审 |
| 5 | 执行 |
---
### 金额等级(单位:万元)
| 代码 | 金额区间(万元) |
|---|---|
| 0 | 未填写或 0 |
| 1 | N < 1 |
| 2 | 1 N < 2 |
| 3 | 2 N < 3 |
| 4 | 3 N < 4 |
| 5 | 4 N < 5 |
| 6 | 5 N < 6 |
| 7 | 6 N < 7 |
| 8 | 7 N < 8 |
| 9 | 8 N < 9 |
| 10 | 9 N < 10 |
| 11 | 10 N < 20 |
| 12 | 20 N < 30 |
| 13 | 30 N < 40 |
| 14 | 40 N < 50 |
| 15 | 50 N < 60 |
| 16 | 60 N < 70 |
| 17 | 70 N < 80 |
| 18 | 80 N < 90 |
| 19 | 90 N < 100 |
| 20 | 100 N < 150 |
| 21 | 150 N < 200 |
| 22 | 200 N < 250 |
| 23 | 250 N < 300 |
| 24 | 300 N < 350 |
| 25 | 350 N < 400 |
| 26 | 400 N < 450 |
| 27 | 450 N < 500 |
| 28 | 500 N < 550 |
| 29 | 550 N < 600 |
| 30 | 600 N < 650 |
| 31 | 650 N < 700 |
| 32 | 700 N < 750 |
| 33 | 750 N < 800 |
| 34 | 800 N < 850 |
| 35 | 850 N < 900 |
| 36 | 900 N < 950 |
| 37 | 950 N < 1000 |
| 38 | 1000 N < 1500 |
| 39 | 1500 N < 2000 |
| 40 | 2000 N < 2500 |
| 41 | 2500 N < 3000 |
| 42 | 3000 N < 3500 |
| 43 | 3500 N < 4000 |
| 44 | 4000 N < 4500 |
| 45 | 4500 N < 5000 |
| 46 | 5000 N < 5500 |
| 47 | 5500 N < 6000 |
| 48 | 6000 N < 6500 |
| 49 | 6500 N < 7000 |
| 50 | 7000 N < 7500 |
| 51 | 7500 N < 8000 |
| 52 | 8000 N < 8500 |
| 53 | 8500 N < 9000 |
| 54 | 9000 N < 9500 |
| 55 | 9500 N < 10000 |
| 56 | 10000 N < 15000 |
| 57 | 15000 N < 20000 |
| 58 | 20000 N < 25000 |
| 59 | 25000 N < 30000 |
| 60 | 30000 N < 35000 |
| 61 | 35000 N < 40000 |
| 62 | 40000 N < 45000 |
| 63 | 45000 N < 50000 |
| 64 | 50000 N < 55000 |
| 65 | 55000 N < 60000 |
| 66 | 60000 N < 65000 |
| 67 | 65000 N < 70000 |
| 68 | 70000 N < 75000 |
| 69 | 75000 N < 80000 |
| 70 | 80000 N < 85000 |
| 71 | 85000 N < 90000 |
| 72 | 90000 N < 95000 |
| 73 | 95000 N < 100000 |
| 74 | 100000 N < 150000 |
| 75 | 150000 N < 200000 |
| 76 | 200000 N < 250000 |
| 77 | 250000 N < 300000 |
| 78 | 300000 N < 350000 |
| 79 | 350000 N < 400000 |
| 80 | 400000 N < 450000 |
| 81 | 450000 N < 500000 |
| 82 | 500000 N < 550000 |
| 83 | 550000 N < 600000 |
| 84 | 600000 N < 650000 |
| 85 | 650000 N < 700000 |
| 86 | 700000 N < 750000 |
| 87 | 750000 N < 800000 |
| 88 | 800000 N < 850000 |
| 89 | 850000 N < 900000 |
| 90 | 900000 N < 950000 |
| 91 | 950000 N < 1000000 |
| 92 | 1000000 N < 1500000 |
| 93 | 1500000 N < 2000000 |
| 94 | 2000000 N < 2500000 |
| 95 | 2500000 N < 3000000 |
| 96 | 3000000 N < 3500000 |
| 97 | 3500000 N < 4000000 |
| 98 | 4000000 N < 4500000 |
| 99 | 4500000 N < 5000000 |
| 100 | 5000000 N |

View File

@@ -1,137 +0,0 @@
{
"sxbzxr": [],
"xgbzxr": [],
"entout": {
"jurisdict": {
"cases": [],
"count": {}
},
"preservation": {
"cases": [],
"count": {
"money_jie_total": "11",
"count_total": "1",
"larq_stat": "2025(1)",
"money_wei_percent": "0",
"area_stat": "重庆市(1)",
"money_jie_beigao": "0",
"count_jie_total": "1",
"money_jie_other": "0",
"count_wei_total": "0",
"money_yuangao": "11",
"count_jie_beigao": "0",
"money_beigao": "0",
"ay_stat": "非讼程序案件案由(1)",
"count_wei_other": "0",
"count_wei_beigao": "0",
"count_wei_yuangao": "0",
"money_other": "0",
"count_yuangao": "1",
"money_wei_yuangao": "0",
"money_jie_yuangao": "11",
"money_wei_beigao": "0",
"count_jie_yuangao": "1",
"count_other": "0",
"count_jie_other": "0",
"count_beigao": "0",
"money_wei_total": "0",
"money_wei_other": "0",
"money_total": "11",
"jafs_stat": "转为其他案件中的保全(1)"
}
},
"cases_tree": {},
"administrative": {
"cases": [],
"count": {}
},
"civil": {
"cases": [
{
"n_ssdw": "原告",
"n_ccxzxje": "",
"n_pcjg": "",
"n_sqbqbdw": "",
"c_gkws_glah": "",
"n_sqbqse_level": "",
"n_pj_victory": "未知",
"n_wzxje": "",
"c_gkws_dsr": "",
"n_qsbdje_gj_level": "",
"n_jbfy_cj": "基层法院",
"n_qsbdje": "14858.43",
"n_slcx": "一审",
"n_ajjzjd": "已结案",
"n_jbfy": "淮南市田家庵区人民法院",
"c_gkws_id": "",
"d_jarq": "2023-03-29",
"n_jabdje_level": "2",
"c_slfsxx": "1,2023-03-27 15:00:00,淮南市田家庵区法院6号法庭,1",
"n_ccxzxje_gj_level": "",
"n_pcpcje": "",
"n_sjdwje": "",
"n_fzje_level": "",
"n_pcpcje_level": "",
"c_ah": "(2023)皖0403民初1229号",
"n_qsbdje_level": "2",
"c_ssdy": "安徽省",
"n_jabdje": "14460.43",
"n_ajlx": "民事一审",
"n_laay": "合同、准合同纠纷",
"n_jaay": "合同、准合同纠纷",
"n_laay_tree": "合同、准合同纠纷,合同纠纷,租赁合同纠纷",
"n_bqqpcje": "",
"n_jabdje_gj": "",
"n_jaay_tree": "合同、准合同纠纷,合同纠纷,租赁合同纠纷",
"n_pcpcje_gj": "",
"n_jabdje_gj_level": "",
"n_ccxzxje_level": "",
"n_ssdw_ys": "原告",
"n_pcpcje_gj_level": "",
"n_jafs": "判决",
"c_id": "71542222",
"n_qsbdje_gj": "",
"c_ah_hx": "(2023)皖0403执3847号:c996fda58ff2552d6ba834603c2e9e63",
"n_fzje": "",
"n_ccxzxje_gj": "",
"n_sqbqse": "",
"n_dzzm": "",
"n_bqqpcje_level": "",
"c_gkws_pjjg": "",
"n_laay_tag": "",
"n_jaay_tag": "",
"n_ajbs": "b1802615be1d2dd9236192322b247c6d",
"n_dzzm_tree": "",
"n_sqzxbdje": "",
"c_ah_ys": "",
"c_dsrxx": [
{
"n_ssdw": "原告",
"c_mc": "xxxxxx",
"n_dsrlx": "企业组织"
},
{
"n_ssdw": "被告",
"c_mc": "xxx",
"n_dsrlx": "自然人"
}
],
"d_larq": "2023-02-06"
}
],
"count": {}
},
"criminal": {
"cases": [],
"count": {}
},
"compensate": {
"cases": [],
"count": {}
},
"bankrupt": {
"cases": [],
"count": {}
}
}
}

View File

@@ -1,68 +0,0 @@
## 返回字段说明
| 名称 | 说明 | 备注 |
|--------|--------------------|------|
| sxbzxr | 失信被执行人 | |
| entout | 涉诉信息 | |
| xgbzxr | 限高被执行人 | |
### sxbzxr参数
| 名称 | 说明 | 备注 |
|------------------|------------------------------|------|
| yw | 生效法律文书确定的义务 | |
| pjje_gj | 判决金额_估计 | |
| xwqx | 失信被执行人行为具体情形 | |
| id | 标识 | |
| zxfy | 执行法院 | |
| ah | 案号 | |
| zxyjwh | 执行依据文号 | |
| lxqk | 被执行人的履行情况 | |
| zxyjdw | 出执行依据单位 | |
| fbrq | 发布时间(日期) | |
| xb | 性别 | |
| larq | 立案日期 | |
| sf | 省份 | |
### entout参数
| 名称 | 说明 | 备注 |
|--------------------------------|------------------------------|------|
| civil | 案件名称 | 返回有案件的信息,如:<br>administrative/行政案<br>implement/执行案件<br>count/统计<br>preservation/非诉保全审查<br>crc/当事人变更码<br>civil/民事案件<br>criminal/刑事案件<br>cases_tree/串联树<br>bankrupt/强制清算与破产案件<br>jurisdict/管辖案件<br>compensate/赔偿案件 |
| cases | 案件 | |
| n_jabdje_gj_level | 结案标的金额估计等级 | |
| n_jbfy_cj | 法院所属层级 | |
| c_gkws_glah | 相关案件号 | |
| n_jafs | 结案方式 | |
| n_sjdwje | 实际到位金额 | |
| n_sqzxbdje | 申请执行标的金额 | |
| n_wzxje | 未执行金额 | |
| n_sqbqse | 申请保全数额 | |
| n_sqbqse_level | 申请保全数额等级 | |
| n_jaay_tag | 结案案由标签 | |
| n_qsbdje_gj_level | 起诉标的金额估计等级 | |
| n_laay_tag | 立案案由标签 | |
| n_pcpcje_level | 判处赔偿金额等级 | |
| n_bqqpcje | 被请求赔偿金额 | |
| n_pcpcje_gj_level | 判处赔偿金额估计等级 | |
| n_dzzm | 定罪罪名 | |
| n_ccxzxje_level | 财产刑执行金额等级 | |
| n_ccxzxje_gj_level | 财产刑执行金额估计等级 | |
| n_fzje | 犯罪金额 | |
| n_pcpcje | 判处赔偿金额 | |
| n_dzzm_tree | 定罪罪名树 | |
| n_pcjg | 判处结果 | |
| n_ccxzxje | 财产刑执行金额 | |
| n_fzje_level | 犯罪金额等级 | |
| n_ccxzxje_gj | 财产刑执行金额估计 | |
| n_bqqpcje_level | 被请求赔偿金额等级 | |
| n_ssdw | 诉讼地位 | |
| d_jarq | 结案时间 | |
| c_gkws_pjjg | 判决结果 | |
| n_qsbdje | 起诉标的金额 | |
| n_crc | 案件变更码 | |
| c_ssdy | 所属地域 | |
| n_ajjzjd | 案件进展阶段 | |
| n_jaay | 结案案由 | |
| n_ajlx | 案件类型 | |
| c_ah_ys | 原审案号 | |
| n_laay_tree | 立案案由详细 | |
| n_ajbs | 案件

View File

@@ -1,22 +0,0 @@
{
"id": {
"court_executed_time": "2",
"court_executed_allnum": "5",
"court_executed": "0"
},
"cell": {
"nbank_lost_time": "5",
"nbank_other_bad_time": "2",
"nbank_lost_allnum": "4",
"nbank_finlea_lost": "0",
"nbank_finlea_lost_time": "5",
"nbank_bad_allnum": "1",
"nbank_other_bad_allnum": "1",
"nbank_bad_time": "2",
"nbank_other_bad": "0",
"nbank_bad": "0",
"nbank_lost": "0",
"nbank_finlea_lost_allnum": "4"
}
}

View File

@@ -1,217 +0,0 @@
## 一、响应参数
此接口用于验证个人在各类金融机构和法院系统的信用状况,包括法院失信、银行风险、非银机构风险等多个维度。
| 序号 | 参数名 | 类型 | 中文名称 | 取值解释 |
|------|--------|------|----------|----------|
| 2 | id_court_bad | string | 通过身份证查询,法院失信人 | 取“空/0”0命中未命中 |
| 3 | id_court_executed | string | 通过身份证查询,法院被执行人 | 取“空/0”0命中未命中 |
| 4 | id_bank_bad | string | 通过身份证查询,银行(含信用卡)中风险 | 取“空/0”0命中未命中 |
| 5 | id_bank_overdue | string | 通过身份证查询,银行(含信用卡)一般风险 | 取“空/0”0命中未命中 |
| 6 | id_bank_lost | string | 通过身份证查询,银行(含信用卡)高风险 | 取“空/0”0命中未命中 |
| 7 | id_nbank_bad | string | 通过身份证查询,非银(含全部非银类型)中风险 | 取“空/0”0命中未命中 |
| 8 | id_nbank_overdue | string | 通过身份证查询,非银(含全部非银类型)一般风险 | 取“空/0”0命中未命中 |
| 9 | id_nbank_lost | string | 通过身份证查询,非银(含全部非银类型)高风险 | 取“空/0”0命中未命中 |
| 10 | id_nbank_nsloan_bad | string | 通过身份证查询,非银-持牌网络小贷中风险 | 取“空/0”0命中未命中 |
| 11 | id_nbank_nsloan_overdue | string | 通过身份证查询,非银-持牌网络小贷一般风险 | 取“空/0”0命中未命中 |
| 12 | id_nbank_nsloan_lost | string | 通过身份证查询,非银-持牌网络小贷高风险 | 取“空/0”0命中未命中 |
| 13 | id_nbank_sloan_bad | string | 通过身份证查询,非银-持牌小贷中风险 | 取“空/0”0命中未命中 |
| 14 | id_nbank_sloan_overdue | string | 通过身份证查询,非银-持牌小贷一般风险 | 取“空/0”0命中未命中 |
| 15 | id_nbank_sloan_lost | string | 通过身份证查询,非银-持牌小贷高风险 | 取“空/0”0命中未命中 |
| 16 | id_nbank_cons_bad | string | 通过身份证查询,非银-持牌消费金融中风险 | 取“空/0”0命中未命中 |
| 17 | id_nbank_cons_overdue | string | 通过身份证查询,非银-持牌消费金融一般风险 | 取“空/0”0命中未命中 |
| 18 | id_nbank_cons_lost | string | 通过身份证查询,非银-持牌消费金融高风险 | 取“空/0”0命中未命中 |
| 19 | id_nbank_finlea_bad | string | 通过身份证查询,非银-持牌融资租赁中风险 | 取“空/0”0命中未命中 |
| 20 | id_nbank_finlea_overdue | string | 通过身份证查询,非银-持牌融资租赁一般风险 | 取“空/0”0命中未命中 |
| 21 | id_nbank_finlea_lost | string | 通过身份证查询,非银-持牌融资租赁高风险 | 取“空/0”0命中未命中 |
| 22 | id_nbank_autofin_bad | string | 通过身份证查询,非银-持牌汽车金融中风险 | 取“空/0”0命中未命中 |
| 23 | id_nbank_autofin_overdue | string | 通过身份证查询,非银-持牌汽车金融一般风险 | 取“空/0”0命中未命中 |
| 24 | id_nbank_autofin_lost | string | 通过身份证查询,非银-持牌汽车金融高风险 | 取“空/0”0命中未命中 |
| 25 | id_nbank_other_bad | string | 通过身份证查询,非银-其他中风险 | 取“空/0”0命中未命中 |
| 26 | id_nbank_other_overdue | string | 通过身份证查询,非银-其他一般风险 | 取“空/0”0命中未命中 |
| 27 | id_nbank_other_lost | string | 通过身份证查询,非银-其他高风险 | 取“空/0”0命中未命中 |
| 28 | cell_bank_bad | string | 通过手机号查询,银行(含信用卡)中风险 | 取“空/0”0命中未命中 |
| 29 | cell_bank_overdue | string | 通过手机号查询,银行(含信用卡)一般风险 | 取“空/0”0命中未命中 |
| 30 | cell_bank_lost | string | 通过手机号查询,银行(含信用卡)高风险 | 取“空/0”0命中未命中 |
| 31 | cell_nbank_bad | string | 通过手机号查询,非银(含全部非银类型)中风险 | 取“空/0”0命中未命中 |
| 32 | cell_nbank_overdue | string | 通过手机号查询,非银(含全部非银类型)一般风险 | 取“空/0”0命中未命中 |
| 33 | cell_nbank_lost | string | 通过手机号查询,非银(含全部非银类型)高风险 | 取“空/0”0命中未命中 |
| 34 | cell_nbank_nsloan_bad | string | 通过手机号查询,非银-持牌网络小贷中风险 | 取“空/0”0命中未命中 |
| 35 | cell_nbank_nsloan_overdue | string | 通过手机号查询,非银-持牌网络小贷一般风险 | 取“空/0”0命中未命中 |
| 36 | cell_nbank_nsloan_lost | string | 通过手机号查询,非银-持牌网络小贷高风险 | 取“空/0”0命中未命中 |
| 37 | cell_nbank_sloan_bad | string | 通过手机号查询,非银-持牌小贷中风险 | 取“空/0”0命中未命中 |
| 38 | cell_nbank_sloan_overdue | string | 通过手机号查询,非银-持牌小贷一般风险 | 取“空/0”0命中未命中 |
| 39 | cell_nbank_sloan_lost | string | 通过手机号查询,非银-持牌小贷高风险 | 取“空/0”0命中未命中 |
| 40 | cell_nbank_cons_bad | string | 通过手机号查询,非银-持牌消费金融中风险 | 取“空/0”0命中未命中 |
| 41 | cell_nbank_cons_overdue | string | 通过手机号查询,非银-持牌消费金融一般风险 | 取“空/0”0命中未命中 |
| 42 | cell_nbank_cons_lost | string | 通过手机号查询,非银-持牌消费金融高风险 | 取“空/0”0命中未命中 |
| 43 | cell_nbank_finlea_bad | string | 通过手机号查询,非银-持牌融资租赁中风险 | 取“空/0”0命中未命中 |
| 44 | cell_nbank_finlea_overdue | string | 通过手机号查询,非银-持牌融资租赁一般风险 | 取“空/0”0命中未命中 |
| 45 | cell_nbank_finlea_lost | string | 通过手机号查询,非银-持牌融资租赁高风险 | 取“空/0”0命中未命中 |
| 46 | cell_nbank_autofin_bad | string | 通过手机号查询,非银-持牌汽车金融中风险 | 取“空/0”0命中未命中 |
| 47 | cell_nbank_autofin_overdue | string | 通过手机号查询,非银-持牌汽车金融一般风险 | 取“空/0”0命中未命中 |
| 48 | cell_nbank_autofin_lost | string | 通过手机号查询,非银-持牌汽车金融高风险 | 取“空/0”0命中未命中 |
| 49 | cell_nbank_other_bad | string | 通过手机号查询,非银-其他中风险 | 取“空/0”0命中未命中 |
| 50 | cell_nbank_other_overdue | string | 通过手机号查询,非银-其他一般风险 | 取“空/0”0命中未命中 |
| 51 | cell_nbank_other_lost | string | 通过手机号查询,非银-其他高风险 | 取“空/0”0命中未命中 |
| 52 | id_court_bad_allnum | string | 通过身份证查询,法院失信人命中次数 | 取“1-N”返回命中次数 |
| 53 | id_court_executed_allnum | string | 通过身份证查询,法院被执行人命中次数 | 取“1-N”返回命中次数 |
| 54 | id_bank_bad_allnum | string | 通过身份证查询,银行(含信用卡)中风险命中次数 | 取“1-N”返回命中次数 |
| 55 | id_bank_overdue_allnum | string | 通过身份证查询,银行(含信用卡)一般风险命中次数 | 取“1-N”返回命中次数 |
| 56 | id_bank_lost_allnum | string | 通过身份证查询,银行(含信用卡)高风险命中次数 | 取“1-N”返回命中次数 |
| 57 | id_nbank_bad_allnum | string | 通过身份证查询,非银(含全部非银类型)中风险命中次数 | 取“1-N”返回命中次数 |
| 58 | id_nbank_overdue_allnum | string | 通过身份证查询,非银(含全部非银类型)一般风险命中次数 | 取“1-N”返回命中次数 |
| 59 | id_nbank_lost_allnum | string | 通过身份证查询,非银(含全部非银类型)高风险命中次数 | 取“1-N”返回命中次数 |
| 60 | id_nbank_nsloan_bad_allnum | string | 通过身份证查询,非银-持牌网络小贷中风险命中次数 | 取“1-N”返回命中次数 |
| 61 | id_nbank_nsloan_overdue_allnum | string | 通过身份证查询,非银-持牌网络小贷一般风险命中次数 | 取“1-N”返回命中次数 |
| 62 | id_nbank_nsloan_lost_allnum | string | 通过身份证查询,非银-持牌网络小贷高风险命中次数 | 取“1-N”返回命中次数 |
| 63 | id_nbank_sloan_bad_allnum | string | 通过身份证查询,非银-持牌小贷中风险命中次数 | 取“1-N”返回命中次数 |
| 64 | id_nbank_sloan_overdue_allnum | string | 通过身份证查询,非银-持牌小贷一般风险命中次数 | 取“1-N”返回命中次数 |
| 65 | id_nbank_sloan_lost_allnum | string | 通过身份证查询,非银-持牌小贷高风险命中次数 | 取“1-N”返回命中次数 |
| 66 | id_nbank_cons_bad_allnum | string | 通过身份证查询,非银-持牌消费金融中风险命中次数 | 取“1-N”返回命中次数 |
| 67 | id_nbank_cons_overdue_allnum | string | 通过身份证查询,非银-持牌消费金融一般风险命中次数 | 取“1-N”返回命中次数 |
| 68 | id_nbank_cons_lost_allnum | string | 通过身份证查询,非银-持牌消费金融高风险命中次数 | 取“1-N”返回命中次数 |
| 69 | id_nbank_finlea_bad_allnum | string | 通过身份证查询,非银-持牌融资租赁中风险命中次数 | 取“1-N”返回命中次数 |
| 70 | id_nbank_finlea_overdue_allnum | string | 通过身份证查询,非银-持牌融资租赁一般风险命中次数 | 取“1-N”返回命中次数 |
| 71 | id_nbank_finlea_lost_allnum | string | 通过身份证查询,非银-持牌融资租赁高风险命中次数 | 取“1-N”返回命中次数 |
| 72 | id_nbank_autofin_bad_allnum | string | 通过身份证查询,非银-持牌汽车金融中风险命中次数 | 取“1-N”返回命中次数 |
| 73 | id_nbank_autofin_overdue_allnum | string | 通过身份证查询,非银-持牌汽车金融一般风险命中次数 | 取“1-N”返回命中次数 |
| 74 | id_nbank_autofin_lost_allnum | string | 通过身份证查询,非银-持牌汽车金融高风险命中次数 | 取“1-N”返回命中次数 |
| 75 | id_nbank_other_bad_allnum | string | 通过身份证查询,非银-其他中风险命中次数 | 取“1-N”返回命中次数 |
| 76 | id_nbank_other_overdue_allnum | string | 通过身份证查询,非银-其他一般风险命中次数 | 取“1-N”返回命中次数 |
| 77 | id_nbank_other_lost_allnum | string | 通过身份证查询,非银-其他高风险命中次数 | 取“1-N”返回命中次数 |
| 78 | cell_bank_bad_allnum | string | 通过手机号查询,银行(含信用卡)中风险命中次数 | 取“1-N”返回命中次数 |
| 79 | cell_bank_overdue_allnum | string | 通过手机号查询,银行(含信用卡)一般风险命中次数 | 取“1-N”返回命中次数 |
| 80 | cell_bank_lost_allnum | string | 通过手机号查询,银行(含信用卡)高风险命中次数 | 取“1-N”返回命中次数 |
| 81 | cell_nbank_bad_allnum | string | 通过手机号查询,非银(含全部非银类型)中风险命中次数 | 取“1-N”返回命中次数 |
| 82 | cell_nbank_overdue_allnum | string | 通过手机号查询,非银(含全部非银类型)一般风险命中次数 | 取“1-N”返回命中次数 |
| 83 | cell_nbank_lost_allnum | string | 通过手机号查询,非银(含全部非银类型)高风险命中次数 | 取“1-N”返回命中次数 |
| 84 | cell_nbank_nsloan_bad_allnum | string | 通过手机号查询,非银-持牌网络小贷中风险命中次数 | 取“1-N”返回命中次数 |
| 85 | cell_nbank_nsloan_overdue_allnum | string | 通过手机号查询,非银-持牌网络小贷一般风险命中次数 | 取“1-N”返回命中次数 |
| 86 | cell_nbank_nsloan_lost_allnum | string | 通过手机号查询,非银-持牌网络小贷高风险命中次数 | 取“1-N”返回命中次数 |
| 87 | cell_nbank_sloan_bad_allnum | string | 通过手机号查询,非银-持牌小贷中风险命中次数 | 取“1-N”返回命中次数 |
| 88 | cell_nbank_sloan_overdue_allnum | string | 通过手机号查询,非银-持牌小贷一般风险命中次数 | 取“1-N”返回命中次数 |
| 89 | cell_nbank_sloan_lost_allnum | string | 通过手机号查询,非银-持牌小贷高风险命中次数 | 取“1-N”返回命中次数 |
| 90 | cell_nbank_cons_bad_allnum | string | 通过手机号查询,非银-持牌消费金融中风险命中次数 | 取“1-N”返回命中次数 |
| 91 | cell_nbank_cons_overdue_allnum | string | 通过手机号查询,非银-持牌消费金融一般风险命中次数 | 取“1-N”返回命中次数 |
| 92 | cell_nbank_cons_lost_allnum | string | 通过手机号查询,非银-持牌消费金融高风险命中次数 | 取“1-N”返回命中次数 |
| 93 | cell_nbank_finlea_bad_allnum | string | 通过手机号查询,非银-持牌融资租赁中风险命中次数 | 取“1-N”返回命中次数 |
| 94 | cell_nbank_finlea_overdue_allnum | string | 通过手机号查询,非银-持牌融资租赁一般风险命中次数 | 取“1-N”返回命中次数 |
| 95 | cell_nbank_finlea_lost_allnum | string | 通过手机号查询,非银-持牌融资租赁高风险命中次数 | 取“1-N”返回命中次数 |
| 96 | cell_nbank_autofin_bad_allnum | string | 通过手机号查询,非银-持牌汽车金融中风险命中次数 | 取“1-N”返回命中次数 |
| 97 | cell_nbank_autofin_overdue_allnum | string | 通过手机号查询,非银-持牌汽车金融一般风险命中次数 | 取“1-N”返回命中次数 |
| 98 | cell_nbank_autofin_lost_allnum | string | 通过手机号查询,非银-持牌汽车金融高风险命中次数 | 取“1-N”返回命中次数 |
| 99 | cell_nbank_other_bad_allnum | string | 通过手机号查询,非银-其他中风险命中次数 | 取“1-N”返回命中次数 |
| 100 | cell_nbank_other_overdue_allnum | string | 通过手机号查询,非银-其他一般风险命中次数 | 取“1-N”返回命中次数 |
| 101 | cell_nbank_other_lost_allnum | string | 通过手机号查询,非银-其他高风险命中次数 | 取“1-N”返回命中次数 |
| 102 | id_court_bad_time | string | 通过身份证查询,法院失信人距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 103 | id_court_executed_time | string | 通过身份证查询,法院被执行人距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 104 | id_bank_bad_time | string | 通过身份证查询,银行(含信用卡)中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 105 | id_bank_overdue_time | string | 通过身份证查询,银行(含信用卡)一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 106 | id_bank_lost_time | string | 通过身份证查询,银行(含信用卡)高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 107 | id_nbank_bad_time | string | 通过身份证查询,非银(含全部非银类型)中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 108 | id_nbank_overdue_time | string | 通过身份证查询,非银(含全部非银类型)一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 109 | id_nbank_lost_time | string | 通过身份证查询,非银(含全部非银类型)高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 110 | id_nbank_nsloan_bad_time | string | 通过身份证查询,非银-持牌网络小贷中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 111 | id_nbank_nsloan_overdue_time | string | 通过身份证查询,非银-持牌网络小贷一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 112 | id_nbank_nsloan_lost_time | string | 通过身份证查询,非银-持牌网络小贷高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 113 | id_nbank_sloan_bad_time | string | 通过身份证查询,非银-持牌小贷中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 114 | id_nbank_sloan_overdue_time | string | 通过身份证查询,非银-持牌小贷一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 115 | id_nbank_sloan_lost_time | string | 通过身份证查询,非银-持牌小贷高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 116 | id_nbank_cons_bad_time | string | 通过身份证查询,非银-持牌消费金融中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 117 | id_nbank_cons_overdue_time | string | 通过身份证查询,非银-持牌消费金融一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 118 | id_nbank_cons_lost_time | string | 通过身份证查询,非银-持牌消费金融高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 119 | id_nbank_finlea_bad_time | string | 通过身份证查询,非银-持牌融资租赁中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 120 | id_nbank_finlea_overdue_time | string | 通过身份证查询,非银-持牌融资租赁一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 121 | id_nbank_finlea_lost_time | string | 通过身份证查询,非银-持牌融资租赁高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 122 | id_nbank_autofin_bad_time | string | 通过身份证查询,非银-持牌汽车金融中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 123 | id_nbank_autofin_overdue_time | string | 通过身份证查询,非银-持牌汽车金融一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 124 | id_nbank_autofin_lost_time | string | 通过身份证查询,非银-持牌汽车金融高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 125 | id_nbank_other_bad_time | string | 通过身份证查询,非银-其他中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 126 | id_nbank_other_overdue_time | string | 通过身份证查询,非银-其他一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 127 | id_nbank_other_lost_time | string | 通过身份证查询,非银-其他高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 128 | cell_bank_bad_time | string | 通过手机号查询,银行(含信用卡)中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 129 | cell_bank_overdue_time | string | 通过手机号查询,银行(含信用卡)一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 130 | cell_bank_lost_time | string | 通过手机号查询,银行(含信用卡)高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 131 | cell_nbank_bad_time | string | 通过手机号查询,非银(含全部非银类型)中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 132 | cell_nbank_overdue_time | string | 通过手机号查询,非银(含全部非银类型)一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 133 | cell_nbank_lost_time | string | 通过手机号查询,非银(含全部非银类型)高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 134 | cell_nbank_nsloan_bad_time | string | 通过手机号查询,非银-持牌网络小贷中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 135 | cell_nbank_nsloan_overdue_time | string | 通过手机号查询,非银-持牌网络小贷一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 136 | cell_nbank_nsloan_lost_time | string | 通过手机号查询,非银-持牌网络小贷高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 137 | cell_nbank_sloan_bad_time | string | 通过手机号查询,非银-持牌小贷中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 138 | cell_nbank_sloan_overdue_time | string | 通过手机号查询,非银-持牌小贷一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 139 | cell_nbank_sloan_lost_time | string | 通过手机号查询,非银-持牌小贷高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 140 | cell_nbank_cons_bad_time | string | 通过手机号查询,非银-持牌消费金融中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 141 | cell_nbank_cons_overdue_time | string | 通过手机号查询,非银-持牌消费金融一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 142 | cell_nbank_cons_lost_time | string | 通过手机号查询,非银-持牌消费金融高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 143 | cell_nbank_finlea_bad_time | string | 通过手机号查询,非银-持牌融资租赁中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 144 | cell_nbank_finlea_overdue_time | string | 通过手机号查询,非银-持牌融资租赁一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 145 | cell_nbank_finlea_lost_time | string | 通过手机号查询,非银-持牌融资租赁高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 146 | cell_nbank_autofin_bad_time | string | 通过手机号查询,非银-持牌汽车金融中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 147 | cell_nbank_autofin_overdue_time | string | 通过手机号查询,非银-持牌汽车金融一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 148 | cell_nbank_autofin_lost_time | string | 通过手机号查询,非银-持牌汽车金融高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 149 | cell_nbank_other_bad_time | string | 通过手机号查询,非银-其他中风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 150 | cell_nbank_other_overdue_time | string | 通过手机号查询,非银-其他一般风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 151 | cell_nbank_other_lost_time | string | 通过手机号查询,非银-其他高风险距今时间 | 取“0-N”单位返回最近一次命中距查询时间 |
| 152 | Rule_final_decision | string | 最終決策結果 | "final_weight"="0""final_decision"="Accept"(通过);"final_weight">="80""final_decision"="Reject"(拒绝);"0"<"final_weight"<"80""final_decision"="Review"(复议) |
| 153 | Rule_final_weight | string | 最终规则评分 | 取值范围为大于0的整数 |
| 154 | Rule_name_odr0000331 | string | 近两年命中法院失信人 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 155 | Rule_weight_odr0000331 | string | 近两年命中法院失信人权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 156 | Rule_name_odr0000332 | string | 两年前命中法院失信人 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 157 | Rule_weight_odr0000332 | string | 两年前命中法院失信人权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 158 | Rule_name_odr0000333 | string | 近两年命中法院被执行人 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 159 | Rule_weight_odr0000333 | string | 近两年命中法院被执行人权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 160 | Rule_name_odr0000334 | string | 两年前命中法院被执行人 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 161 | Rule_weight_odr0000334 | string | 两年前命中法院被执行人权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 162 | Rule_name_odr0000335 | string | 近两年命中银行高风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 163 | Rule_weight_odr0000335 | string | 近两年命中银行高风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 164 | Rule_name_odr0000336 | string | 两年前命中银行高风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 165 | Rule_weight_odr0000336 | string | 两年前命中银行高风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 166 | Rule_name_odr0000337 | string | 近两年命中银行中风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 167 | Rule_weight_odr0000337 | string | 近两年命中银行中风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 168 | Rule_name_odr0000338 | string | 两年前命中银行中风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 169 | Rule_weight_odr0000338 | string | 两年前命中银行中风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 170 | Rule_name_odr0000339 | string | 近两年命中银行一般风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 171 | Rule_weight_odr0000339 | string | 近两年命中银行一般风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 172 | Rule_name_odr0000340 | string | 两年前命中银行一般风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 173 | Rule_weight_odr0000340 | string | 两年前命中银行一般风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 174 | Rule_name_odr0000341 | string | 近两年命中非银高风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 175 | Rule_weight_odr0000341 | string | 近两年命中非银高风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 176 | Rule_name_odr0000342 | string | 两年前命中非银高风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 177 | Rule_weight_odr0000342 | string | 两年前命中非银高风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 178 | Rule_name_odr0000343 | string | 近两年命中非银中风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 179 | Rule_weight_odr0000343 | string | 近两年命中非银中风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 180 | Rule_name_odr0000344 | string | 两年前命中非银中风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 181 | Rule_weight_odr0000344 | string | 两年前命中非银中风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 182 | Rule_name_odr0000345 | string | 近两年命中非银一般风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 183 | Rule_weight_odr0000345 | string | 近两年命中非银一般风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 184 | Rule_name_odr0000346 | string | 两年前命中非银一般风险 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 185 | Rule_weight_odr0000346 | string | 两年前命中非银一般风险权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 186 | Rule_name_odr0000347 | string | 命中银行中风险次数较多 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 187 | Rule_weight_odr0000347 | string | 命中银行中风险次数较多权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 188 | Rule_name_odr0000348 | string | 命中银行一般风险次数较多 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 189 | Rule_weight_odr0000348 | string | 命中银行一般风险次数较多权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 190 | Rule_name_odr0000349 | string | 命中非银中风险次数较多 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 191 | Rule_weight_odr0000349 | string | 命中非银中风险次数较多权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
| 192 | Rule_name_odr0000350 | string | 命中非银一般风险次数较多 | 命中规则名称如命中多条规则则出现多条odrxxxxxxx为10位规则编号) |
| 193 | Rule_weight_odr0000350 | string | 命中非银一般风险次数较多权重 | 命中规则权重如命中多条规则则出现多条odrxxxxxxx为10位规则编号 |
## 参数说明
1. 所有参数均通过身份证号码进行查询
2. 返回值为"空"表示未命中相关风险名单
3. 返回值为"0"表示命中相关风险名单
4. 部分参数涉及不同类型的金融机构风险,包括:
- 银行(含信用卡)风险
- 非银机构风险(包括持牌消费金融、融资租赁、汽车金融等)
- 法院相关风险(失信人、被执行人等)
## 使用场景
该接口适用于金融机构在信贷审批、风险控制等场景中,对客户信用状况进行综合评估。

View File

@@ -1,40 +0,0 @@
{
"result": {
"Rule": {
"result": {
"final_weight": "70",
"final_decision": "Accept"
},
"hit_rules": {
"rulespeciallist_c": {
"odr0000334": {
"weight": "70",
"name_rule": "两年前命中法院被执行人"
}
}
}
},
"RiskStrategy": {
"Rule": {
"weight": "70",
"decision": "Accept"
},
"scene": "lend",
"platform": "web",
"strategy_id": "STR_BR0009345",
"product_name": "预置_反欺诈规则-特殊名单验证",
"product_type": "100099",
"final_decision": "Accept",
"strategy_version": "1.0"
},
"SpecialList_c": {
"id": {
"court_executed": "0",
"court_executed_time": "3",
"court_executed_allnum": "2"
},
"cell": {}
}
}
}

View File

@@ -1,301 +0,0 @@
result参数说明【object】
RiskStrategy
object
策略说明详见【RiskStrategy字段说明】
Rule
object
规则说明详见【Rule字段说明】
SpecialList_c
object
特殊名单结果列表详见【SpecialList_c字段说明】
RiskStrategy字段说明【object】
final_decision
String
最终决策结果;策略结果取决于规则 、反欺 诈风险识别、信用风险识别最终决策结果final_decision=Accept通过 final_decision=Reject拒绝 final_decision=Review复议final_decision无建议
platform
String
策略使用平台android iosweb线下
scene
String
策略使用事件类型; 借款: lend ,注册: register登录 login提现cash
product_name
String
策略产品名称;制定策略时 ,制定的策略产 品名称
product_type
String
策略产品类型返回对应具体编号100081 线上现金分期; 100082 线下现金分期; 100084信用卡类信用卡 100085 线 上 小 额 现 金 贷 100086 汽 车 金 融 100087线下消费分期100099其他
Rule
object
策略规则
weight
String
规则集决策权重;取值范围为大于 0 的整数
decision
String
规则集决策结果支持客户自定义权重区间weight=0 decision=Accept (通 过weight>=80 decision=Reject拒 绝0<weight<80 decision=Review复议
Rule字段说明object
result
object
规则结果
final_decision
String
最終決策結果final_weight>=80final_decision=Reject拒绝 0<final_weight<80 final_decision=Accept通过
final_weight
String
最终规则评分取值范围为大于 0 的整数
hit_rules
object
命中规则
rulespeciallist_c
object
详细返回
odr0000331/...
object
命中规则标识 说明
name_rule
String
命中规则名称
weight
String
命中规则权重
SpecialList_c参数说明object
id/cell
object
查询结果维度id身份证cell手机号
court_bad
string
查询法院失信人/00命中未命中
court_executed
string
查询法院被执行人/00命中未命中
bank_bad
string
查询银行(含信用卡)中风险/00命中未命中
bank_overdue
string
查询银行(含信用卡)一般风险/00命中未命中
bank_lost
string
查询银行(含信用卡)高风险/00命中未命中
nbank_bad
string
查询非银(含全部非银类型)中风险/00命中未命中
nbank_overdue
string
查询非银(含全部非银类型)一般风险/00命中未命中
nbank_lost
string
查询非银(含全部非银类型)高风险/00命中未命中
nbank_nsloan_bad
string
查询非银-持牌网络小贷中风险/00命中未命中
nbank_nsloan_overdue
string
查询非银-持牌网络小贷一般风险/00命中未命中
nbank_nsloan_lost
string
查询非银-持牌网络小贷高风险/00命中未命中
nbank_sloan_bad
string
查询非银-持牌小贷中风险/00命中未命中
nbank_sloan_overdue
string
查询非银-持牌小贷一般风险/00命中未命中
nbank_sloan_lost
string
查询非银-持牌小贷高风险/00命中未命中
nbank_cons_bad
string
查询非银-持牌消费金融中风险/00命中未命中
nbank_cons_overdue
string
查询非银-持牌消费金融一般风险/00命中未命中
nbank_cons_lost
string
查询非银-持牌消费金融高风险/00命中未命中
nbank_finlea_bad
string
查询非银-持牌融资租赁中风险/00命中未命中
nbank_finlea_overdue
string
查询非银-持牌融资租赁一般风险/00命中未命中
nbank_finlea_lost
string
查询非银-持牌融资租赁高风险/00命中未命中
nbank_autofin_bad
string
查询非银-持牌汽车金融中风险/00命中未命中
nbank_autofin_overdue
string
查询非银-持牌汽车金融一般风险/00命中未命中
nbank_autofin_lost
string
查询非银-持牌汽车金融高风险/00命中未命中
nbank_other_bad
string
查询非银-其他中风险/00命中未命中
nbank_other_overdue
string
查询非银-其他一般风险/00命中未命中
nbank_other_lost
string
查询非银-其他高风险/00命中未命中
court_bad_allnum
string
查询法院失信人命中次数1-N返回命中次数
court_executed_allnum
string
查询法院被执行人命中次数1-N返回命中次数
bank_bad_allnum
string
查询银行(含信用卡)中风险命中次数1-N返回命中次数
bank_overdue_allnum
string
查询银行(含信用卡)一般风险命中次数1-N返回命中次数
bank_lost_allnum
string
查询银行(含信用卡)高风险命中次数1-N返回命中次数
nbank_bad_allnum
string
查询非银(含全部非银类型)中风险命中次数1-N返回命中次数
nbank_overdue_allnum
string
查询非银(含全部非银类型)一般风险命中次数1-N返回命中次数
nbank_lost_allnum
string
查询非银(含全部非银类型)高风险命中次数1-N返回命中次数
nbank_nsloan_bad_allnum
string
查询非银-持牌网络小贷中风险命中次数1-N返回命中次数
nbank_nsloan_overdue_allnum
string
查询非银-持牌网络小贷一般风险命中次数1-N返回命中次数
nbank_nsloan_lost_allnum
string
查询非银-持牌网络小贷高风险命中次数1-N返回命中次数
nbank_sloan_bad_allnum
string
查询非银-持牌小贷中风险命中次数1-N返回命中次数
nbank_sloan_overdue_allnum
string
查询非银-持牌小贷一般风险命中次数1-N返回命中次数
nbank_sloan_lost_allnum
string
查询非银-持牌小贷高风险命中次数1-N返回命中次数
nbank_cons_bad_allnum
string
查询非银-持牌消费金融中风险命中次数1-N返回命中次数
nbank_cons_overdue_allnum
string
查询非银-持牌消费金融一般风险命中次数1-N返回命中次数
nbank_cons_lost_allnum
string
查询非银-持牌消费金融高风险命中次数1-N返回命中次数
nbank_finlea_bad_allnum
string
查询非银-持牌融资租赁中风险命中次数1-N返回命中次数
nbank_finlea_overdue_allnum
string
查询非银-持牌融资租赁一般风险命中次数1-N返回命中次数
nbank_finlea_lost_allnum
string
查询非银-持牌融资租赁高风险命中次数1-N返回命中次数
nbank_autofin_bad_allnum
string
查询非银-持牌汽车金融中风险命中次数1-N返回命中次数
nbank_autofin_overdue_allnum
string
查询非银-持牌汽车金融一般风险命中次数1-N返回命中次数
nbank_autofin_lost_allnum
string
查询非银-持牌汽车金融高风险命中次数1-N返回命中次数
nbank_other_bad_allnum
string
查询非银-其他中风险命中次数1-N返回命中次数
nbank_other_overdue_allnum
string
查询非银-其他一般风险命中次数1-N返回命中次数
nbank_other_lost_allnum
string
查询非银-其他高风险命中次数1-N返回命中次数
court_bad_time
string
查询法院失信人距今时间0-N单位返回最近一次命中距查询时间
court_executed_time
string
查询法院被执行人距今时间0-N单位返回最近一次命中距查询时间
bank_bad_time
string
查询银行(含信用卡)中风险距今时间0-N单位返回最近一次命中距查询时间
bank_overdue_time
string
查询银行(含信用卡)一般风险距今时间0-N单位返回最近一次命中距查询时间
bank_lost_time
string
查询银行(含信用卡)高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_bad_time
string
查询非银(含全部非银类型)中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_overdue_time
string
查询非银(含全部非银类型)一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_lost_time
string
查询非银(含全部非银类型)高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_nsloan_bad_time
string
查询非银-持牌网络小贷中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_nsloan_overdue_time
string
查询非银-持牌网络小贷一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_nsloan_lost_time
string
查询非银-持牌网络小贷高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_sloan_bad_time
string
查询非银-持牌小贷中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_sloan_overdue_time
string
查询非银-持牌小贷一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_sloan_lost_time
string
查询非银-持牌小贷高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_cons_bad_time
string
查询非银-持牌消费金融中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_cons_overdue_time
string
查询非银-持牌消费金融一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_cons_lost_time
string
查询非银-持牌消费金融高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_finlea_bad_time
string
查询非银-持牌融资租赁中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_finlea_overdue_time
string
查询非银-持牌融资租赁一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_finlea_lost_time
string
查询非银-持牌融资租赁高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_autofin_bad_time
string
查询非银-持牌汽车金融中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_autofin_overdue_time
string
查询非银-持牌汽车金融一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_autofin_lost_time
string
查询非银-持牌汽车金融高风险距今时间0-N单位返回最近一次命中距查询时间
nbank_other_bad_time
string
查询非银-其他中风险距今时间0-N单位返回最近一次命中距查询时间
nbank_other_overdue_time
string
查询非银-其他一般风险距今时间0-N单位返回最近一次命中距查询时间
nbank_other_lost_time
string
查询非银-其他高风险距今时间0-N单位返回最近一次命中距查询时间

View File

@@ -0,0 +1,57 @@
package jrzq
import (
"context"
"encoding/json"
"errors"
"tyapi-server/internal/domains/api/dto"
"tyapi-server/internal/domains/api/services/processors"
"tyapi-server/internal/infrastructure/external/nuoer"
)
// ProcessJRZQ5T8SRequest JRZQ5T8S API处理方法 - 借贷意向验证V22
func ProcessJRZQ5T8SRequest(ctx context.Context, params []byte, deps *processors.ProcessorDependencies) ([]byte, error) {
var paramsDto dto.JRZQ5T8SReq
if err := json.Unmarshal(params, &paramsDto); err != nil {
return nil, errors.Join(processors.ErrSystem, err)
}
if err := deps.Validator.ValidateStruct(paramsDto); err != nil {
return nil, errors.Join(processors.ErrInvalidParam, err)
}
body := map[string]string{
"name": paramsDto.Name,
"idCard": paramsDto.IDCard,
"mobile": paramsDto.MobileNo,
}
nuoerDoCheckAPIKey := "loanRiskTagV22"
ApiPath := "/v1/doCheck"
resp, err := deps.NuoerService.CallAPI(ctx, nuoerDoCheckAPIKey, ApiPath, body)
if err != nil {
if errors.Is(err, nuoer.ErrDatasource) {
return nil, errors.Join(processors.ErrDatasource, err)
}
if errors.Is(err, nuoer.ErrNotFound) {
return nil, errors.Join(processors.ErrNotFound, err)
}
return nil, errors.Join(processors.ErrSystem, err)
}
rawData, ok := resp.Data.(map[string]interface{})
if !ok {
return processors.MarshalRawResponse(resp.Data)
}
result := mapNuoerApplyLoanToResponse(rawData)
respBytes, err := json.Marshal(result)
if err != nil {
return nil, errors.Join(processors.ErrSystem, err)
}
return respBytes, nil
}

View File

@@ -1,167 +0,0 @@
package jrzq
import (
"encoding/json"
"os"
"path/filepath"
"runtime"
"testing"
)
func TestMapNuoerApplyLoanToRiskScreenResponse_FromSample2JSON(t *testing.T) {
_, filename, _, ok := runtime.Caller(0)
if !ok {
t.Fatal("runtime.Caller failed")
}
dir := filepath.Dir(filename)
rawBytes, err := os.ReadFile(filepath.Join(dir, "2.json"))
if err != nil {
t.Fatalf("read 2.json: %v", err)
}
var payload map[string]interface{}
if err := json.Unmarshal(rawBytes, &payload); err != nil {
t.Fatalf("unmarshal 2.json: %v", err)
}
got := mapNuoerApplyLoanToRiskScreenResponse(payload)
riskScreenV2, ok := got["risk_screen_v2"].(map[string]interface{})
if !ok {
t.Fatalf("risk_screen_v2 type = %T, want map[string]interface{}", got["risk_screen_v2"])
}
if riskScreenV2["code"] != "OK" {
t.Fatalf("code = %v, want OK", riskScreenV2["code"])
}
if riskScreenV2["decision"] != "review" {
t.Fatalf("decision = %v, want review", riskScreenV2["decision"])
}
if riskScreenV2["fulinHitFlag"] != 1 {
t.Fatalf("fulinHitFlag = %v, want 1", riskScreenV2["fulinHitFlag"])
}
if riskScreenV2["id"] != "" {
t.Fatalf("id = %v, want empty string", riskScreenV2["id"])
}
if _, ok := riskScreenV2["knowledge"].(map[string]interface{}); !ok {
t.Fatalf("knowledge type = %T, want map[string]interface{}", riskScreenV2["knowledge"])
}
variables, ok := riskScreenV2["variables"].([]map[string]interface{})
if !ok {
t.Fatalf("variables type = %T, want []map[string]interface{}", riskScreenV2["variables"])
}
if len(variables) != 1 {
t.Fatalf("variables len = %d, want 1", len(variables))
}
if variables[0]["variableName"] != jrzq6F2AVariableName {
t.Fatalf("variableName = %v, want %s", variables[0]["variableName"], jrzq6F2AVariableName)
}
variableValue, ok := variables[0]["variableValue"].(map[string]interface{})
if !ok {
t.Fatalf("variableValue type = %T, want map[string]interface{}", variables[0]["variableValue"])
}
if len(variableValue) != len(jrzq6F2AOutputKeys) {
t.Fatalf("variableValue len = %d, want %d", len(variableValue), len(jrzq6F2AOutputKeys))
}
if variableValue["flag_applyloanstr"] != "1" {
t.Fatalf("flag_applyloanstr = %v, want 1", variableValue["flag_applyloanstr"])
}
if variableValue["als_Flag_applyloanstr"] != "1" {
t.Fatalf("als_Flag_applyloanstr = %v, want 1", variableValue["als_Flag_applyloanstr"])
}
if variableValue["code"] != "00" {
t.Fatalf("code = %v, want 00", variableValue["code"])
}
if variableValue["swift_number"] != "" {
t.Fatalf("swift_number = %v, want empty string", variableValue["swift_number"])
}
if variableValue["als_m12_id_nbank_allnum"] != "5" {
t.Fatalf("als_m12_id_nbank_allnum = %v, want 5", variableValue["als_m12_id_nbank_allnum"])
}
if variableValue["als_m6_id_nbank_selfnum"] != "0" {
t.Fatalf("als_m6_id_nbank_selfnum = %v, want 0", variableValue["als_m6_id_nbank_selfnum"])
}
if variableValue["als_d7_id_nbank_allnum"] != "" {
t.Fatalf("als_d7_id_nbank_allnum = %v, want empty string", variableValue["als_d7_id_nbank_allnum"])
}
if _, exists := variableValue["Rule_final_decision"]; exists {
t.Fatal("Rule_final_decision should not appear in variableValue")
}
}
func TestMapNuoerApplyLoanToRiskScreenResponse_AlignsWithTargetStructure(t *testing.T) {
_, filename, _, ok := runtime.Caller(0)
if !ok {
t.Fatal("runtime.Caller failed")
}
dir := filepath.Dir(filename)
rawBytes, err := os.ReadFile(filepath.Join(dir, "2.json"))
if err != nil {
t.Fatalf("read 2.json: %v", err)
}
targetBytes, err := os.ReadFile(filepath.Join(dir, "目标结构.json"))
if err != nil {
t.Fatalf("read 目标结构.json: %v", err)
}
var payload map[string]interface{}
if err := json.Unmarshal(rawBytes, &payload); err != nil {
t.Fatalf("unmarshal 2.json: %v", err)
}
var target map[string]interface{}
if err := json.Unmarshal(targetBytes, &target); err != nil {
t.Fatalf("unmarshal 目标结构.json: %v", err)
}
gotVV := mapNuoerApplyLoanToRiskScreenResponse(payload)["risk_screen_v2"].(map[string]interface{})["variables"].([]map[string]interface{})[0]["variableValue"].(map[string]interface{})
targetVV := target["risk_screen_v2"].(map[string]interface{})["variables"].([]interface{})[0].(map[string]interface{})["variableValue"].(map[string]interface{})
for key, want := range targetVV {
gotVal, exists := gotVV[key]
if !exists {
t.Fatalf("missing key %s", key)
}
if stringifyVal(gotVal) != stringifyVal(want) {
t.Fatalf("%s = %v, want %v", key, gotVal, want)
}
}
}
func TestMapNuoerApplyLoanToRiskScreenResponse_EmptyData(t *testing.T) {
got := mapNuoerApplyLoanToRiskScreenResponse(map[string]interface{}{})
riskScreenV2 := got["risk_screen_v2"].(map[string]interface{})
variables := riskScreenV2["variables"].([]map[string]interface{})
variableValue := variables[0]["variableValue"].(map[string]interface{})
if len(variableValue) != len(jrzq6F2AOutputKeys) {
t.Fatalf("variableValue len = %d, want %d", len(variableValue), len(jrzq6F2AOutputKeys))
}
if variableValue["flag_applyloanstr"] != "0" {
t.Fatalf("flag_applyloanstr = %v, want 0", variableValue["flag_applyloanstr"])
}
if variableValue["als_Flag_applyloanstr"] != "0" {
t.Fatalf("als_Flag_applyloanstr = %v, want 0", variableValue["als_Flag_applyloanstr"])
}
if variableValue["code"] != "" {
t.Fatalf("code = %v, want empty string", variableValue["code"])
}
for _, key := range jrzq6F2AOutputKeys {
if key == "flag_applyloanstr" || key == "als_Flag_applyloanstr" {
continue
}
if stringifyVal(variableValue[key]) != "" {
t.Fatalf("%s = %v, want empty string", key, variableValue[key])
}
}
if riskScreenV2["fulinHitFlag"] != 0 {
t.Fatalf("fulinHitFlag = %v, want 0", riskScreenV2["fulinHitFlag"])
}
if riskScreenV2["decision"] != "" {
t.Fatalf("decision = %v, want empty string", riskScreenV2["decision"])
}
}

View File

@@ -1,107 +0,0 @@
package jrzq
import (
"encoding/json"
"os"
"path/filepath"
"runtime"
"testing"
)
func TestMapNuoerSpecialListToResponse_FromTSMD2JSON(t *testing.T) {
_, filename, _, ok := runtime.Caller(0)
if !ok {
t.Fatal("runtime.Caller failed")
}
dir := filepath.Dir(filename)
rawBytes, err := os.ReadFile(filepath.Join(dir, "TSMD2.json"))
if err != nil {
t.Fatalf("read TSMD2.json: %v", err)
}
var payload map[string]interface{}
if err := json.Unmarshal(rawBytes, &payload); err != nil {
t.Fatalf("unmarshal TSMD2.json: %v", err)
}
got := mapNuoerSpecialListToResponse(payload)
idData, ok := got["id"].(map[string]interface{})
if !ok {
t.Fatalf("id type = %T, want map[string]interface{}", got["id"])
}
assertStringField(t, idData, "court_executed", "0")
assertStringField(t, idData, "court_executed_time", "3")
assertStringField(t, idData, "court_executed_allnum", "2")
if _, exists := got["cell"]; exists {
t.Fatal("cell should be omitted when empty")
}
assertStringField(t, got, "Rule_final_decision", "Accept")
assertStringField(t, got, "Rule_final_weight", "70")
assertStringField(t, got, "Rule_name_odr0000334", "两年前命中法院被执行人")
assertStringField(t, got, "Rule_weight_odr0000334", "70")
if _, exists := got["SpecialList_c"]; exists {
t.Fatal("SpecialList_c should not appear in transformed response")
}
if _, exists := got["RiskStrategy"]; exists {
t.Fatal("RiskStrategy should not appear in transformed response")
}
}
func TestMapNuoerSpecialListToResponse_FromTSMD1JSONShape(t *testing.T) {
_, filename, _, ok := runtime.Caller(0)
if !ok {
t.Fatal("runtime.Caller failed")
}
dir := filepath.Dir(filename)
rawBytes, err := os.ReadFile(filepath.Join(dir, "TSMD1.json"))
if err != nil {
t.Fatalf("read TSMD1.json: %v", err)
}
var want map[string]interface{}
if err := json.Unmarshal(rawBytes, &want); err != nil {
t.Fatalf("unmarshal TSMD1.json: %v", err)
}
got := mapNuoerSpecialListToResponse(want)
assertMapFields(t, got, want)
}
func assertMapFields(t *testing.T, got, want map[string]interface{}) {
t.Helper()
for key, wantVal := range want {
gotVal, exists := got[key]
if !exists {
t.Fatalf("missing key %q", key)
}
wantMap, wantIsMap := wantVal.(map[string]interface{})
gotMap, gotIsMap := gotVal.(map[string]interface{})
if wantIsMap {
if !gotIsMap {
t.Fatalf("key %q type = %T, want map[string]interface{}", key, gotVal)
}
assertMapFields(t, gotMap, wantMap)
continue
}
if stringifyVal(gotVal) != stringifyVal(wantVal) {
t.Fatalf("key %q = %v, want %v", key, gotVal, wantVal)
}
}
}
func assertStringField(t *testing.T, data map[string]interface{}, key, want string) {
t.Helper()
got, ok := data[key].(string)
if !ok {
t.Fatalf("key %q type = %T, want string", key, data[key])
}
if got != want {
t.Fatalf("key %q = %q, want %q", key, got, want)
}
}

View File

@@ -1,36 +0,0 @@
package jrzq
import "testing"
func TestMapNuoerLoanRiskTagV23ToResponse_RenamesTCContentsKeys(t *testing.T) {
raw := map[string]interface{}{
"result": map[string]interface{}{
"score": "750",
"reason": "ok",
"contents": map[string]interface{}{
"TC_Q016_q20": "1.5",
"TC_A001": "3",
"BH_A002": "2",
},
},
}
got := mapNuoerLoanRiskTagV23ToResponse(raw)
if got["score"] != "750" {
t.Fatalf("score = %v, want 750", got["score"])
}
contents, ok := got["contents"].(map[string]interface{})
if !ok {
t.Fatalf("contents type = %T, want map[string]interface{}", got["contents"])
}
if contents["BH_A001"] != "3" {
t.Fatalf("BH_A001 = %v, want 3", contents["BH_A001"])
}
if contents["BH_A002"] != "2" {
t.Fatalf("BH_A002 = %v, want 2", contents["BH_A002"])
}
if _, exists := contents["TC_Q016_q20"]; exists {
t.Fatal("TC_Q016_q20 should be renamed")
}
}

View File

@@ -0,0 +1,57 @@
package jrzq
import (
"context"
"encoding/json"
"errors"
"tyapi-server/internal/domains/api/dto"
"tyapi-server/internal/domains/api/services/processors"
"tyapi-server/internal/infrastructure/external/nuoer"
)
// ProcessJRZQT57ZRequest JRZQT57Z API处理方法 - 团伙欺诈风险识别
func ProcessJRZQT57ZRequest(ctx context.Context, params []byte, deps *processors.ProcessorDependencies) ([]byte, error) {
var paramsDto dto.JRZQT57ZReq
if err := json.Unmarshal(params, &paramsDto); err != nil {
return nil, errors.Join(processors.ErrSystem, err)
}
if err := deps.Validator.ValidateStruct(paramsDto); err != nil {
return nil, errors.Join(processors.ErrInvalidParam, err)
}
body := map[string]string{
"name": paramsDto.Name,
"idCard": paramsDto.IDCard,
"mobile": paramsDto.MobileNo,
}
nuoerDoCheckAPIKey := "idRelationRisk"
ApiPath := "/v1/doCheck"
resp, err := deps.NuoerService.CallAPI(ctx, nuoerDoCheckAPIKey, ApiPath, body)
if err != nil {
if errors.Is(err, nuoer.ErrDatasource) {
return nil, errors.Join(processors.ErrDatasource, err)
}
if errors.Is(err, nuoer.ErrNotFound) {
return nil, errors.Join(processors.ErrNotFound, err)
}
return nil, errors.Join(processors.ErrSystem, err)
}
rawData, ok := resp.Data.(map[string]interface{})
if !ok {
return processors.MarshalRawResponse(resp.Data)
}
result := mapNuoerApplyLoanToResponse(rawData)
respBytes, err := json.Marshal(result)
if err != nil {
return nil, errors.Join(processors.ErrSystem, err)
}
return respBytes, nil
}

View File

@@ -1,848 +0,0 @@
{
"risk_screen_v2": {
"code": "OK",
"decision": "accept",
"fulinHitFlag": 1,
"id": "",
"knowledge": {},
"message": "业务处理成功!",
"models": [],
"propertyValidations": [],
"scenes": [],
"strategies": [],
"validateInfo": {
"productCodes": []
},
"variables": [
{
"variableName": "bairong_applyloan_extend",
"variableValue": {
"als_Flag_applyloanstr": "1",
"als_d15_cell_af_allnum": "",
"als_d15_cell_af_orgnum": "",
"als_d15_cell_bank_allnum": "",
"als_d15_cell_bank_night_allnum": "",
"als_d15_cell_bank_night_orgnum": "",
"als_d15_cell_bank_orgnum": "",
"als_d15_cell_bank_ret_allnum": "",
"als_d15_cell_bank_ret_orgnum": "",
"als_d15_cell_bank_selfnum": "",
"als_d15_cell_bank_tra_allnum": "",
"als_d15_cell_bank_tra_orgnum": "",
"als_d15_cell_bank_week_allnum": "",
"als_d15_cell_bank_week_orgnum": "",
"als_d15_cell_caoff_allnum": "1",
"als_d15_cell_caoff_orgnum": "1",
"als_d15_cell_caon_allnum": "",
"als_d15_cell_caon_orgnum": "",
"als_d15_cell_cooff_allnum": "",
"als_d15_cell_cooff_orgnum": "",
"als_d15_cell_coon_allnum": "2",
"als_d15_cell_coon_orgnum": "2",
"als_d15_cell_nbank_allnum": "2",
"als_d15_cell_nbank_autofin_allnum": "",
"als_d15_cell_nbank_autofin_orgnum": "",
"als_d15_cell_nbank_ca_allnum": "1",
"als_d15_cell_nbank_ca_orgnum": "1",
"als_d15_cell_nbank_cf_allnum": "",
"als_d15_cell_nbank_cf_orgnum": "",
"als_d15_cell_nbank_com_allnum": "",
"als_d15_cell_nbank_com_orgnum": "",
"als_d15_cell_nbank_cons_allnum": "",
"als_d15_cell_nbank_cons_orgnum": "",
"als_d15_cell_nbank_else_allnum": "1",
"als_d15_cell_nbank_else_orgnum": "1",
"als_d15_cell_nbank_finlea_allnum": "1",
"als_d15_cell_nbank_finlea_orgnum": "1",
"als_d15_cell_nbank_mc_allnum": "",
"als_d15_cell_nbank_mc_orgnum": "",
"als_d15_cell_nbank_night_allnum": "0",
"als_d15_cell_nbank_night_orgnum": "0",
"als_d15_cell_nbank_nsloan_allnum": "",
"als_d15_cell_nbank_nsloan_orgnum": "",
"als_d15_cell_nbank_orgnum": "2",
"als_d15_cell_nbank_oth_allnum": "1",
"als_d15_cell_nbank_oth_orgnum": "1",
"als_d15_cell_nbank_p2p_allnum": "",
"als_d15_cell_nbank_p2p_orgnum": "",
"als_d15_cell_nbank_selfnum": "0",
"als_d15_cell_nbank_sloan_allnum": "",
"als_d15_cell_nbank_sloan_orgnum": "",
"als_d15_cell_nbank_week_allnum": "0",
"als_d15_cell_nbank_week_orgnum": "0",
"als_d15_cell_oth_allnum": "",
"als_d15_cell_oth_orgnum": "",
"als_d15_cell_pdl_allnum": "",
"als_d15_cell_pdl_orgnum": "",
"als_d15_cell_rel_allnum": "",
"als_d15_cell_rel_orgnum": "",
"als_d15_id_af_allnum": "",
"als_d15_id_af_orgnum": "",
"als_d15_id_bank_allnum": "",
"als_d15_id_bank_night_allnum": "",
"als_d15_id_bank_night_orgnum": "",
"als_d15_id_bank_orgnum": "",
"als_d15_id_bank_ret_allnum": "",
"als_d15_id_bank_ret_orgnum": "",
"als_d15_id_bank_selfnum": "",
"als_d15_id_bank_tra_allnum": "",
"als_d15_id_bank_tra_orgnum": "",
"als_d15_id_bank_week_allnum": "",
"als_d15_id_bank_week_orgnum": "",
"als_d15_id_caoff_allnum": "1",
"als_d15_id_caoff_orgnum": "1",
"als_d15_id_caon_allnum": "",
"als_d15_id_caon_orgnum": "",
"als_d15_id_cooff_allnum": "",
"als_d15_id_cooff_orgnum": "",
"als_d15_id_coon_allnum": "2",
"als_d15_id_coon_orgnum": "2",
"als_d15_id_nbank_allnum": "2",
"als_d15_id_nbank_autofin_allnum": "",
"als_d15_id_nbank_autofin_orgnum": "",
"als_d15_id_nbank_ca_allnum": "1",
"als_d15_id_nbank_ca_orgnum": "1",
"als_d15_id_nbank_cf_allnum": "",
"als_d15_id_nbank_cf_orgnum": "",
"als_d15_id_nbank_com_allnum": "",
"als_d15_id_nbank_com_orgnum": "",
"als_d15_id_nbank_cons_allnum": "",
"als_d15_id_nbank_cons_orgnum": "",
"als_d15_id_nbank_else_allnum": "1",
"als_d15_id_nbank_else_orgnum": "1",
"als_d15_id_nbank_finlea_allnum": "1",
"als_d15_id_nbank_finlea_orgnum": "1",
"als_d15_id_nbank_mc_allnum": "",
"als_d15_id_nbank_mc_orgnum": "",
"als_d15_id_nbank_night_allnum": "0",
"als_d15_id_nbank_night_orgnum": "0",
"als_d15_id_nbank_nsloan_allnum": "",
"als_d15_id_nbank_nsloan_orgnum": "",
"als_d15_id_nbank_orgnum": "2",
"als_d15_id_nbank_oth_allnum": "1",
"als_d15_id_nbank_oth_orgnum": "1",
"als_d15_id_nbank_p2p_allnum": "",
"als_d15_id_nbank_p2p_orgnum": "",
"als_d15_id_nbank_selfnum": "0",
"als_d15_id_nbank_sloan_allnum": "",
"als_d15_id_nbank_sloan_orgnum": "",
"als_d15_id_nbank_week_allnum": "0",
"als_d15_id_nbank_week_orgnum": "0",
"als_d15_id_oth_allnum": "",
"als_d15_id_oth_orgnum": "",
"als_d15_id_pdl_allnum": "",
"als_d15_id_pdl_orgnum": "",
"als_d15_id_rel_allnum": "",
"als_d15_id_rel_orgnum": "",
"als_d7_cell_af_allnum": "",
"als_d7_cell_af_orgnum": "",
"als_d7_cell_bank_allnum": "",
"als_d7_cell_bank_night_allnum": "",
"als_d7_cell_bank_night_orgnum": "",
"als_d7_cell_bank_orgnum": "",
"als_d7_cell_bank_ret_allnum": "",
"als_d7_cell_bank_ret_orgnum": "",
"als_d7_cell_bank_selfnum": "",
"als_d7_cell_bank_tra_allnum": "",
"als_d7_cell_bank_tra_orgnum": "",
"als_d7_cell_bank_week_allnum": "",
"als_d7_cell_bank_week_orgnum": "",
"als_d7_cell_caoff_allnum": "",
"als_d7_cell_caoff_orgnum": "",
"als_d7_cell_caon_allnum": "",
"als_d7_cell_caon_orgnum": "",
"als_d7_cell_cooff_allnum": "",
"als_d7_cell_cooff_orgnum": "",
"als_d7_cell_coon_allnum": "",
"als_d7_cell_coon_orgnum": "",
"als_d7_cell_nbank_allnum": "",
"als_d7_cell_nbank_autofin_allnum": "",
"als_d7_cell_nbank_autofin_orgnum": "",
"als_d7_cell_nbank_ca_allnum": "",
"als_d7_cell_nbank_ca_orgnum": "",
"als_d7_cell_nbank_cf_allnum": "",
"als_d7_cell_nbank_cf_orgnum": "",
"als_d7_cell_nbank_com_allnum": "",
"als_d7_cell_nbank_com_orgnum": "",
"als_d7_cell_nbank_cons_allnum": "",
"als_d7_cell_nbank_cons_orgnum": "",
"als_d7_cell_nbank_else_allnum": "",
"als_d7_cell_nbank_else_orgnum": "",
"als_d7_cell_nbank_finlea_allnum": "",
"als_d7_cell_nbank_finlea_orgnum": "",
"als_d7_cell_nbank_mc_allnum": "",
"als_d7_cell_nbank_mc_orgnum": "",
"als_d7_cell_nbank_night_allnum": "",
"als_d7_cell_nbank_night_orgnum": "",
"als_d7_cell_nbank_nsloan_allnum": "",
"als_d7_cell_nbank_nsloan_orgnum": "",
"als_d7_cell_nbank_orgnum": "",
"als_d7_cell_nbank_oth_allnum": "",
"als_d7_cell_nbank_oth_orgnum": "",
"als_d7_cell_nbank_p2p_allnum": "",
"als_d7_cell_nbank_p2p_orgnum": "",
"als_d7_cell_nbank_selfnum": "",
"als_d7_cell_nbank_sloan_allnum": "",
"als_d7_cell_nbank_sloan_orgnum": "",
"als_d7_cell_nbank_week_allnum": "",
"als_d7_cell_nbank_week_orgnum": "",
"als_d7_cell_oth_allnum": "",
"als_d7_cell_oth_orgnum": "",
"als_d7_cell_pdl_allnum": "",
"als_d7_cell_pdl_orgnum": "",
"als_d7_cell_rel_allnum": "",
"als_d7_cell_rel_orgnum": "",
"als_d7_id_af_allnum": "",
"als_d7_id_af_orgnum": "",
"als_d7_id_bank_allnum": "",
"als_d7_id_bank_night_allnum": "",
"als_d7_id_bank_night_orgnum": "",
"als_d7_id_bank_orgnum": "",
"als_d7_id_bank_ret_allnum": "",
"als_d7_id_bank_ret_orgnum": "",
"als_d7_id_bank_selfnum": "",
"als_d7_id_bank_tra_allnum": "",
"als_d7_id_bank_tra_orgnum": "",
"als_d7_id_bank_week_allnum": "",
"als_d7_id_bank_week_orgnum": "",
"als_d7_id_caoff_allnum": "",
"als_d7_id_caoff_orgnum": "",
"als_d7_id_caon_allnum": "",
"als_d7_id_caon_orgnum": "",
"als_d7_id_cooff_allnum": "",
"als_d7_id_cooff_orgnum": "",
"als_d7_id_coon_allnum": "",
"als_d7_id_coon_orgnum": "",
"als_d7_id_nbank_allnum": "",
"als_d7_id_nbank_autofin_allnum": "",
"als_d7_id_nbank_autofin_orgnum": "",
"als_d7_id_nbank_ca_allnum": "",
"als_d7_id_nbank_ca_orgnum": "",
"als_d7_id_nbank_cf_allnum": "",
"als_d7_id_nbank_cf_orgnum": "",
"als_d7_id_nbank_com_allnum": "",
"als_d7_id_nbank_com_orgnum": "",
"als_d7_id_nbank_cons_allnum": "",
"als_d7_id_nbank_cons_orgnum": "",
"als_d7_id_nbank_else_allnum": "",
"als_d7_id_nbank_else_orgnum": "",
"als_d7_id_nbank_finlea_allnum": "",
"als_d7_id_nbank_finlea_orgnum": "",
"als_d7_id_nbank_mc_allnum": "",
"als_d7_id_nbank_mc_orgnum": "",
"als_d7_id_nbank_night_allnum": "",
"als_d7_id_nbank_night_orgnum": "",
"als_d7_id_nbank_nsloan_allnum": "",
"als_d7_id_nbank_nsloan_orgnum": "",
"als_d7_id_nbank_orgnum": "",
"als_d7_id_nbank_oth_allnum": "",
"als_d7_id_nbank_oth_orgnum": "",
"als_d7_id_nbank_p2p_allnum": "",
"als_d7_id_nbank_p2p_orgnum": "",
"als_d7_id_nbank_selfnum": "",
"als_d7_id_nbank_sloan_allnum": "",
"als_d7_id_nbank_sloan_orgnum": "",
"als_d7_id_nbank_week_allnum": "",
"als_d7_id_nbank_week_orgnum": "",
"als_d7_id_oth_allnum": "",
"als_d7_id_oth_orgnum": "",
"als_d7_id_pdl_allnum": "",
"als_d7_id_pdl_orgnum": "",
"als_d7_id_rel_allnum": "",
"als_d7_id_rel_orgnum": "",
"als_fst_cell_bank_inteday": "",
"als_fst_cell_nbank_inteday": "220",
"als_fst_id_bank_inteday": "",
"als_fst_id_nbank_inteday": "220",
"als_lst_cell_bank_consnum": "",
"als_lst_cell_bank_csinteday": "",
"als_lst_cell_bank_inteday": "",
"als_lst_cell_nbank_consnum": "1",
"als_lst_cell_nbank_csinteday": "1",
"als_lst_cell_nbank_inteday": "15",
"als_lst_id_bank_consnum": "",
"als_lst_id_bank_csinteday": "",
"als_lst_id_bank_inteday": "",
"als_lst_id_nbank_consnum": "1",
"als_lst_id_nbank_csinteday": "1",
"als_lst_id_nbank_inteday": "15",
"als_m12_cell_af_allnum": "",
"als_m12_cell_af_orgnum": "",
"als_m12_cell_avg_monnum": "2.50",
"als_m12_cell_bank_allnum": "",
"als_m12_cell_bank_avg_monnum": "",
"als_m12_cell_bank_max_inteday": "",
"als_m12_cell_bank_max_monnum": "",
"als_m12_cell_bank_min_inteday": "",
"als_m12_cell_bank_min_monnum": "",
"als_m12_cell_bank_night_allnum": "",
"als_m12_cell_bank_night_orgnum": "",
"als_m12_cell_bank_orgnum": "",
"als_m12_cell_bank_ret_allnum": "",
"als_m12_cell_bank_ret_orgnum": "",
"als_m12_cell_bank_selfnum": "",
"als_m12_cell_bank_tot_mons": "",
"als_m12_cell_bank_tra_allnum": "",
"als_m12_cell_bank_tra_orgnum": "",
"als_m12_cell_bank_week_allnum": "",
"als_m12_cell_bank_week_orgnum": "",
"als_m12_cell_caoff_allnum": "2",
"als_m12_cell_caoff_orgnum": "1",
"als_m12_cell_caon_allnum": "1",
"als_m12_cell_caon_orgnum": "1",
"als_m12_cell_cooff_allnum": "",
"als_m12_cell_cooff_orgnum": "",
"als_m12_cell_coon_allnum": "9",
"als_m12_cell_coon_orgnum": "3",
"als_m12_cell_max_inteday": "198",
"als_m12_cell_max_monnum": "4",
"als_m12_cell_min_inteday": "0",
"als_m12_cell_min_monnum": "0",
"als_m12_cell_nbank_allnum": "5",
"als_m12_cell_nbank_autofin_allnum": "",
"als_m12_cell_nbank_autofin_orgnum": "",
"als_m12_cell_nbank_avg_monnum": "2.50",
"als_m12_cell_nbank_ca_allnum": "2",
"als_m12_cell_nbank_ca_orgnum": "1",
"als_m12_cell_nbank_cf_allnum": "",
"als_m12_cell_nbank_cf_orgnum": "",
"als_m12_cell_nbank_com_allnum": "",
"als_m12_cell_nbank_com_orgnum": "",
"als_m12_cell_nbank_cons_allnum": "",
"als_m12_cell_nbank_cons_orgnum": "",
"als_m12_cell_nbank_else_allnum": "3",
"als_m12_cell_nbank_else_orgnum": "3",
"als_m12_cell_nbank_finlea_allnum": "2",
"als_m12_cell_nbank_finlea_orgnum": "1",
"als_m12_cell_nbank_max_inteday": "198",
"als_m12_cell_nbank_max_monnum": "4",
"als_m12_cell_nbank_mc_allnum": "",
"als_m12_cell_nbank_mc_orgnum": "",
"als_m12_cell_nbank_min_inteday": "0",
"als_m12_cell_nbank_min_monnum": "0",
"als_m12_cell_nbank_night_allnum": "0",
"als_m12_cell_nbank_night_orgnum": "0",
"als_m12_cell_nbank_nsloan_allnum": "",
"als_m12_cell_nbank_nsloan_orgnum": "",
"als_m12_cell_nbank_orgnum": "4",
"als_m12_cell_nbank_oth_allnum": "3",
"als_m12_cell_nbank_oth_orgnum": "3",
"als_m12_cell_nbank_p2p_allnum": "",
"als_m12_cell_nbank_p2p_orgnum": "",
"als_m12_cell_nbank_selfnum": "0",
"als_m12_cell_nbank_sloan_allnum": "",
"als_m12_cell_nbank_sloan_orgnum": "",
"als_m12_cell_nbank_tot_mons": "2",
"als_m12_cell_nbank_week_allnum": "0",
"als_m12_cell_nbank_week_orgnum": "0",
"als_m12_cell_oth_allnum": "",
"als_m12_cell_oth_orgnum": "",
"als_m12_cell_pdl_allnum": "",
"als_m12_cell_pdl_orgnum": "",
"als_m12_cell_rel_allnum": "",
"als_m12_cell_rel_orgnum": "",
"als_m12_cell_tot_mons": "2",
"als_m12_id_af_allnum": "",
"als_m12_id_af_orgnum": "",
"als_m12_id_avg_monnum": "2.50",
"als_m12_id_bank_allnum": "",
"als_m12_id_bank_avg_monnum": "",
"als_m12_id_bank_max_inteday": "",
"als_m12_id_bank_max_monnum": "",
"als_m12_id_bank_min_inteday": "",
"als_m12_id_bank_min_monnum": "",
"als_m12_id_bank_night_allnum": "",
"als_m12_id_bank_night_orgnum": "",
"als_m12_id_bank_orgnum": "",
"als_m12_id_bank_ret_allnum": "",
"als_m12_id_bank_ret_orgnum": "",
"als_m12_id_bank_selfnum": "",
"als_m12_id_bank_tot_mons": "",
"als_m12_id_bank_tra_allnum": "",
"als_m12_id_bank_tra_orgnum": "",
"als_m12_id_bank_week_allnum": "",
"als_m12_id_bank_week_orgnum": "",
"als_m12_id_caoff_allnum": "2",
"als_m12_id_caoff_orgnum": "1",
"als_m12_id_caon_allnum": "1",
"als_m12_id_caon_orgnum": "1",
"als_m12_id_cooff_allnum": "",
"als_m12_id_cooff_orgnum": "",
"als_m12_id_coon_allnum": "11",
"als_m12_id_coon_orgnum": "3",
"als_m12_id_max_inteday": "198",
"als_m12_id_max_monnum": "4",
"als_m12_id_min_inteday": "0",
"als_m12_id_min_monnum": "0",
"als_m12_id_nbank_allnum": "5",
"als_m12_id_nbank_autofin_allnum": "",
"als_m12_id_nbank_autofin_orgnum": "",
"als_m12_id_nbank_avg_monnum": "2.50",
"als_m12_id_nbank_ca_allnum": "2",
"als_m12_id_nbank_ca_orgnum": "1",
"als_m12_id_nbank_cf_allnum": "",
"als_m12_id_nbank_cf_orgnum": "",
"als_m12_id_nbank_com_allnum": "",
"als_m12_id_nbank_com_orgnum": "",
"als_m12_id_nbank_cons_allnum": "",
"als_m12_id_nbank_cons_orgnum": "",
"als_m12_id_nbank_else_allnum": "3",
"als_m12_id_nbank_else_orgnum": "3",
"als_m12_id_nbank_finlea_allnum": "2",
"als_m12_id_nbank_finlea_orgnum": "1",
"als_m12_id_nbank_max_inteday": "198",
"als_m12_id_nbank_max_monnum": "4",
"als_m12_id_nbank_mc_allnum": "",
"als_m12_id_nbank_mc_orgnum": "",
"als_m12_id_nbank_min_inteday": "0",
"als_m12_id_nbank_min_monnum": "0",
"als_m12_id_nbank_night_allnum": "0",
"als_m12_id_nbank_night_orgnum": "0",
"als_m12_id_nbank_nsloan_allnum": "",
"als_m12_id_nbank_nsloan_orgnum": "",
"als_m12_id_nbank_orgnum": "4",
"als_m12_id_nbank_oth_allnum": "3",
"als_m12_id_nbank_oth_orgnum": "3",
"als_m12_id_nbank_p2p_allnum": "",
"als_m12_id_nbank_p2p_orgnum": "",
"als_m12_id_nbank_selfnum": "0",
"als_m12_id_nbank_sloan_allnum": "",
"als_m12_id_nbank_sloan_orgnum": "",
"als_m12_id_nbank_tot_mons": "2",
"als_m12_id_nbank_week_allnum": "0",
"als_m12_id_nbank_week_orgnum": "0",
"als_m12_id_oth_allnum": "",
"als_m12_id_oth_orgnum": "",
"als_m12_id_pdl_allnum": "",
"als_m12_id_pdl_orgnum": "",
"als_m12_id_rel_allnum": "",
"als_m12_id_rel_orgnum": "",
"als_m12_id_tot_mons": "2",
"als_m1_cell_af_allnum": "",
"als_m1_cell_af_orgnum": "",
"als_m1_cell_bank_allnum": "",
"als_m1_cell_bank_night_allnum": "",
"als_m1_cell_bank_night_orgnum": "",
"als_m1_cell_bank_orgnum": "",
"als_m1_cell_bank_ret_allnum": "",
"als_m1_cell_bank_ret_orgnum": "",
"als_m1_cell_bank_selfnum": "",
"als_m1_cell_bank_tra_allnum": "",
"als_m1_cell_bank_tra_orgnum": "",
"als_m1_cell_bank_week_allnum": "",
"als_m1_cell_bank_week_orgnum": "",
"als_m1_cell_caoff_allnum": "2",
"als_m1_cell_caoff_orgnum": "1",
"als_m1_cell_caon_allnum": "",
"als_m1_cell_caon_orgnum": "",
"als_m1_cell_cooff_allnum": "",
"als_m1_cell_cooff_orgnum": "",
"als_m1_cell_coon_allnum": "4",
"als_m1_cell_coon_orgnum": "3",
"als_m1_cell_nbank_allnum": "4",
"als_m1_cell_nbank_autofin_allnum": "",
"als_m1_cell_nbank_autofin_orgnum": "",
"als_m1_cell_nbank_ca_allnum": "2",
"als_m1_cell_nbank_ca_orgnum": "1",
"als_m1_cell_nbank_cf_allnum": "",
"als_m1_cell_nbank_cf_orgnum": "",
"als_m1_cell_nbank_com_allnum": "",
"als_m1_cell_nbank_com_orgnum": "",
"als_m1_cell_nbank_cons_allnum": "",
"als_m1_cell_nbank_cons_orgnum": "",
"als_m1_cell_nbank_else_allnum": "2",
"als_m1_cell_nbank_else_orgnum": "2",
"als_m1_cell_nbank_finlea_allnum": "2",
"als_m1_cell_nbank_finlea_orgnum": "1",
"als_m1_cell_nbank_mc_allnum": "",
"als_m1_cell_nbank_mc_orgnum": "",
"als_m1_cell_nbank_night_allnum": "0",
"als_m1_cell_nbank_night_orgnum": "0",
"als_m1_cell_nbank_nsloan_allnum": "",
"als_m1_cell_nbank_nsloan_orgnum": "",
"als_m1_cell_nbank_orgnum": "3",
"als_m1_cell_nbank_oth_allnum": "2",
"als_m1_cell_nbank_oth_orgnum": "2",
"als_m1_cell_nbank_p2p_allnum": "",
"als_m1_cell_nbank_p2p_orgnum": "",
"als_m1_cell_nbank_selfnum": "0",
"als_m1_cell_nbank_sloan_allnum": "",
"als_m1_cell_nbank_sloan_orgnum": "",
"als_m1_cell_nbank_week_allnum": "0",
"als_m1_cell_nbank_week_orgnum": "0",
"als_m1_cell_oth_allnum": "",
"als_m1_cell_oth_orgnum": "",
"als_m1_cell_pdl_allnum": "",
"als_m1_cell_pdl_orgnum": "",
"als_m1_cell_rel_allnum": "",
"als_m1_cell_rel_orgnum": "",
"als_m1_id_af_allnum": "",
"als_m1_id_af_orgnum": "",
"als_m1_id_bank_allnum": "",
"als_m1_id_bank_night_allnum": "",
"als_m1_id_bank_night_orgnum": "",
"als_m1_id_bank_orgnum": "",
"als_m1_id_bank_ret_allnum": "",
"als_m1_id_bank_ret_orgnum": "",
"als_m1_id_bank_selfnum": "",
"als_m1_id_bank_tra_allnum": "",
"als_m1_id_bank_tra_orgnum": "",
"als_m1_id_bank_week_allnum": "",
"als_m1_id_bank_week_orgnum": "",
"als_m1_id_caoff_allnum": "2",
"als_m1_id_caoff_orgnum": "1",
"als_m1_id_caon_allnum": "",
"als_m1_id_caon_orgnum": "",
"als_m1_id_cooff_allnum": "",
"als_m1_id_cooff_orgnum": "",
"als_m1_id_coon_allnum": "4",
"als_m1_id_coon_orgnum": "3",
"als_m1_id_nbank_allnum": "4",
"als_m1_id_nbank_autofin_allnum": "",
"als_m1_id_nbank_autofin_orgnum": "",
"als_m1_id_nbank_ca_allnum": "2",
"als_m1_id_nbank_ca_orgnum": "1",
"als_m1_id_nbank_cf_allnum": "",
"als_m1_id_nbank_cf_orgnum": "",
"als_m1_id_nbank_com_allnum": "",
"als_m1_id_nbank_com_orgnum": "",
"als_m1_id_nbank_cons_allnum": "",
"als_m1_id_nbank_cons_orgnum": "",
"als_m1_id_nbank_else_allnum": "2",
"als_m1_id_nbank_else_orgnum": "2",
"als_m1_id_nbank_finlea_allnum": "2",
"als_m1_id_nbank_finlea_orgnum": "1",
"als_m1_id_nbank_mc_allnum": "",
"als_m1_id_nbank_mc_orgnum": "",
"als_m1_id_nbank_night_allnum": "0",
"als_m1_id_nbank_night_orgnum": "0",
"als_m1_id_nbank_nsloan_allnum": "",
"als_m1_id_nbank_nsloan_orgnum": "",
"als_m1_id_nbank_orgnum": "3",
"als_m1_id_nbank_oth_allnum": "2",
"als_m1_id_nbank_oth_orgnum": "2",
"als_m1_id_nbank_p2p_allnum": "",
"als_m1_id_nbank_p2p_orgnum": "",
"als_m1_id_nbank_selfnum": "0",
"als_m1_id_nbank_sloan_allnum": "",
"als_m1_id_nbank_sloan_orgnum": "",
"als_m1_id_nbank_week_allnum": "0",
"als_m1_id_nbank_week_orgnum": "0",
"als_m1_id_oth_allnum": "",
"als_m1_id_oth_orgnum": "",
"als_m1_id_pdl_allnum": "",
"als_m1_id_pdl_orgnum": "",
"als_m1_id_rel_allnum": "",
"als_m1_id_rel_orgnum": "",
"als_m3_cell_af_allnum": "",
"als_m3_cell_af_orgnum": "",
"als_m3_cell_avg_monnum": "4.00",
"als_m3_cell_bank_allnum": "",
"als_m3_cell_bank_avg_monnum": "",
"als_m3_cell_bank_max_inteday": "",
"als_m3_cell_bank_max_monnum": "",
"als_m3_cell_bank_min_inteday": "",
"als_m3_cell_bank_min_monnum": "",
"als_m3_cell_bank_night_allnum": "",
"als_m3_cell_bank_night_orgnum": "",
"als_m3_cell_bank_orgnum": "",
"als_m3_cell_bank_ret_allnum": "",
"als_m3_cell_bank_ret_orgnum": "",
"als_m3_cell_bank_selfnum": "",
"als_m3_cell_bank_tot_mons": "",
"als_m3_cell_bank_tra_allnum": "",
"als_m3_cell_bank_tra_orgnum": "",
"als_m3_cell_bank_week_allnum": "",
"als_m3_cell_bank_week_orgnum": "",
"als_m3_cell_caoff_allnum": "2",
"als_m3_cell_caoff_orgnum": "1",
"als_m3_cell_caon_allnum": "",
"als_m3_cell_caon_orgnum": "",
"als_m3_cell_cooff_allnum": "",
"als_m3_cell_cooff_orgnum": "",
"als_m3_cell_coon_allnum": "6",
"als_m3_cell_coon_orgnum": "3",
"als_m3_cell_max_inteday": "7",
"als_m3_cell_max_monnum": "4",
"als_m3_cell_min_inteday": "0",
"als_m3_cell_min_monnum": "0",
"als_m3_cell_nbank_allnum": "4",
"als_m3_cell_nbank_autofin_allnum": "",
"als_m3_cell_nbank_autofin_orgnum": "",
"als_m3_cell_nbank_avg_monnum": "4.00",
"als_m3_cell_nbank_ca_allnum": "2",
"als_m3_cell_nbank_ca_orgnum": "1",
"als_m3_cell_nbank_cf_allnum": "",
"als_m3_cell_nbank_cf_orgnum": "",
"als_m3_cell_nbank_com_allnum": "",
"als_m3_cell_nbank_com_orgnum": "",
"als_m3_cell_nbank_cons_allnum": "",
"als_m3_cell_nbank_cons_orgnum": "",
"als_m3_cell_nbank_else_allnum": "2",
"als_m3_cell_nbank_else_orgnum": "2",
"als_m3_cell_nbank_finlea_allnum": "2",
"als_m3_cell_nbank_finlea_orgnum": "1",
"als_m3_cell_nbank_max_inteday": "7",
"als_m3_cell_nbank_max_monnum": "4",
"als_m3_cell_nbank_mc_allnum": "",
"als_m3_cell_nbank_mc_orgnum": "",
"als_m3_cell_nbank_min_inteday": "0",
"als_m3_cell_nbank_min_monnum": "0",
"als_m3_cell_nbank_night_allnum": "0",
"als_m3_cell_nbank_night_orgnum": "0",
"als_m3_cell_nbank_nsloan_allnum": "",
"als_m3_cell_nbank_nsloan_orgnum": "",
"als_m3_cell_nbank_orgnum": "3",
"als_m3_cell_nbank_oth_allnum": "2",
"als_m3_cell_nbank_oth_orgnum": "2",
"als_m3_cell_nbank_p2p_allnum": "",
"als_m3_cell_nbank_p2p_orgnum": "",
"als_m3_cell_nbank_selfnum": "0",
"als_m3_cell_nbank_sloan_allnum": "",
"als_m3_cell_nbank_sloan_orgnum": "",
"als_m3_cell_nbank_tot_mons": "1",
"als_m3_cell_nbank_week_allnum": "0",
"als_m3_cell_nbank_week_orgnum": "0",
"als_m3_cell_oth_allnum": "",
"als_m3_cell_oth_orgnum": "",
"als_m3_cell_pdl_allnum": "",
"als_m3_cell_pdl_orgnum": "",
"als_m3_cell_rel_allnum": "",
"als_m3_cell_rel_orgnum": "",
"als_m3_cell_tot_mons": "1",
"als_m3_id_af_allnum": "",
"als_m3_id_af_orgnum": "",
"als_m3_id_avg_monnum": "4.00",
"als_m3_id_bank_allnum": "",
"als_m3_id_bank_avg_monnum": "",
"als_m3_id_bank_max_inteday": "",
"als_m3_id_bank_max_monnum": "",
"als_m3_id_bank_min_inteday": "",
"als_m3_id_bank_min_monnum": "",
"als_m3_id_bank_night_allnum": "",
"als_m3_id_bank_night_orgnum": "",
"als_m3_id_bank_orgnum": "",
"als_m3_id_bank_ret_allnum": "",
"als_m3_id_bank_ret_orgnum": "",
"als_m3_id_bank_selfnum": "",
"als_m3_id_bank_tot_mons": "",
"als_m3_id_bank_tra_allnum": "",
"als_m3_id_bank_tra_orgnum": "",
"als_m3_id_bank_week_allnum": "",
"als_m3_id_bank_week_orgnum": "",
"als_m3_id_caoff_allnum": "2",
"als_m3_id_caoff_orgnum": "1",
"als_m3_id_caon_allnum": "",
"als_m3_id_caon_orgnum": "",
"als_m3_id_cooff_allnum": "",
"als_m3_id_cooff_orgnum": "",
"als_m3_id_coon_allnum": "6",
"als_m3_id_coon_orgnum": "3",
"als_m3_id_max_inteday": "7",
"als_m3_id_max_monnum": "4",
"als_m3_id_min_inteday": "0",
"als_m3_id_min_monnum": "0",
"als_m3_id_nbank_allnum": "4",
"als_m3_id_nbank_autofin_allnum": "",
"als_m3_id_nbank_autofin_orgnum": "",
"als_m3_id_nbank_avg_monnum": "4.00",
"als_m3_id_nbank_ca_allnum": "2",
"als_m3_id_nbank_ca_orgnum": "1",
"als_m3_id_nbank_cf_allnum": "",
"als_m3_id_nbank_cf_orgnum": "",
"als_m3_id_nbank_com_allnum": "",
"als_m3_id_nbank_com_orgnum": "",
"als_m3_id_nbank_cons_allnum": "",
"als_m3_id_nbank_cons_orgnum": "",
"als_m3_id_nbank_else_allnum": "2",
"als_m3_id_nbank_else_orgnum": "2",
"als_m3_id_nbank_finlea_allnum": "2",
"als_m3_id_nbank_finlea_orgnum": "1",
"als_m3_id_nbank_max_inteday": "7",
"als_m3_id_nbank_max_monnum": "4",
"als_m3_id_nbank_mc_allnum": "",
"als_m3_id_nbank_mc_orgnum": "",
"als_m3_id_nbank_min_inteday": "0",
"als_m3_id_nbank_min_monnum": "0",
"als_m3_id_nbank_night_allnum": "0",
"als_m3_id_nbank_night_orgnum": "0",
"als_m3_id_nbank_nsloan_allnum": "",
"als_m3_id_nbank_nsloan_orgnum": "",
"als_m3_id_nbank_orgnum": "3",
"als_m3_id_nbank_oth_allnum": "2",
"als_m3_id_nbank_oth_orgnum": "2",
"als_m3_id_nbank_p2p_allnum": "",
"als_m3_id_nbank_p2p_orgnum": "",
"als_m3_id_nbank_selfnum": "0",
"als_m3_id_nbank_sloan_allnum": "",
"als_m3_id_nbank_sloan_orgnum": "",
"als_m3_id_nbank_tot_mons": "1",
"als_m3_id_nbank_week_allnum": "0",
"als_m3_id_nbank_week_orgnum": "0",
"als_m3_id_oth_allnum": "",
"als_m3_id_oth_orgnum": "",
"als_m3_id_pdl_allnum": "",
"als_m3_id_pdl_orgnum": "",
"als_m3_id_rel_allnum": "",
"als_m3_id_rel_orgnum": "",
"als_m3_id_tot_mons": "1",
"als_m6_cell_af_allnum": "",
"als_m6_cell_af_orgnum": "",
"als_m6_cell_avg_monnum": "4.00",
"als_m6_cell_bank_allnum": "",
"als_m6_cell_bank_avg_monnum": "",
"als_m6_cell_bank_max_inteday": "",
"als_m6_cell_bank_max_monnum": "",
"als_m6_cell_bank_min_inteday": "",
"als_m6_cell_bank_min_monnum": "",
"als_m6_cell_bank_night_allnum": "",
"als_m6_cell_bank_night_orgnum": "",
"als_m6_cell_bank_orgnum": "",
"als_m6_cell_bank_ret_allnum": "",
"als_m6_cell_bank_ret_orgnum": "",
"als_m6_cell_bank_selfnum": "",
"als_m6_cell_bank_tot_mons": "",
"als_m6_cell_bank_tra_allnum": "",
"als_m6_cell_bank_tra_orgnum": "",
"als_m6_cell_bank_week_allnum": "",
"als_m6_cell_bank_week_orgnum": "",
"als_m6_cell_caoff_allnum": "2",
"als_m6_cell_caoff_orgnum": "1",
"als_m6_cell_caon_allnum": "",
"als_m6_cell_caon_orgnum": "",
"als_m6_cell_cooff_allnum": "",
"als_m6_cell_cooff_orgnum": "",
"als_m6_cell_coon_allnum": "7",
"als_m6_cell_coon_orgnum": "3",
"als_m6_cell_max_inteday": "7",
"als_m6_cell_max_monnum": "4",
"als_m6_cell_min_inteday": "0",
"als_m6_cell_min_monnum": "0",
"als_m6_cell_nbank_allnum": "4",
"als_m6_cell_nbank_autofin_allnum": "",
"als_m6_cell_nbank_autofin_orgnum": "",
"als_m6_cell_nbank_avg_monnum": "4.00",
"als_m6_cell_nbank_ca_allnum": "2",
"als_m6_cell_nbank_ca_orgnum": "1",
"als_m6_cell_nbank_cf_allnum": "",
"als_m6_cell_nbank_cf_orgnum": "",
"als_m6_cell_nbank_com_allnum": "",
"als_m6_cell_nbank_com_orgnum": "",
"als_m6_cell_nbank_cons_allnum": "",
"als_m6_cell_nbank_cons_orgnum": "",
"als_m6_cell_nbank_else_allnum": "2",
"als_m6_cell_nbank_else_orgnum": "2",
"als_m6_cell_nbank_finlea_allnum": "2",
"als_m6_cell_nbank_finlea_orgnum": "1",
"als_m6_cell_nbank_max_inteday": "7",
"als_m6_cell_nbank_max_monnum": "4",
"als_m6_cell_nbank_mc_allnum": "",
"als_m6_cell_nbank_mc_orgnum": "",
"als_m6_cell_nbank_min_inteday": "0",
"als_m6_cell_nbank_min_monnum": "0",
"als_m6_cell_nbank_night_allnum": "0",
"als_m6_cell_nbank_night_orgnum": "0",
"als_m6_cell_nbank_nsloan_allnum": "",
"als_m6_cell_nbank_nsloan_orgnum": "",
"als_m6_cell_nbank_orgnum": "3",
"als_m6_cell_nbank_oth_allnum": "2",
"als_m6_cell_nbank_oth_orgnum": "2",
"als_m6_cell_nbank_p2p_allnum": "",
"als_m6_cell_nbank_p2p_orgnum": "",
"als_m6_cell_nbank_selfnum": "0",
"als_m6_cell_nbank_sloan_allnum": "",
"als_m6_cell_nbank_sloan_orgnum": "",
"als_m6_cell_nbank_tot_mons": "1",
"als_m6_cell_nbank_week_allnum": "0",
"als_m6_cell_nbank_week_orgnum": "0",
"als_m6_cell_oth_allnum": "",
"als_m6_cell_oth_orgnum": "",
"als_m6_cell_pdl_allnum": "",
"als_m6_cell_pdl_orgnum": "",
"als_m6_cell_rel_allnum": "",
"als_m6_cell_rel_orgnum": "",
"als_m6_cell_tot_mons": "1",
"als_m6_id_af_allnum": "",
"als_m6_id_af_orgnum": "",
"als_m6_id_avg_monnum": "4.00",
"als_m6_id_bank_allnum": "",
"als_m6_id_bank_avg_monnum": "",
"als_m6_id_bank_max_inteday": "",
"als_m6_id_bank_max_monnum": "",
"als_m6_id_bank_min_inteday": "",
"als_m6_id_bank_min_monnum": "",
"als_m6_id_bank_night_allnum": "",
"als_m6_id_bank_night_orgnum": "",
"als_m6_id_bank_orgnum": "",
"als_m6_id_bank_ret_allnum": "",
"als_m6_id_bank_ret_orgnum": "",
"als_m6_id_bank_selfnum": "",
"als_m6_id_bank_tot_mons": "",
"als_m6_id_bank_tra_allnum": "",
"als_m6_id_bank_tra_orgnum": "",
"als_m6_id_bank_week_allnum": "",
"als_m6_id_bank_week_orgnum": "",
"als_m6_id_caoff_allnum": "2",
"als_m6_id_caoff_orgnum": "1",
"als_m6_id_caon_allnum": "",
"als_m6_id_caon_orgnum": "",
"als_m6_id_cooff_allnum": "",
"als_m6_id_cooff_orgnum": "",
"als_m6_id_coon_allnum": "8",
"als_m6_id_coon_orgnum": "3",
"als_m6_id_max_inteday": "7",
"als_m6_id_max_monnum": "4",
"als_m6_id_min_inteday": "0",
"als_m6_id_min_monnum": "0",
"als_m6_id_nbank_allnum": "4",
"als_m6_id_nbank_autofin_allnum": "",
"als_m6_id_nbank_autofin_orgnum": "",
"als_m6_id_nbank_avg_monnum": "4.00",
"als_m6_id_nbank_ca_allnum": "2",
"als_m6_id_nbank_ca_orgnum": "1",
"als_m6_id_nbank_cf_allnum": "",
"als_m6_id_nbank_cf_orgnum": "",
"als_m6_id_nbank_com_allnum": "",
"als_m6_id_nbank_com_orgnum": "",
"als_m6_id_nbank_cons_allnum": "",
"als_m6_id_nbank_cons_orgnum": "",
"als_m6_id_nbank_else_allnum": "2",
"als_m6_id_nbank_else_orgnum": "2",
"als_m6_id_nbank_finlea_allnum": "2",
"als_m6_id_nbank_finlea_orgnum": "1",
"als_m6_id_nbank_max_inteday": "7",
"als_m6_id_nbank_max_monnum": "4",
"als_m6_id_nbank_mc_allnum": "",
"als_m6_id_nbank_mc_orgnum": "",
"als_m6_id_nbank_min_inteday": "0",
"als_m6_id_nbank_min_monnum": "0",
"als_m6_id_nbank_night_allnum": "0",
"als_m6_id_nbank_night_orgnum": "0",
"als_m6_id_nbank_nsloan_allnum": "",
"als_m6_id_nbank_nsloan_orgnum": "",
"als_m6_id_nbank_orgnum": "3",
"als_m6_id_nbank_oth_allnum": "2",
"als_m6_id_nbank_oth_orgnum": "2",
"als_m6_id_nbank_p2p_allnum": "",
"als_m6_id_nbank_p2p_orgnum": "",
"als_m6_id_nbank_selfnum": "0",
"als_m6_id_nbank_sloan_allnum": "",
"als_m6_id_nbank_sloan_orgnum": "",
"als_m6_id_nbank_tot_mons": "1",
"als_m6_id_nbank_week_allnum": "0",
"als_m6_id_nbank_week_orgnum": "0",
"als_m6_id_oth_allnum": "",
"als_m6_id_oth_orgnum": "",
"als_m6_id_pdl_allnum": "",
"als_m6_id_pdl_orgnum": "",
"als_m6_id_rel_allnum": "",
"als_m6_id_rel_orgnum": "",
"als_m6_id_tot_mons": "1",
"code": "00",
"flag_applyloanstr": "1",
"swift_number": ""
}
}
]
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,32 +0,0 @@
package processors
import (
"context"
"testing"
)
func TestWhitelistShouldReturnEmpty_PerAPICode(t *testing.T) {
ctx := WithWhitelistContext(context.Background(), []WhitelistMatch{
{ID: "1", APICodes: []string{"FLXG0V4B"}},
})
if !WhitelistShouldReturnEmpty(ctx, "FLXG0V4B") {
t.Fatal("FLXG0V4B should hit")
}
if WhitelistShouldReturnEmpty(ctx, "JRZQ8A2D") {
t.Fatal("JRZQ8A2D should not hit entry scoped to FLXG0V4B")
}
}
func TestWhitelistShouldReturnEmpty_WildcardMatchesAnyAPICode(t *testing.T) {
ctx := WithWhitelistContext(context.Background(), []WhitelistMatch{
{ID: "1", APICodes: []string{"*"}},
})
if !WhitelistShouldReturnEmpty(ctx, "QYGL8261") {
t.Fatal("wildcard should match any api_code in ctx")
}
if !WhitelistShouldReturnEmpty(ctx, "YYSY8B1C") {
t.Fatal("wildcard should match mobile-only api_code when in ctx")
}
}