支付宝支付
支付宝统一下单
public String getALiAppPay(Order order) throws FdServiceException {
String result = "";
try {
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", FgZhifubaoConfig.APP_ID, FgZhifubaoConfig.APP_PRIVATE_KEY, "json", FgZhifubaoConfig.CHARSET, FgZhifubaoConfig.ALIPAY_PUBLIC_KEY, "RSA2");
AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
model.setBody(ProductType.activity.name().equals(order.getOrderCategory()) ? "活动报名" : order.getOrderName().length() > 50 ? order.getOrderName().substring(0, 50) : order.getOrderName());
model.setSubject(order.getOrderCategory());
model.setOutTradeNo(order.getOrderNo());
model.setTotalAmount(new BigDecimal(order.getRealAmt().toString()).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP).toString());
model.setProductCode("QUICK_MSECURITY_PAY");
request.setBizModel(model);
request.setNotifyUrl(fgProperties.getDomainUrl() + FgZhifubaoConfig.zhifubaoOrderNotifyCallBack);
try {
AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
System.out.println(response.getBody());
result = response.getBody();
} catch (AlipayApiException e) {
e.printStackTrace();
}
} catch (FdServiceException e) {
logger.error("获取支付宝订单参数失败错误信息 {}", e.getExceptionInfo());
throw new FdServiceException(ErrorCode.QUERY_EXCEPTION, "获取支付宝订单参数失败错误信息失败");
}
return result;
}