Commit 791de55e by dongzhengcheng

优化接口

parent 21435790
##accountBank
**简要描述:**
10、账户白名单维护
**请求URL:**
- ` /api/account/bank`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P|公司C|会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|bank_no |否|string |行号|
|bank_Name |否|string |行名|
|bank_Account_no |否|string |户号|
|bank_Account_name |否|string |户名|
|type|否|string |操作:1增加,2修改,3删除|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id ,section_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountDestory
**简要描述:**
4、销户
正常子账户,通过 BELONG_TYPE,BEKONG_ID, ACCOUNT_TYPE 维护,保证金账户,通过item_type, items_id, 维护
**请求URL:**
- ` /api/account/destory`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P|公司C|会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|is_force |否|int | 1:强制刷新(从银行获取),0非强制刷新。|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountInfo
3、账户信息-账户信息
**简要描述:**
正常子账户,通过 BELONG_TYPE,BEKONG_ID, ACCOUNT_TYPE 维护,保证金账户,通过item_type, items_id, section_id
**请求URL:**
- ` /api/account/info`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P|公司C|会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|name |是|string(20) | 账户名称 |
|user_account|是|string(20) | 平台会员号|
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|is_force |否|int | 1:强制刷新(从银行获取),0非强制刷新。|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
'name':'账户名称',
'account_sn':'虚拟号',
'user_account':'会员号',
'bank_code':'银行类型',
'account_no':'银行虚拟子账号',
'gross_amount':'账户总额',
'amount':'可用金额',
'lock_amount':'冻结金额',
'deposit':
{
'items_type':'项目类型',
'items_id':'项目类型',
'tender_uid':'投标人id',
'tender_cid':'投标人公司ID',
'tender_name':'投标人名称',
'section_id':'标段ID',
'section_name':'标段号'
},
'bank':
{
'bank_name':'银行名称',
'bank_no':'银行行号',
'account_name':'账户名称',
'account_no':'账户号',
}
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|--name|是|string |户名|
|--account_sn|是|string |虚拟账户|
|--user_account|是|string |会员号|
|--gross_amount|是|string |账户总额|
|--amount|是|string |可用金额|
|--lock_amount|是|string |锁定金额|
|--deposit|否|string |保证金账户|
|----items_type|是|string |项目类型|
|----items_id|是|string |项目ID|
|----tender_uid|是|string |投标人ID|
|----tender_name|是|string |投标人名称|
|----section_id|是|string |标段ID|
|----section_name|是|string |标段ID|
|--bank_name|是|string |银行名称|
|--bank_no|是|string |银行虚拟账户|
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountLocking
**简要描述:**
8、账户冻结
**请求URL:**
- ` /api/account/locking`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P、公司C、会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|amount |是|int |冻结金额|
|lock_sn |否|string(60) |冻结编号|
|remark |否|string ||
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id ,section_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
账户信息
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountLockingList
**简要描述:**
7、账户冻结列表
**请求URL:**
- ` /api/account/locking`
**请求方式:**
- get
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P、公司C、会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|page_num |否|int |页码|
保证金额账户:items_type, items_id ,section_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
"total":3,
"per_page":20,
"current_page":1,
"last_page":1,
"from":1,
"to":3,
"data":[
{
'id':1,
'lock_sn':'冻结编号',
'amount':'冻结金额',
'remark':'备注',
'op_at':'操作时间',
'status':'状态:-1失败,1冻结成功,2已解冻',
}
]
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountOpen
1、开户 - 虚拟账户
**简要描述:**
**请求URL:**
- ` /api/account/open`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P、公司C、会员M |
|belong_id |是|int(10) | 对应ID|
|belong_name |否|string(10) |会员|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|name |是|string(20) | 账户名称 |
|user_account|是|string(20) | 平台会员号|
|bank_type |是|string(10) |开户银行|
|items_type |否|string(60) |保证金项目类型 |
|items_id |否|int | 项目ID|
|section_id |否|string | 标段ID|
|tender_cid |否|int | 投标人公司ID|
|tender_uid |否|int | 投标人ID|
|tender_name |否|int | 投标人ID|
|section_name |否|string | 标号+投标人户名|
|op_user |是|int | 操作者|
平台专用账户: P, ID 需要先向虚拟子账户平台申请分配;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
虚拟账户基本信息-见账户信息
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##accountUnlocking
**简要描述:**
9、账户解冻
**请求URL:**
- ` /api/account/unlocking`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P|公司C|会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|lock_sn|否|string | 冻结业务编号|
|remark|否|string | 备注|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id ,section_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
####accountUpdate
维护账户信息 - 虚拟账户
**简要描述:**
维护手机号,账户名称;
正常子账户,通过 BELONG_TYPE,BEKONG_ID, ACCOUNT_TYPE 维护,保证金账户,通过item_type, items_id, section_id 维护
**请求URL:**
- ` /api/account/update`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_sn |是|string(10) | |
|name |是|string(20) | 账户名称 |
|user_account|是|string(20) | 平台会员号|
|op_user |是|int | 操作者|
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P|公司C|会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|name |是|string(20) | 账户名称 |
|user_account|是|string(20) | 平台会员号|
|auth_mobile |是|string(11) | 授权手机 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
虚拟账户基本信息-见账户信息
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##tradesPay
**简要描述:**
会员账户:
-》平台账户:会员费,手续费
-》会员账户:账期交易打款
-》保证金账户:缴纳保证金
-》实体卡:提现(白名单验证), 转账(转给别人的实体卡:缴纳标书费)
平台账户:
-》会员账户:平台活动(返现)
-》实体卡:提现(白名单验证), 转账(转给指定其他实体账户)
-》平台账户:A->B (平台资金补充)
保证账户:
-》会员账户:退款
-》实体账户:退款 / 扣款(扣款到发标人实体卡)
-》平台账户:扣款
**请求URL:**
- ` /api/trades/pay`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|business_sn |是|string(10) |业务交易号|
|business_id |是|string(10) |业务交易ID|
|business_type |是|string(10) |业务交易类型|
|account_no |是|string(60) |出金账户 |
|trade_type |是|int |交易类型 |
|amount |是|int |出金金额 |
|bank_no |否|string |入金行号|
|bank_Name |否|string |入金行名|
|bank_Account_no |否|string |入金户号|
|bank_Account_name |否|string |入金户名|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##开户 - 虚拟账户
**简要描述**
公司账户:account_sn, 公司ID, 账户名称,开户人ID。公司名称,营业执照
个人账户:account_sn, 会员ID, 账户名称,开户人ID
【询价/投标】保证金额账户:account_sn, 保证金所属公司ID, 账户名称,开户人ID,项目ID,缴纳公司ID,缴纳人,标段ID;
报名费账户:
**请求URL**
- ` /api/account`
**请求方式**
- POST
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台p、公司c、会员m |
|belong_id |是|int(10) | 对应ID|
|belong_name |否|string(10) |会员|
|account_type |是|char(1) | 平台账户:1、正常子账户:2、保证金子账户:3 |
|account_name |是|string(33) | 账户名称,33个汉字 |
|account_sn |是|string(60) | 账户虚拟户编号 |
|sys_member|是|string(20) | 平台会员号|
|bank_type |是|string(10) |开户银行|
|enter_prise_name |否|string(60) |公司名称|
|business_licence |否|string(60) |公司名称营业执照|
|items_type |否|string(60) |保证金项目类型 |
|items_id |否|int | 保证金项目ID|
|items_type |否|int | 保证金类型: 1投标, 10 标书费|
|tender_company |否|int | 投标人公司ID|
|tender_user |否|int | 投标人ID|
|biao_duan |否|string | 标段号|
|op_user |是|int | 操作者|
平台专用账户: P, ID 需要先向虚拟子账户平台申请分配;
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
'account_sn':'1001',
'account_name':'账户名',
'account_no':'账户',
'bank_no':'行号',
'bank_name':'行名',
'bank_type':'银行类型',
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status|是|string |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|--account_sn|是|string | 虚拟户编号 |
|--account_name|是|string | 虚拟户名 |
|--account_no|是|string | 虚拟户号 |
|--bank_no|是|string | 开户行号 |
|--bank_name|是|string | 开户行名 |
|--bank_type|是|int | 银行类型:1,中信,2招行 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
## 获取账户信息
**简要描述**
通过 虚拟账户编号,获取账户信息
**请求URL**
- ` /api/account/account/{account_sn}`
**请求方式**
- GET
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|is_fore |是|int | 1,透传到银行,0:查询虚拟户余额|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
'account_sn':'1001',
'account_name':'账户名',
'account_no':'账户',
'bank_no':'行号',
'bank_name':'行名',
'bank_type':'银行类型',
'amount':100,
'gross_amount':100,
'status':1
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status|是|string |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|--account_sn|是|string | 虚拟户编号 |
|--account_name|是|string | 虚拟户名 |
|--account_no|是|string | 虚拟户号 |
|--bank_no|是|string | 开户行号 |
|--bank_name|是|string | 开户行名 |
|--amount|是|int | 可用余额
|--gross_amount|是|int | 总额
**备注**
- 更多返回错误代码请看首页的错误代码描述
##维护账户信息
**简要描述
通过ACCOUTN_SN, 维护手机号,账户名称,企业名称和企业号;
**请求URL**
- ` /api/account/account/{account_sn}`
**请求方式**
- PUT
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_name |否|string(33) | 账户名称 |
|enter_prise_name |否|string(60) |公司名称|
|business_licence |否|string(60) |公司营业执照|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
虚拟账户基本信息-见账户信息
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status|是|string |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|--account_sn|是|string | 虚拟户编号 |
|--account_name|是|string | 虚拟户名 |
|--account_no|是|string | 虚拟户号 |
|--bank_no|是|string | 开户行号 |
|--bank_name|是|string | 开户行名 |
|--bank_type|是|int | 银行类型:1,中信,2招行 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##销户
**简要描述**
通过ACCOUTN_SN,
**请求URL**
- ` /api/account/account/{account_sn}`
**请求方式**
- DELETE
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|is_force |是|int |强制销户|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status|是|string |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##accountInterest
5、账户利息试算
## 账户利息试算
**简要描述:**
正常子账户,通过 BELONG_TYPE,BEKONG_ID, ACCOUNT_TYPE 维护,保证金账户,通过item_type, items_id, 维护
**请求URL:**
......@@ -38,7 +36,7 @@
'message':'操作成功',
'data':
{
insterst:1.000001
insterst:1
}
}
......@@ -51,7 +49,7 @@
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|-- insterst|是|float| 利息 |
|-- insterst|是|int| 利息 |
**备注**
......
##accountLog
##账户流水
**简要描述:**
6、账户流水
**请求URL:**
......@@ -11,32 +10,24 @@
**请求方式:**
- POST
- get
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|belong_type |是|string(10) | 所属类型:平台P、公司C、会员M |
|belong_id |是|int(10) | 对应ID|
|account_type |是|char(1) | 平台账户、正常子账户、保证金子账户 |
|items_type |否|string(60) |保证金类型 |
|items_id |否|int | 对应保证金类型的ID|
|section_id |否|string | 标段ID|
|account_sn |是|string(10) | 虚拟户编号 |
|start_at |否|string |开始时间|
|end_at |否|string | 结束时间|
|page_num |否|string |页码|
|op_user |是|int | 操作者|
保证金额账户:items_type, items_id ,section_id 必填;
**返回示例**
```
{
'status':'SUCCESS',
'status_code':'200',
'message':'操作成功',
'data':
{
......
##账户冻结
**简要描述**
账户冻结
**请求URL**
- ` /api/account/freeze`
**请求方式**
- post
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_sn |是|string(10) | 虚拟户编号|
|lock_account_type |是|int |0:冻结金额, 1:冻结账户|
|amount |否|int | 冻结金额必填|
|op_user |否|int |页码|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##账户冻结列表
**简要描述**
7、账户冻结列表
**请求URL**
- ` /api/account/freeze`
**请求方式**
- get
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_sn |是|string(10) | 虚拟户编号|
|start_at |否|int |开始时间|
|end_at |否|int |结束时间|
|page_num |否|int |页码|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
"total":3,
"per_page":20,
"current_page":1,
"last_page":1,
"from":1,
"to":3,
"data":[
{
'id':1,
'account_sn':'虚拟户编号',
'lock_sn':'冻结编号',
'amount':'冻结金额',
'lock_type':'0冻结1解冻',
'lock_account_type':'0冻结金额1冻结账户',
'remark':'备注',
'status':'0未处理,1已处理成功',
}
]
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
## 账户冻结
**简要描述**
**请求URL**
- ` /api/account/freeze/{lock_sn}`
**请求方式**
- delete
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|op_user |否|int |页码|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##账户白名单列表
**简要描述**
**请求URL**
- ` /api/account/whitelist`
**请求方式**
- get
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_sn |是|string(10) | 所属类型:平台P|公司C|会员M |
|page_num |否|int |页码|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
"total":3,
"per_page":20,
"current_page":1,
"last_page":1,
"from":1,
"to":3,
"data":[
{
'id':1,
'account_sn':'虚拟户编号',
'bank_no':'行号',
'bank_name':'行名',
'card_no':'卡号',
'card_name':'账户名'
}
]
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
|--bank_no|是|sting | 行号|
|--bank_name|是|sting | 行名 |
|--card_no|是|sting | 卡号|
|--card_name|是|sting | 账户名 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##账户白名单创建
**简要描述**
**请求URL**
- ` /api/account/whitelist`
**请求方式**
- POST
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|account_sn |是|string(10) | 虚拟户编号 |
|bank_no |是|string |行号|
|bank_name |是|string |行名|
|card_no |是|string |户号|
|card_name |是|string |户名|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##账户白名单编辑
**简要描述**
**请求URL**
- ` /api/account/whitelist/{account_sn}`
**请求方式**
- PUT
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|bank_no |是|string |行号|
|bank_name |是|string |行名|
|card_no |是|string |户号|
|card_name |是|string |户名|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
##账户白名单删除
**简要描述**
**请求URL**
- ` /api/account/whitelist/{account_sn}`
**请求方式**
- DELETE
**参数**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|card_no |是|string |户号|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':null
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | 业务数据 |
**备注**
- 更多返回错误代码请看首页的错误代码描述
# desc
##1. 引言
### 1.1 文档目的
本文档旨在对终端与系统平台接口技术规范进行说明,用于指导开发人员进行相关业务的开发。
本文档旨在系统平台接口技术规范进行说明,用于指导开发人员进行相关业务的开发。
### 1.2 文档范围
描述移动端与服务器进行功能与数据交互时的全部接口协议。
##2. 接口协议
###2.1 基本约束
1. 接口数据使用UTF-8编码。
2. 接口地址的形式为 服务域名:端口/地址。
3. 接口地址请求时,使用HTTP POST, GET 方式。
4. 在请求头接口时放置在HTTP Header的Cookie部分 。返回值使用 JSON 数据格式。
6. 每个请求都需要加参数请求签名 sign, 见[签名规则](#sign_type)
7. 开发环境:
8. 正式环境:
9. 接口所有时间段和日期端均采用前闭后开的业务
1. 接口数据使用UTF-8编码。
2. 接口地址的形式为 服务域名:端口/地址。
3. 接口地址请求时,使用HTTP POST, GET,DELETE, PUT 方式。
4. 在请求头接口时放置在HTTP Header的Cookie部分 。返回值使用 JSON 数据格式。
5. 每个请求都需要加参数请求签名 sign, 见[签名规则](#sign_type)
6. 开发环境:
7. 正式环境:
8. 接口所有时间段和日期端均采用前闭后开的业务
9. 金额的单位统一为分
###2.2 常量
名称 | 值 | 说明 |
-----|------|----|
app_id|1|接口编号
app_secret|123456789|对应接口秘钥
app_id|platform|接口编号,服务器分配
app_secret|123456789|对应接口秘钥,服务器分配
备注:具体合作编码和秘钥,另行通知
......@@ -36,31 +35,37 @@ app_secret|123456789|对应接口秘钥
stateCode | 含义 |返回内容|
-----|--------|---
200 |数据请正常返回 | status = ‘SUCCESS’ 正常数据,见各接口格式, status = ‘WARNING’,有警告数据。
200 |数据请正常返回 | 正常数据,见各接口格式
400 |业务错误| <a href="#error_400">错误代码</a>
401 |未授权| <a href="#error_401">错误代码</a>
404 |方法不存在| <a href="#error_404">错误代码</a>
409 |冲突请求|错误代码
421 |会话超时| <a href="#error_421">错误代码</a>
422 |表验证错误|<a href="#error_422">错误代码</a>
430 |操作失败:可以根据对应的 error_code 做对应的业务操作| <a href="#error_430">错误代码</a>
500 |服务器脚本错误|<a href="#error_500">错误代码</a>
500 |服务器错误,确认状态并报告问题|<a href="#error_500">错误代码</a>
<a name="error_400" ></a>
301:
{
'status':'FAILS',
"message":"错误内容",
"data":[]
}
<a name="error_500" ></a>
500:
{
"message":"Undefined variable:users",
}
<a name="error_430" ></a>
{
"status": "FAILS",
"message": "操作失败",
"error_code": 10430,
"errors": []
}
<a name="error_401" ></a>
401:
{
"message":"Failed to authenticate because of bad credentials or an invalid authorization header.",
}
......@@ -68,6 +73,7 @@ stateCode | 含义 |返回内容|
<a name="error_403" ></a>
403:
{
"message":"Failed to authenticate because of bad credentials or an invalid authorization header.",
}
......@@ -75,6 +81,7 @@ stateCode | 含义 |返回内容|
<a name="error_422" ></a>
422
{
"message": "Could not create new user.",
"errors": {
......@@ -88,33 +95,60 @@ stateCode | 含义 |返回内容|
}
### 签名方式:
### 2.4签名方式:
<a name="sign_type"></a>
加密签名规则:MD5
```
如免登签名为:
md5(app_id=1&biz_content={"mobile":"13333333333"}&datetime=2017-04-11 12:00:00&app_secret=1234567);
明文:$str =
1:获取到明文数组;追加 app_id, datetime 数据,
2:按KEY顺序排列:(多维数据,递归排序)
3: 转成 $key=$val ,并用 & 连接 (http_build_query)
4: 添加 &app_secret=秘钥
md5($str);
```
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|app_id |是|string |接口id:花样菜场另行提供|
|app_secret |是|string |接口秘钥:花样菜场另行提供 |
|biz_content|是|string |具体业务参数 json 字符串|
|datetime|是|datetime|格式为: 2017-04-11 12:00:00, 生成请求时间,|
|app_id |是|string |接口id:另行提供|
|app_secret |是|string |接口秘钥:另行提供 |
|datetime|否|datetime|生成请求时间搓,|
|biz_content|是|业务数组|生成请求时间搓,|
**备注**
1:注意加密顺序:app_secret,拼接在加密传最后,其他按KEY顺序排列。
2:加密后 sign 全
1:注意加密顺序: 按KEY顺序排列。app_secret,拼接在加密传最后
2:加密后 sign 全
3:注意datetime 时间,目前定义签名有效期为5分钟。
**例子**
##3 接口
```
业务数据:
array(12) {
["account_type"] => string(1) "2"
["bank_type"] => int(1)
["belong_type"] => string(1) "c"
["enter_prise_name"] => string(22) "测试公司1552964283"
["business_licence"] => string(1) "1"
["account_name"] => string(44) "虚拟户账户名称-测试公司1552964283"
["account_sn"] => string(14) "zc201901220008"
["belong_id"] => string(1) "1"
["sys_member"] => int(5)
["op_user"] => string(1) "1"
["open_user_id"] => string(1) "1"
}
签名明文:app_id, app_secret,
account_name=虚拟户账户名称-测试公司1552964283&account_sn=zc201901220008&account_type=2&app_id=platform&bank_type=1&belong_id=1&belong_type=c&business_licence=1&enter_prise_name=测试公司1552964283&op_user=1&open_user_id=1&sys_member=5&app_secret=app_secret
签名密文:E4481C7A716433756FDD6F488A42BFB1
```
##tradesCheckCode
##交易验证
**简要描述:**
13、交易验证
交易号+验证码:
验证成功后,在进行扣款;
......@@ -19,7 +17,7 @@
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|trans_no |是|string(10) |业务交易号|
|trans_sn |是|string(10) |业务交易号|
|code |是|string(10) |验证码|
|op_user |是|int | 操作者|
......
##交易
**简要描述:**
1. 出现账户必须为虚拟户
2. 入金账户可以是虚拟户也可以是实体账户
3. 如果同时填写了入金虚拟户编号,和实体账户, 虚拟户编号 优先于实体账户
4. 虚拟户之间交易不需要验证交易,否则需要验证交易。
**请求URL:**
- ` /api/trades/pay`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|subject |是|string(60) |交易名称|
|out_trade_no |是|string(60) |外部交易号,唯一|
|trade_type |是|string(10) |交易类型:1交易|
|out_account_sn |是|string(60) |出金账户 |
|in_account_sn |否|string(60) |入金虚拟户编号-优先级大于下面的账户 |
|amount |是|int |出金金额 |
|bank_no |否|string |入金行号|
|bank_Name |否|string |入金行名|
|bank_account_no |否|string |入金户号|
|bank_account_name |否|string |入金户名|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
'has_code':'验证码'
'trans_sn':'交易编号'
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | null, |
|--has_code|是|string | 验证码,需要发送短信 |
|--trans_sn|是|string | 虚拟交易号|
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##提现
**简要描述:**
1. 出现账户必须为虚拟户
2. 入金账户,必须在出金账户的白名单中
3. 如果同时填写了入金虚拟户编号,和实体账户, 虚拟户编号 优先于实体账户
4. 虚拟户之间交易不需要验证交易,否则需要验证交易。
**请求URL:**
- ` /api/trades/withdrawCash`
**请求方式:**
- POST
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|subject |是|string(60) |交易名称|
|out_trade_no |是|string(60) |外部交易号,唯一|
|trade_type |是|string(10) |交易类型:15交易|
|out_account_sn |是|string(60) |出金账户 |
|amount |是|int |出金金额 |
|bank_no |否|string |入金行号|
|bank_Name |否|string |入金行名|
|bank_account_no |否|string |入金户号|
|bank_account_name |否|string |入金户名|
|op_user |是|int | 操作者|
**返回示例**
```
{
'status':'SUCCESS',
'message':'操作成功',
'data':
{
'has_code':'验证码'
'trans_sn':'交易编号'
}
}
```
**返回参数说明**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|status_code|是|int |状态码|
|message|是|string |提示消息|
|data|是|obj | null, |
|--has_code|是|string | 验证码,需要发送短信 |
|--trans_sn|是|string | 虚拟交易号|
**备注**
- 更多返回错误代码请看首页的错误代码描述
***************
##tradesRefund
##交易退款
**简要描述:**
1. 结息退款,只支持,原路退款和全额非原路退款;
2. 全额非原路退款,会自动绑定白名单,所以处理业务上可能会相对比较慢;
3. 可退款到虚拟账户。 虚拟户编号的优先级 》 实体账户
12、交易退款
**请求URL:**
......@@ -17,15 +19,16 @@
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|orgins_no |是|string(10) |源交易号|
|business_sn |是|string(10) |业务交易号|
|business_id |是|string(10) |业务交易ID|
|business_type |是|string(10) |业务交易类型|
|account_no |否|string(60) |出金账户 |
|subject |是|string(10) |业务交易号|
|out_trade_no |是|string(60) |外部交易号,唯一|
|amount |否|string |退款金额 |
|is_interest |否|string |是否解析, 1,0 |
|refund_type |是|string |退款类型:0:部分退款,1:全额非原路退款,2 全额退款原路|
|in_account_sn |否|string |入金虚拟账户|
|bank_no |否|string |入金行号|
|bank_Name |否|string |入金行名|
|bank_Account_no |否|string |入金户号|
|bank_Account_name |否|string |入金户名|
|bank_name |否|string |入金行名|
|bank_account_no |否|string |入金户号|
|bank_account_name |否|string |入金户名|
|op_user |是|int | 操作者|
......
##引言
### 文档目的
文档分为两个部分:
1. 虚拟子账户内部业务文档
2. 虚拟子账户和银行的外部接口
目前实行的是中信银行的业务
site_name: My Docs
site_name: 虚拟子账户api文档
site_author: honest_dong
repo_url: 'http://gitlab.ecrrc.cn/virtualAccount/virtialAccount'
repo_name: '源码'
#theme: readthedocs #mkdocs
copyright: Copyringht 2019 ecrrc Inc .All rights reserved.
nav:
- 首页: index.md
- 业务服务API:
- 引言: ecrrc/index.md
- 账户管理: ecrrc/account/account.md
- 冻结管理: ecrrc/account/freeze.md
- 账户白名单: ecrrc/account/whitelist.md
- 交易管理:
- 交易: ecrrc/trades/tradesPay.md
- 提现: ecrrc/trades/tradesPay.md#_2
- 退款: ecrrc/trades/tradesRefund.md
- 交易验证: ecrrc/trades/tradesCheckCode.md
- 银行对接API文档: ecrrc/account/accountOpen.md
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment