diff --git a/server/like-common/src/main/java/com/mdd/common/config/wechat/WxPayConfiguration.java b/server/like-common/src/main/java/com/mdd/common/config/wechat/WxPayConfiguration.java index 14bb3060..1352e8a9 100644 --- a/server/like-common/src/main/java/com/mdd/common/config/wechat/WxPayConfiguration.java +++ b/server/like-common/src/main/java/com/mdd/common/config/wechat/WxPayConfiguration.java @@ -6,9 +6,9 @@ import com.github.binarywang.wxpay.service.WxPayService; import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl; import com.mdd.common.entity.setting.DevPayConfig; import com.mdd.common.entity.system.SystemConfig; +import com.mdd.common.enums.PaymentEnum; import com.mdd.common.mapper.setting.DevPayConfigMapper; import com.mdd.common.mapper.system.SystemConfigMapper; -import com.mdd.common.util.ConfigUtils; import com.mdd.common.util.MapUtils; import com.mdd.common.util.StringUtils; import lombok.AllArgsConstructor; @@ -42,7 +42,7 @@ public class WxPayConfiguration { public WxPayService mnpPayService() { DevPayConfig config = devPayConfigMapper.selectOne( new QueryWrapper() - .eq("way", 2) + .eq("way", PaymentEnum.WX_PAY.getCode()) .last("limit 1")); SystemConfig systemConfig = systemConfigMapper.selectOne(new QueryWrapper() @@ -50,7 +50,8 @@ public class WxPayConfiguration { .eq("name", "appId") .last("limit 1")); - Map params = MapUtils.jsonToMap(config.getParams().toString()); + String paramJson = StringUtils.isNull(config.getParams()) ? "{}" : config.getParams().toString(); + Map params = MapUtils.jsonToMap(paramJson); String appId = StringUtils.isNull(systemConfig) ? "" : systemConfig.getValue(); String mchId = params.get("mch_id"); String paySignKey = params.get("pay_sign_key"); @@ -80,15 +81,16 @@ public class WxPayConfiguration { public WxPayService wxOaService() { DevPayConfig config = devPayConfigMapper.selectOne( new QueryWrapper() - .eq("way", 2) + .eq("way", PaymentEnum.WX_PAY.getCode()) .last("limit 1")); SystemConfig systemConfig = systemConfigMapper.selectOne(new QueryWrapper() - .eq("type", "oa_channel") .eq("name", "appId") + .eq("type", "oa_channel") .last("limit 1")); - Map params = MapUtils.jsonToMap(config.getParams().toString()); + String paramJson = StringUtils.isNull(config.getParams()) ? "{}" : config.getParams().toString(); + Map params = MapUtils.jsonToMap(paramJson); String appId = StringUtils.isNull(systemConfig) ? "" : systemConfig.getValue(); String mchId = params.get("mch_id"); String paySignKey = params.get("pay_sign_key"); diff --git a/server/like-front/src/main/java/com/mdd/front/controller/PayController.java b/server/like-front/src/main/java/com/mdd/front/controller/PayController.java index 391c7160..191c0666 100644 --- a/server/like-front/src/main/java/com/mdd/front/controller/PayController.java +++ b/server/like-front/src/main/java/com/mdd/front/controller/PayController.java @@ -73,6 +73,9 @@ public class PayController { paymentValidate.setOrderAmount(rechargeOrder.getOrderAmount()); paymentValidate.setDescription("余额充值"); payStatus = rechargeOrder.getPayStatus(); + + rechargeOrder.setPayWay(payWay); + rechargeOrderMapper.updateById(rechargeOrder); break; case "order": break; diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java index f8a90434..8c997744 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java @@ -18,10 +18,7 @@ import com.mdd.common.mapper.setting.DevPayWayMapper; import com.mdd.common.mapper.user.UserAuthMapper; import com.mdd.common.mapper.user.UserMapper; import com.mdd.common.plugin.wechat.WxPayDriver; -import com.mdd.common.util.AmountUtil; -import com.mdd.common.util.IpUtils; -import com.mdd.common.util.StringUtils; -import com.mdd.common.util.UrlUtils; +import com.mdd.common.util.*; import com.mdd.front.service.IPayService; import com.mdd.front.validate.PaymentValidate; import com.mdd.front.vo.PayWayListedVo; @@ -128,7 +125,7 @@ public class PayServiceImpl implements IPayService { wxPayUnifiedOrderV3Request.setDescription(description); wxPayUnifiedOrderV3Request.setTimeExpire(timeExpire); wxPayUnifiedOrderV3Request.setAttach(attach); - wxPayUnifiedOrderV3Request.setNotifyUrl("https://likeadmin-java-api.yixiangonline.com/api/pay/notifyMnp"); + wxPayUnifiedOrderV3Request.setNotifyUrl(RequestUtils.uri() + "/api/pay/notifyMnp"); // 订单金额 WxPayUnifiedOrderV3Request.Amount amount = new WxPayUnifiedOrderV3Request.Amount();