Procházet zdrojové kódy

Merge branch 'dev' into 'mp-server-test'

银行卡绑定认证

See merge request quanshu/mp-server!1049
Evan před 2 roky
rodič
revize
ac14700596

+ 8 - 4
mp-admin/src/main/java/com/qs/mp/web/controller/api/channel/ChannelWithdrawController.java

@@ -34,6 +34,7 @@ import com.qs.mp.channel.service.IChannelBankCardService;
 import com.qs.mp.channel.service.IChannelCartService;
 import com.qs.mp.channel.service.IChannelService;
 import com.qs.mp.channel.service.IChannelWithdrawService;
+import com.qs.mp.common.constant.YsPayMethodConstants;
 import com.qs.mp.common.constant.YsServerApiConstants;
 import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.core.redis.RedisCache;
@@ -131,7 +132,7 @@ public class ChannelWithdrawController extends BaseApiController {
 
     Map<String, String> mapData = new HashMap<>();
     mapData.put("partner_id", partnerId);
-    mapData.put("method", "ysepay.authenticate.three.key.element.precise");
+    mapData.put("method", YsPayMethodConstants.BANK_CARD_AUTH_METHOD);
     mapData.put("timestamp", DateUtil.getDateNow());
     mapData.put("sign_type", "RSA");
     mapData.put("charset", "utf-8");
@@ -167,6 +168,7 @@ public class ChannelWithdrawController extends BaseApiController {
     YsCallLog ysCallLog = new YsCallLog();
     ysCallLog.setBizId(tradeNo);
     ysCallLog.setBizType(YsCallBizTypeEnum.BANK_CARD_AUTH);
+    ysCallLog.setInterfaceId(YsPayMethodConstants.BANK_CARD_AUTH_METHOD);
     ysCallLog.setReqJson(JSONObject.toJSONString(mapData));
     ysCallLog.setResJson(result);
     ysCallLogService.save(ysCallLog);
@@ -179,11 +181,13 @@ public class ChannelWithdrawController extends BaseApiController {
     // 解析结果
     JSONObject jsonObject = JSON.parseObject(result, Feature.OrderedField);
     // 加签内容
-    JSONObject content = JSON.parseObject(
-        (String) jsonObject.get("ysepay_authenticate_three_key_element_precise_response"));
+    String content = JSONObject.toJSONString(
+        jsonObject.get("ysepay_authenticate_three_key_element_precise_response"),
+        SerializerFeature.WriteMapNullValue);
+    JSONObject contentJsonObject = JSON.parseObject(content);
 
     // 校验结果
-    String orderStatus = (String) content.get("order_status");
+    String orderStatus = (String) contentJsonObject.get("order_status");
     if (StringUtils.isNotBlank(orderStatus) && !"SUCCESS".equals(orderStatus)) {
       return AjaxResult.error("绑卡认证失败,请核实信息正确性");
     }

+ 2 - 0
mp-common/src/main/java/com/qs/mp/common/constant/YsPayMethodConstants.java

@@ -16,4 +16,6 @@ public class YsPayMethodConstants {
 
     public static String DIVISION_QUERY_METHOD = "ysepay.single.division.online.query";
 
+    public static String BANK_CARD_AUTH_METHOD = "ysepay.authenticate.three.key.element.precise";
+
 }