-
Notifications
You must be signed in to change notification settings - Fork 0
trade.cancel
李春寅 edited this page Jan 31, 2019
·
1 revision
SDK为交易查询接口 trade.cancel 编写的相关操作类有
- asbamboo.java.sdk.model.TradeCancelRequest 用来生成接口请求参数。 接口请求
- asbamboo.java.sdk.model.TradeCancelResponse 用来解析接口返回的响应值。接口的response响应值
使用SDK请求 trade.cancel 接口,你需要创建一个TradeCancelRequest实例,调用其中的set方法,设置需要取消交易编号等信息。
TradeCancelRequest 包含如下可以被用来设置参数的方法:
- public void setInTradeNo(String in_trade_no) 交易编号(聚合平台)
- public void setOutTradeNo(String out_trade_no) 交易编号(商户)
- public void setThirdPart(String third_part) 第三方平台需要的其他参数,json格式传入
接口请求时 in_trade_no 或者 out_trade_no 必须有一个被设置,如果通知设置了这两个参数,那么系统以in_trade_no为准。
代码示例:
try{
TradeCancelRequest request = new TradeCancelRequest();
request.setInTradeNo(in_trade_no);
request.setOutTradeNo(out_trade_no);
TradeCancelResponse response = (TradeCancelRequest) request.post();
// ...
}catch(Exception e) {
// ...
}
TradeCancelResponse.post() 方法会返回一个 TradeCancelResponse 结果。TradeCancelResponse 是 trade.cancel 响应值的解析类,它会把响应只json转换为 TradeCancelResponse 对象。TradeCancelResponse 具有如下可用的方法获取响应结果中的字段:
- public boolean getIsSuccess() HTTP code等于200,并且Response Json中code等于"0",并且Response Json中Sign值有效时返回true,其他情况都返回false。
- public String getMessage() HttpCode等于200时,message等于response json中的message。否则提示异常信息
- public String getDataCode() Response Json中的code
- public HashMap<String, Object> getDecodedData() Response Json,经过json decode后的结果
- public Integer getHttpCode() Http code
- public String getHttpBody() Http body应该是一个json
- public Map<String, List<String>> getHttpHeaders() http headers
- public String getCancelYmdhis() 交易取消时间
- public String getChannel() 支付渠道
- public String getClientIp() 客户ip
- public String getInTradeNo() 交易编号(聚合平台) 唯一
- public String getOutTradeNo() 交易编号(商户) 唯一
- public String getTitle() 交易标题
- public String getTotalFee() 交易金额 单位为分
- public String getTradeStatus() 交易状态 NOPAY[尚未支付] CANCLE[取消支付] PAYFAILED[支付失败] PAYING[正在支付] PAYOK[支付成功-可退款] PAYED[支付成功-不可退款]
response处理示例:
TradeCancelResponse response = (TradeCancelResponse) request.post();
if(response.getIsSuccess()){
if(response.getTradeStatus() == "CANCLE"){
// .....
}
}else{
// 请求失败
// response.getDataCode() //接口响应值code
// response.getMessage() //失败的原因
// ......
}
- SDK 中包含的接口: