对接中国银联刷卡支付系统架构小demo

package com.vagun.Service.zxUnionPay;


import org.apache.log4j.Logger;


import net.sf.json.JSONObject;


public class TestzxUnionPayService {

private static Logger logger = Logger.getLogger(TestzxUnionPayService.class.getName());



/**
*刷卡支付测试 ,每隔5秒刷新请求一次服务器
* @throws  Exception 
*/
public static void TestSleep()   { 
int i=0;
JSONObject resC2B;
JSONObject resQuery;
try {
System.out.println("=============请求前休眠================");
//执行刷卡接口
 resC2B = TestzxUnionPayService.C2B();
 
 //调用刷卡接口成功后调用;轮询查询订单支付状态
 if ("00".equals(resC2B.getString("respCode"))) {
//调用订单查询接口
for(i=0 ;i<12;i++){
Thread.sleep(5000); //5 秒循环一次
resQuery =  TestzxUnionPayService.queryOreder();
if("00".equals(resQuery.getString("origRespCode"))){ //00支付成功
 i=12;
 } 

 }

System.out.println("================请求后休眠,返回给POS打印小票==============");
} catch ( Exception e) {
e.printStackTrace();
}
 
}

/**
* 查询订单状态
* @return
*/

public static JSONObject queryOreder(){
JSONObject responseJson = new JSONObject();
try {
Thread.sleep(1000);
System.out.println("正在查询订单状态");
responseJson.put("origRespCode", "00"); //交易应答码

} catch (InterruptedException e) {
e.printStackTrace();
}
return responseJson;

}
 

/**
* 银联刷卡消费
* @return
*/
public static JSONObject C2B(){
JSONObject responseJson = new JSONObject();
try {
Thread.sleep(1000);
System.out.println("刷卡支付成功");
responseJson.put("respCode", "00");
} catch (InterruptedException e) {
e.printStackTrace();
}
return responseJson;

}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值