From 2ab237baaf6b8083e1f8632c916a05b4ec93cd10 Mon Sep 17 00:00:00 2001
From: chengkun <2500338766@qq.com>
Date: Wed, 29 Jun 2022 18:18:30 +0800
Subject: [PATCH] =?UTF-8?q?feature1.0.0-img:=E6=B7=BB=E5=8A=A0=E6=94=AF?=
=?UTF-8?q?=E4=BB=98=E5=AE=9D=E6=8F=90=E7=8E=B0=E5=8A=9F=E8=83=BD=EF=BC=8C?=
=?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8F=90=E7=8E=B0=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
bnyer-services/bnyer-img/pom.xml | 8 ++
.../img/controller/CreatorMiniController.java | 109 ++++++++++++++++++
.../com/bnyer/img/domain/WithdrawLog.java | 10 +-
.../java/com/bnyer/img/dto/WithdrawDto.java | 6 +-
.../com/bnyer/img/dto/WithdrawPageDto.java | 7 +-
.../service/impl/WithdrawLogServiceImpl.java | 16 ++-
.../java/com/bnyer/img/vo/WithdrawLogVo.java | 6 +-
.../bnyer/img/mapper/WithdrawLogMapper.xml | 7 +-
8 files changed, 160 insertions(+), 9 deletions(-)
diff --git a/bnyer-services/bnyer-img/pom.xml b/bnyer-services/bnyer-img/pom.xml
index 28c0cfe..f70bda5 100644
--- a/bnyer-services/bnyer-img/pom.xml
+++ b/bnyer-services/bnyer-img/pom.xml
@@ -109,6 +109,14 @@
weixin-java-pay
4.2.0
+
+
+
+ com.alipay.sdk
+ alipay-sdk-java
+ 4.23.21.ALL
+
+
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
index 50e281f..1cf35f6 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/CreatorMiniController.java
@@ -1,6 +1,15 @@
package com.bnyer.img.controller;
+import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON;
+import com.alipay.api.AlipayApiException;
+import com.alipay.api.AlipayClient;
+import com.alipay.api.CertAlipayRequest;
+import com.alipay.api.DefaultAlipayClient;
+import com.alipay.api.domain.AlipayFundTransUniTransferModel;
+import com.alipay.api.domain.Participant;
+import com.alipay.api.request.AlipayFundTransUniTransferRequest;
+import com.alipay.api.response.AlipayFundTransUniTransferResponse;
import com.bnyer.common.core.web.controller.BaseController;
import com.bnyer.common.core.web.domain.AjaxResult;
import com.bnyer.img.domain.TiktokImg;
@@ -249,4 +258,104 @@ public class CreatorMiniController extends BaseController {
log.info("小程序艺术家数据参数为:{}", JSON.toJSON(param));
return AjaxResult.success(creatorService.login(param));
}
+
+ //@TokenCheck
+ @ApiOperation(value="支付宝异步回调")
+ @GetMapping(value = "/callback")
+ public AjaxResult alipayCallback(){
+ log.info("支付宝回调了!");
+ return AjaxResult.success();
+ }
+
+ //@TokenCheck
+ @ApiOperation(value="提现")
+ @GetMapping(value = "/withdraw")
+ public AjaxResult withdraw() throws AlipayApiException {
+
+ String sandboxGatewayUrl = "https://openapi.alipaydev.com/gateway.do";
+ String gatewayUrl = "https://openapi.alipay.com/gateway.do";
+
+ String sandboxPrivateKey = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC1rI3A7cuj7vjBZpU+AYqTsQJxXGMvUlPdVZmuJJR/o3NY+jxIiSDOA/HjChJ2v8DlZXDmpzgJ+DQt1+GZkNr/yGt335jd9JBZuNEUO19iFjnlWnwPu6enp829IqBJv65km0ATA73jVnj2gW9E9bRkpwbrXdf9FSYvb14+6P1sKGavCVHLjafWIbBavaOXJlaEjR+U62nghHoiIP1RL49xsvBV8VtRXQfnCUPaOGU4PZbvYne3FzTbjIDwqbYWsfTfO4dIo1z2jkGNzPi8ZGrVe8PJsXBRl7A9qK5EI2wBwDpgWmrkUs2avfMkSYWfrrTJ4WnurCiNomxRszylGcHNAgMBAAECggEAdlABoPs7+27NoWXlG5R1YumL5bd9AHxlEWeFxdscumL/45pTWAm1y3TWOj18+Mi4HqyJcizEWfnCQXit+wxTEvC6zD5Zl3KF72hlAQAJhh9jZPIgiT50WML3QY0jReQG9o4ElF2DdGIENMTmacp5yHLeFrnux2rWi13DysSBBcXQ8rYS88jyT6L0xqWb8M7TD0MzZYyRBOFm4Nv91FBoj2vWtxNz5T9hJfX8AGO5HChR4NgvclM1Jbq+k9/6oeEEBU5m3AuIo2DEy1mQbVvA80hJMsi38Na+5CyfdXjm9wJ7v95/opcjgWAPrHrDdBngVeMuvmm2qj31b7ZHp3z+AQKBgQDZV2JJMA4dy6zyLbc2ImNLfU8iDyzuXAMKRgwrU0/wLnJRrvFJsIxzRnQxM9yF+Yo9bxqAv0nUisYIInhmGMVo8L8+nCyTHK1KYbOa2O+9grQiY/8p+lGlesrMKUnbUgbwS2Sj//hLmgor+f/pnp99xnmkkwV1CfAj69iaDL2LnQKBgQDV/RAJ8JmnjFHhGW7T0U7xtCR+jLO+EGpVaAlPznmTpr83IZbFnaDMEN9XhKCHk7iwDx6+bTSko/tfnyDEP5f2LjHuHH6hQyZBPIUSB9nvgB5Dtky43yzNtO4UkpH+MFCeFun5v+RtmyUELMSksjxwKjRBV3lG5pDW1NIxjk2v8QKBgHCEFJXfEu/J6ZbWo+qakt0Z2kW/pXsgl1JSQSqMzu2Anh47ex6zD4L+DlkKiDezoCV9xzKv1QD7dtnvPnVcjZZuTBOVtl3SksPXIKwhcruhVrAXJJoOxQXuM97N4TZxmLX90fQ1J827yVhK7Hl9bQQoJAFXO5QDuRZfmprlzZrhAoGBAIGewuJifZDCLK7fiwR/mwRKDHkjnZUZuG93j3xqI7bOoLEyhXO64bX62m7XBa5aSttKrWLIH8VDF3d6moyFwPT8Un5bgFEKrdeCY1DitJ6gyrRVbu/lL+yDFlwb1JdWiN7aHmyMUkAaZDe9LnhdBsMirXiPFgVekImxbIlcG67hAoGBAJIhIcvXkYbXZSP6SLFoT0NsG2hPYNwSr3+4u4acT3mBD519EA9kBvmAom56l7t6xoIVjgREuz0Kaa+V24+Za5o14LJA0iBxgKBIqD5ABMY6XkgPMY5p1/eVUWoXPmx4KsS/ys0MX60Kf0xgLD0gW0j+x1vsA8w1GiJXTAT0JZWP";
+ String privateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCGq3UKNbNuIazHbD9slLNJsStw2347rYwR1NmFLCi/d62yNLeTZvmrY4aW3GsDsQiK5vFdLRxaT8tIkGO11GilBRn00xkNKnwPkMA8GUdtr7GaudH+YBqk2snDeBhtdlYLq1V79USGZKdnpsPoUIXVIpyhnBlULzcJP7hf7NSauRVBnDf+MuEQOjhRAc6i8RN7nY2Oz5x6ZuIPhJ8qWjbZQoN6sJ00KU5oYZaN34/NGmPIfpR4QwbZbABm0Y0dCwkXzzNoV3cPYsFqKWNN8gxY7mI7YQqYsVb25fvALDjOl0XUGv1D7lMOC4mX3iz4q8b13ZNK+Tb3y4atwO6jK0EdAgMBAAECggEAUb4ZGM1n0F2YZqQKC3pnKT/lQme4w7if4OL19aPMSAv43sao90v2GFYdB81bF66JpOZxc0FCiH8OwUkDfQclTaU/ECBigF9dVoViahheBvIyN9y63lCvW4mCFqf7C9ZcfFDPXqKNqZXHF19eYtEdqzWLJX1+0l6mZXLME03J7u+tPX+OOnjf/K3wBp90RzoS02Ofp8fxiRyiDwFwlcxfRVbffLPVIW8JMqyOuI95U0l90F3N48+twJj8UeZlWHQeTGSDZ5jgfC6T5SXkDxOi6e7ZemZUG43rqsEHyb84fBfpr4ZFh9SkjXSnRih5w0VRws50dE2u1wAeCLG8K5KD8QKBgQDX/rpHjIJl0aD2LsI1kcUW82Yzm7qOJWApRCTe/+mZtrNGotzz/Mc2S0xV8s95ahgsH9AYqytu58UdM0CQhJ5+57fPDQcYWq9QvHB741ljAd1371qTLvRsMQg6E/nmObFvAON7ynNuh+TfkM9e7HQS6dpA0FkVqrREdD7hgUeUewKBgQCfnL3GKdMdH5FTTMBJgiLwHYBpgFQxDPzD5DEvz9lgCgosk76k4jQGi/3/raJWxkAED5K4O2J90IE/VnRXV4Uhi4h54D3ceO9dtXWBN1IxqEuO7pw9ldiRjFrlTo4aSgnq2wrjiVKn92Fm2YXIcAyhibUs7hamWt6LGAULbM5JRwKBgG11jXlM35gxz9xyfcEgCj1DQ/vLY5M9panD+tt33S4kxF17k3WiGGKPbjPwROxGs9FInfCibfRaSC4wFvwl+Rxe2Wt4MqxI6KeFl4tw/4+JFm79QW1tUjix8HVeQjpF6oFSdfX59t2AyJ/zhuOX+IrNL+nArCSqyYgXUPZ+yYOZAoGATbLAkxnDInc+iF1hcac/GMJTw4fr9CDNXxLTeuHkgKMChua5NIzFJLa7Q96jmzhQ62klVDfcX0DD2jBc3DPHpCfHnQSzOINKisSN2gQzJ+c0OPUg673pOhkoGl5eQJ/wKfrNVyx/JzL+oFGdlZAuJejiYGfacMrlcLKVqhUiansCgYEAtPCz8J3fYipscjdWKQIXsejr110KF0zsh8X7ZYKxhAgRZ5ck3wbMbffYIfa7wCm5nIJMY640P3Jh6Rb5W5/4/i04gHbE1Loi714aGCXoY6gm5oVoKIFP8h3g3MyQl7mZ2huAA/KnLsThlmfQ0l0n6Pd8xEcqJ+Ggi/GS2MQQrIw=";
+
+ String sandboxAppId = "2021000121609470";
+ String appId = "2021003135690045";
+
+ String sandboxCertPath = "D:/sandbox/appCertPublicKey_2021000121609470.crt";
+ String certPath = "D:/onlineKey/appCertPublicKey_2021003135690045.crt";
+
+ String sandboxAlipayPublicCertPath = "D:/sandbox/alipayCertPublicKey_RSA2.crt";
+ String alipayPublicCertPath = "D:/onlineKey/alipayCertPublicKey_RSA2.crt";
+
+ String sandboxRootPath = "D:/sandbox/alipayRootCert.crt";
+ String rootPath = "D:/onlineKey/alipayRootCert.crt";
+
+ String sandboxIdentify = "yglaxq2770@sandbox.com";
+ String identify = "19983455096";
+
+ String sandboxName = "yglaxq2770";
+ String name = "权煜航";
+
+
+ //构造client
+ CertAlipayRequest certAlipayRequest = new CertAlipayRequest();
+ //设置网关地址
+ //certAlipayRequest.setServerUrl(sandboxGatewayUrl);
+ certAlipayRequest.setServerUrl(gatewayUrl);
+ //设置应用Id
+ //certAlipayRequest.setAppId(sandboxAppId);
+ certAlipayRequest.setAppId(appId);
+ //设置应用私钥
+ //certAlipayRequest.setPrivateKey(sandboxPrivateKey);
+ certAlipayRequest.setPrivateKey(privateKey);
+ //设置请求格式,固定值json
+ certAlipayRequest.setFormat("json");
+ //设置字符集
+ certAlipayRequest.setCharset("UTF8");
+ //设置签名类型
+ certAlipayRequest.setSignType("RSA2");
+ //设置应用公钥证书路径
+ //certAlipayRequest.setCertPath(sandboxCertPath);
+ certAlipayRequest.setCertPath(certPath);
+ //设置支付宝公钥证书路径
+ //certAlipayRequest.setAlipayPublicCertPath(sandboxAlipayPublicCertPath);
+ certAlipayRequest.setAlipayPublicCertPath(alipayPublicCertPath);
+ //设置支付宝根证书路径
+ //certAlipayRequest.setRootCertPath(sandboxRootPath);
+ certAlipayRequest.setRootCertPath(rootPath);
+ //构造client
+ AlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest);
+ AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest();
+ AlipayFundTransUniTransferModel model = new AlipayFundTransUniTransferModel();
+ model.setOutBizNo(IdUtil.getSnowflakeNextIdStr());
+ model.setTransAmount("0.9");
+ model.setProductCode("TRANS_ACCOUNT_NO_PWD");
+ /** 场景码,单笔无密转账到支付宝账户固定为:DIRECT_TRANSFER **/
+ model.setBizScene("DIRECT_TRANSFER");
+ /** 转账业务的标题,用于在支付宝用户的账单里显示 **/
+ model.setOrderTitle("bnyer提现打款");
+ Participant participant = new Participant();
+ /** 参与方的唯一标识,收款支付宝账号或者支付宝吧账号唯一会员ID **/
+ //participant.setIdentity(sandboxIdentify);
+ participant.setIdentity(identify);
+ /** 参与方的标识类型:ALIPAY_USER_ID 支付宝的会员ID ALIPAY_LOGON_ID手机号登录 **/
+ participant.setIdentityType("ALIPAY_LOGON_ID");
+ /** 参与方真实姓名,如果非空,将校验收款支付宝账号姓名一致性。当identity_type=ALIPAY_LOGON_ID时,本字段必填 **/
+ //participant.setName(sandboxName);
+ participant.setName(name);
+ model.setPayeeInfo(participant);
+ /** 业务备注 **/
+ model.setRemark("提现打款");
+ request.setBizModel(model);
+ log.info("支付宝提现入参为:{}",JSON.toJSONString(request));
+ AlipayFundTransUniTransferResponse response = null;
+ try {
+ response = alipayClient.certificateExecute(request);
+ } catch (AlipayApiException e) {
+ e.printStackTrace();
+ }
+ /** 获取接口调用结果,如果调用失败,可根据返回错误信息到该文档寻找排查方案:https://opensupport.alipay.com/support/helpcenter/107 **/
+ log.info("支付宝提现响应结果为:{}",response.getBody());
+ return AjaxResult.success();
+ }
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java
index 38e430e..422d295 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java
@@ -56,11 +56,19 @@ public class WithdrawLog extends BaseDomain {
@Desensitized(type = SensitiveTypeEnum.BANK_CARD)
private String bankNo;
+ /**
+ * 支付宝手机号(加密)
+ */
+ @TableField(value = "phone")
+ @ApiModelProperty(value="支付宝手机号(加密)")
+ @Desensitized(type = SensitiveTypeEnum.MOBILE_PHONE)
+ private String phone;
+
/**
* 渠道(0->微信;1->银行卡)
*/
@TableField(value = "channel")
- @ApiModelProperty(value="渠道(0->微信;1->银行卡)")
+ @ApiModelProperty(value="渠道(0->微信;1->银行卡;2->支付宝)")
private String channel;
/**
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java
index eee9eb9..84738dc 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java
@@ -32,8 +32,12 @@ public class WithdrawDto implements Serializable {
@Desensitized(type = SensitiveTypeEnum.BANK_CARD)
private String bankNo;
+ @ApiModelProperty(value="支付宝手机号(加密)")
+ @Desensitized(type = SensitiveTypeEnum.MOBILE_PHONE)
+ private String phone;
+
@NotBlank(message = "渠道不能为空!")
- @ApiModelProperty(value="渠道(0->微信;1->银行卡)")
+ @ApiModelProperty(value="渠道(0->微信;1->银行卡;2->支付宝)")
private String channel;
public WithdrawLog extractParam(){
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawPageDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawPageDto.java
index 4d77bde..d92c800 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawPageDto.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawPageDto.java
@@ -1,5 +1,7 @@
package com.bnyer.img.dto;
+import com.bnyer.common.core.annotation.Desensitized;
+import com.bnyer.common.core.enums.SensitiveTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
@@ -14,7 +16,7 @@ public class WithdrawPageDto extends BasePageDto {
@ApiModelProperty(value="流水号")
private String orderId;
- @ApiModelProperty(value="渠道(0->微信;1->银行卡)")
+ @ApiModelProperty(value="渠道(0->微信;1->银行卡;2->支付宝)")
private String channel;
@ApiModelProperty(value="状态(0->待审核;1->提现中;2->提现成功;3->提现失败)")
@@ -22,4 +24,7 @@ public class WithdrawPageDto extends BasePageDto {
@ApiModelProperty(value="银行卡(加密)")
private String bankNo;
+
+ @ApiModelProperty(value="支付宝手机号(加密)")
+ private String phone;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java
index 9707a83..fe47458 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java
@@ -58,6 +58,9 @@ public class WithdrawLogServiceImpl implements WithdrawLogService {
if(StringUtils.isNotBlank(withdrawLog.getBankNo())){
withdrawLog.setBankNo(Sm4Util.sm4Encryption(withdrawLog.getBankNo()));
}
+ if(StringUtils.isNotBlank(withdrawLog.getPhone())){
+ withdrawLog.setPhone(Sm4Util.sm4Encryption(withdrawLog.getPhone()));
+ }
//生成订单id
withdrawLog.setOrderId(IdUtil.getSnowflakeNextIdStr());
return withdrawLogMapper.insert(withdrawLog);
@@ -78,13 +81,19 @@ public class WithdrawLogServiceImpl implements WithdrawLogService {
if(StringUtils.isNotBlank(params.getBankNo())){
wrapper.eq(WithdrawLog::getBankNo, Sm4Util.sm4Encryption(params.getBankNo()));
}
+ if(StringUtils.isNotBlank(params.getPhone())){
+ wrapper.eq(WithdrawLog::getPhone, Sm4Util.sm4Encryption(params.getPhone()));
+ }
wrapper.orderByDesc(WithdrawLog::getCreateTime);
List withdrawLogs = withdrawLogMapper.selectList(wrapper);
for (WithdrawLog withdrawLog : withdrawLogs) {
if(StringUtils.isNotBlank(withdrawLog.getBankNo())){
withdrawLog.setBankNo(Sm4Util.sm4Decrypt(withdrawLog.getBankNo()));
- DesensitizedUtils.getJsonNoCopy(withdrawLog);
}
+ if(StringUtils.isNotBlank(withdrawLog.getPhone())){
+ withdrawLog.setPhone(Sm4Util.sm4Decrypt(withdrawLog.getPhone()));
+ }
+ DesensitizedUtils.getJsonNoCopy(withdrawLog);
}
return withdrawLogs;
}
@@ -94,8 +103,11 @@ public class WithdrawLogServiceImpl implements WithdrawLogService {
WithdrawLog withdrawLog = withdrawLogMapper.selectById(id);
if(StringUtils.isNotBlank(withdrawLog.getBankNo())){
withdrawLog.setBankNo(Sm4Util.sm4Decrypt(withdrawLog.getBankNo()));
- JSONObject.parseObject(DesensitizedUtils.getJsonNoCopy(withdrawLog), WithdrawLog.class);
}
+ if(StringUtils.isNotBlank(withdrawLog.getPhone())){
+ withdrawLog.setPhone(Sm4Util.sm4Decrypt(withdrawLog.getPhone()));
+ }
+ JSONObject.parseObject(DesensitizedUtils.getJsonNoCopy(withdrawLog), WithdrawLog.class);
return withdrawLog;
}
diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java
index 115bc7d..24d0a11 100644
--- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java
+++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java
@@ -33,7 +33,11 @@ public class WithdrawLogVo implements Serializable {
@Desensitized(type = SensitiveTypeEnum.BANK_CARD)
private String bankNo;
- @ApiModelProperty(value="渠道(0->微信;1->银行卡)")
+ @ApiModelProperty(value="支付宝手机号(加密)")
+ @Desensitized(type = SensitiveTypeEnum.MOBILE_PHONE)
+ private String phone;
+
+ @ApiModelProperty(value="渠道(0->微信;1->银行卡;2->支付宝)")
private String channel;
@ApiModelProperty(value="状态(0->待审核;1->提现中;2->提现成功;3->提现失败;4->审核拒绝)")
diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml
index b925d2c..a9681ab 100644
--- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml
+++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml
@@ -9,6 +9,7 @@
+
@@ -19,12 +20,12 @@
- id, creator_id, amt, bank_no, `status`, create_time, update_time, sort,is_show,order_id,channel,reason
+ id, creator_id, amt, bank_no, phone, `status`, create_time, update_time, sort,is_show,order_id,channel,reason