|
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.qs.mp.channel.service.IChannelOrderService;
|
|
|
import com.qs.mp.common.enums.BizTypeEnum;
|
|
|
+import com.qs.mp.common.exception.ServiceException;
|
|
|
import com.qs.mp.common.utils.DateUtils;
|
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
|
import com.qs.mp.common.utils.StringUtils;
|
|
@@ -59,38 +60,39 @@ public class WalletServiceImpl implements IWalletService {
|
|
|
private static final String PAY_RESOURCE_TYPE = "1017"; //2:微信小程序
|
|
|
|
|
|
@Override
|
|
|
- public JSONObject channelPay(BizTypeEnum bizType, String bizId, String openId, int money) {
|
|
|
+ public JSONObject pay(BizTypeEnum bizType, String bizId, String openId, int money) {
|
|
|
String reqUrl = baseUrl + "/pay/payMoneyCTB";
|
|
|
- JSONObject params = new JSONObject();
|
|
|
- params = buildPayOrderReqData(payShopNo, paySign, money, openId);
|
|
|
+ JSONObject params = buildPayOrderReqData(payShopNo, paySign, money, openId);
|
|
|
String result = OkHttpUtil.postJsonParams(reqUrl, params.toJSONString());
|
|
|
logger.info("request params:" + params.toJSONString() + " result:" + result);
|
|
|
if (StringUtils.isBlank(result)) {
|
|
|
LogUtil.error(logger, "创建充值订单接口失败");
|
|
|
- return null;
|
|
|
+ throw new ServiceException("创建三方支付订单失败");
|
|
|
}
|
|
|
JSONObject resultJson = JSONObject.parseObject(result);
|
|
|
String code = resultJson.getString("code");
|
|
|
String orderNo = resultJson.getString("order_no");
|
|
|
JSONObject data = resultJson.getJSONObject("pay_info");
|
|
|
String orderstatus = resultJson.getString("orderstatus");
|
|
|
- if (REQ_STATUS_SUCCESS.equalsIgnoreCase(code)) {
|
|
|
- //保存订单记录
|
|
|
- PayOrder payOrder = buildPayOrder(params);
|
|
|
- payOrder.setOrderId(resultJson.getString("shop_order_no"));
|
|
|
- payOrder.setOrderNo(orderNo);
|
|
|
- payOrder.setCode(code);
|
|
|
- payOrder.setBizType(bizType);
|
|
|
- payOrder.setBizId(bizId);
|
|
|
- payOrder.setOrderStatus(orderstatus);
|
|
|
- boolean ret = payOrderService.save(payOrder);
|
|
|
- if (ret) {
|
|
|
- return data;
|
|
|
- } else {
|
|
|
- LogUtil.error(logger, "渠道支付订单数据库保存失败.");
|
|
|
- }
|
|
|
+ String resultMsg = resultJson.getString("result");
|
|
|
+ if (!REQ_STATUS_SUCCESS.equalsIgnoreCase(code)) {
|
|
|
+ throw new ServiceException(resultMsg);
|
|
|
}
|
|
|
- return null;
|
|
|
+ //保存订单记录
|
|
|
+ PayOrder payOrder = buildPayOrder(params);
|
|
|
+ payOrder.setOrderId(resultJson.getString("shop_order_no"));
|
|
|
+ payOrder.setOrderNo(orderNo);
|
|
|
+ payOrder.setCode(code);
|
|
|
+ payOrder.setBizType(bizType);
|
|
|
+ payOrder.setBizId(bizId);
|
|
|
+ payOrder.setOrderStatus(orderstatus);
|
|
|
+ boolean ret = payOrderService.save(payOrder);
|
|
|
+ if (!ret) {
|
|
|
+ LogUtil.error(logger, "渠道支付订单数据库保存失败.");
|
|
|
+ throw new ServiceException("支付订单保存失败");
|
|
|
+ }
|
|
|
+ return data;
|
|
|
+
|
|
|
}
|
|
|
|
|
|
@Override
|