支付宝支付

支付宝支付

支付宝统一下单

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");
			//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
			AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
			//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
			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());//就是orderString 可以直接给客户端请求,无需再做处理。
				result = response.getBody();
			} catch (AlipayApiException e) {
				e.printStackTrace();
			}
		} catch (FdServiceException e) {
			logger.error("获取支付宝订单参数失败错误信息 {}", e.getExceptionInfo());
			throw new FdServiceException(ErrorCode.QUERY_EXCEPTION, "获取支付宝订单参数失败错误信息失败");
		}
		return result;
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值