下面列出了怎么用com.alipay.api.response.AlipayFundTransToaccountTransferResponse的API类实例代码及写法,或者点击链接到github查看源代码。
public AlipayTransferResult(AlipayFundTransToaccountTransferResponse res){
setSuccess(res.isSuccess());
setCode(res.getCode());
setSub_code(res.getSubCode());
setMsg(res.getMsg());
setSub_msg(res.getSubMsg());
setOut_biz_no(res.getOutBizNo());
setOrder_id(res.getOrderId());
setPay_date(res.getPayDate());
}
/**
* 支付宝提现
*
* @param orderId
*/
public Result deposit(Long orderId) {
// 校验订单信息
Order order = orderService.findOne(orderId);
if (order.getStatus() != OrderStatus.CREATE.getStatus()) {
log.error(ExceptionMessage.ORDER_STATUS_INCORRECTNESS + " orderId: {}", orderId);
throw new ValidateException(ExceptionMessage.ORDER_STATUS_INCORRECTNESS);
}
AlipayFundTransToaccountTransferModel transferModel = new AlipayFundTransToaccountTransferModel();
transferModel.setOutBizNo(1 + RandomUtil.randomNum(15));
transferModel.setAmount(order.getTotalFee().toString());
transferModel.setPayeeAccount("real account");
transferModel.setPayeeRealName("real name");
transferModel.setPayerShowName("from name");
transferModel.setRemark("remark");
transferModel.setPayeeType("ALIPAY_LOGONID");
try {
AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest();
request.setBizModel(transferModel);
AlipayFundTransToaccountTransferResponse response = alipayClient.execute(request);
} catch (AlipayApiException e) {
log.info("ali deposit error message:{}", e.getMessage());
return Result.success(ExceptionMessage.ALI_DEPOSIT_SUCCESS);
}
return Result.error(ExceptionMessage.ALI_DEPOSIT_FAILED);
}
public Class<AlipayFundTransToaccountTransferResponse> getResponseClass() {
return AlipayFundTransToaccountTransferResponse.class;
}
public Class<AlipayFundTransToaccountTransferResponse> getResponseClass() {
return AlipayFundTransToaccountTransferResponse.class;
}
/**
* 支付宝转账,文档:https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer
* @param jsonParam
* @return
*/
@Override
public Map doAliTransReq(String jsonParam) {
String logPrefix = "【支付宝转账】";
BaseParam baseParam = JsonUtil.getObjectFromJson(jsonParam, BaseParam.class);
Map<String, Object> bizParamMap = baseParam.getBizParamMap();
if (ObjectValidUtil.isInvalid(bizParamMap)) {
_log.warn("{}失败, {}. jsonParam={}", logPrefix, RetEnum.RET_PARAM_NOT_FOUND.getMessage(), jsonParam);
return RpcUtil.createFailResult(baseParam, RetEnum.RET_PARAM_NOT_FOUND);
}
JSONObject transOrderObj = baseParam.isNullValue("transOrder") ? null : JSONObject.parseObject(bizParamMap.get("transOrder").toString());
TransOrder transOrder = JSON.toJavaObject(transOrderObj, TransOrder.class);
if (ObjectValidUtil.isInvalid(transOrder)) {
_log.warn("{}失败, {}. jsonParam={}", logPrefix, RetEnum.RET_PARAM_INVALID.getMessage(), jsonParam);
return RpcUtil.createFailResult(baseParam, RetEnum.RET_PARAM_INVALID);
}
String transOrderId = transOrder.getTransOrderId();
String mchId = transOrder.getMchId();
String channelId = transOrder.getChannelId();
PayChannel payChannel = baseService4TransOrder.baseSelectPayChannel(mchId, channelId);
alipayConfig.init(payChannel.getParam());
AlipayClient client = new DefaultAlipayClient(alipayConfig.getUrl(), alipayConfig.getApp_id(), alipayConfig.getRsa_private_key(), AlipayConfig.FORMAT, AlipayConfig.CHARSET, alipayConfig.getAlipay_public_key(), AlipayConfig.SIGNTYPE);
AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest();
AlipayFundTransToaccountTransferModel model = new AlipayFundTransToaccountTransferModel();
model.setOutBizNo(transOrderId);
model.setPayeeType("ALIPAY_LOGONID"); // 收款方账户类型
model.setPayeeAccount(transOrder.getChannelUser()); // 收款方账户
model.setAmount(AmountUtil.convertCent2Dollar(transOrder.getAmount().toString()));
model.setPayerShowName("支付转账");
model.setPayeeRealName(transOrder.getUserName());
model.setRemark(transOrder.getRemarkInfo());
request.setBizModel(model);
Map<String, Object> map = new HashMap<>();
map.put("transOrderId", transOrderId);
map.put("isSuccess", false);
try {
AlipayFundTransToaccountTransferResponse response = client.execute(request);
if(response.isSuccess()) {
map.put("isSuccess", true);
map.put("channelOrderNo", response.getOrderId());
}else {
//出现业务错误
_log.info("{}返回失败", logPrefix);
_log.info("sub_code:{},sub_msg:{}", response.getSubCode(), response.getSubMsg());
map.put("channelErrCode", response.getSubCode());
map.put("channelErrMsg", response.getSubMsg());
}
} catch (AlipayApiException e) {
_log.error(e, "");
}
return RpcUtil.createBizResult(baseParam, map);
}
public Class<AlipayFundTransToaccountTransferResponse> getResponseClass() {
return AlipayFundTransToaccountTransferResponse.class;
}