diff --git a/hai-cweb/src/main/java/com/cweb/controller/OutRechargeOrderController.java b/hai-cweb/src/main/java/com/cweb/controller/OutRechargeOrderController.java index 24b2eeab..c1480f7d 100644 --- a/hai-cweb/src/main/java/com/cweb/controller/OutRechargeOrderController.java +++ b/hai-cweb/src/main/java/com/cweb/controller/OutRechargeOrderController.java @@ -475,7 +475,7 @@ public class OutRechargeOrderController { outRechargeOrderService.goldPayOrder(userInfoModel.getHighUser().getId(), order.getId()); if (order.getRechargeType() == 1) { - + outRechargeOrderService.getMobile(order.getRechargeContent() , order.getPayPrice().intValue()); } return ResponseMsgUtil.success("支付成功"); diff --git a/hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java b/hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java index 3322ed8e..666a8794 100644 --- a/hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java +++ b/hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java @@ -386,6 +386,9 @@ public class UnionPayController { order.setPaySerialNo(body.getString("wtorderid")); // 支付流水号 order.setPayRealPrice(order.getPayPrice()); // 实付金额 + if (order.getRechargeType() == 1) { + outRechargeOrderService.getMobile(order.getRechargeContent() , order.getPayPrice().intValue()); + } order.setStatus(2); order.setPayType(4); order.setPayTime(new Date()); // 支付时间 diff --git a/hai-service/src/main/java/com/hai/config/CommonSysConfig.java b/hai-service/src/main/java/com/hai/config/CommonSysConfig.java index f10ec09b..cfb0a9e4 100644 --- a/hai-service/src/main/java/com/hai/config/CommonSysConfig.java +++ b/hai-service/src/main/java/com/hai/config/CommonSysConfig.java @@ -61,6 +61,7 @@ public class CommonSysConfig { private String CzNotifyUrl; private String CzAppKey; private String CzUrl; + private String CzAppSecret; public String getTuanYouUrl() { return tuanYouUrl; diff --git a/hai-service/src/main/java/com/hai/service/OutRechargeOrderService.java b/hai-service/src/main/java/com/hai/service/OutRechargeOrderService.java index 67073d1d..45e2ad1c 100644 --- a/hai-service/src/main/java/com/hai/service/OutRechargeOrderService.java +++ b/hai-service/src/main/java/com/hai/service/OutRechargeOrderService.java @@ -151,7 +151,7 @@ public interface OutRechargeOrderService { * @Param [java.lang.String] * @return com.alibaba.fastjson.JSONObject */ - JSONObject getMobile(String phone) throws Exception; + JSONObject getMobile(String phone , Integer amount) throws Exception; } diff --git a/hai-service/src/main/java/com/hai/service/impl/OutRechargeOrderServiceImpl.java b/hai-service/src/main/java/com/hai/service/impl/OutRechargeOrderServiceImpl.java index 82b53b43..fdb7d4b2 100644 --- a/hai-service/src/main/java/com/hai/service/impl/OutRechargeOrderServiceImpl.java +++ b/hai-service/src/main/java/com/hai/service/impl/OutRechargeOrderServiceImpl.java @@ -5,9 +5,13 @@ import com.alibaba.fastjson.JSONObject; import com.hai.common.exception.ErrorCode; import com.hai.common.exception.ErrorHelp; import com.hai.common.exception.SysCode; +import com.hai.common.pay.util.sdk.WXPayConstants; import com.hai.common.utils.DateUtil; import com.hai.common.utils.HttpsUtils; +import com.hai.common.utils.IDGenerator; import com.hai.common.utils.WxUtils; +import com.hai.config.CommonSysConfig; +import com.hai.config.CommonSysConst; import com.hai.config.HuiLianTongUnionCardConfig; import com.hai.dao.HighGasOrderPushMapper; import com.hai.dao.OutRechargeOrderMapper; @@ -52,6 +56,9 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService { @Resource private HighUserService highUserService; + @Resource + private OutRechargeOrderService outRechargeOrderService; + @Override public List getListRechargeOrder(Map map) { OutRechargeOrderExample example = new OutRechargeOrderExample(); @@ -314,6 +321,9 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService { } order.setPaySerialNo(consumptionResult.getString("orderId")); // 支付流水号 order.setPayRealPrice(order.getPayPrice()); // 实付金额 + if (order.getRechargeType() == 1) { + outRechargeOrderService.getMobile(order.getRechargeContent() , order.getPayPrice().intValue()); + } order.setStatus(2); order.setPayType(2); order.setPayTime(new Date()); // 支付时间 @@ -351,22 +361,23 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService { } @Override - public JSONObject getMobile(String phone) throws Exception { + public JSONObject getMobile(String phone , Integer amount) throws Exception { + + String timestamp = String.valueOf(System.currentTimeMillis()); Map map = new HashMap<>(); - map.put("mobile" , "18090580471"); - map.put("amount" , "0.01"); - map.put("out_order_id" , "CZ20220110895732352345"); - map.put("app_key" , "kg5n9br7evt4q8lp"); - map.put("timestamp" , DateUtil.date2String(new Date(),"yyyyMMddHHmmss")); + map.put("mobile" , phone); + map.put("amount" , amount); + map.put("out_order_id" , "CZ" + DateUtil.date2String(new Date(),"yyyyMMddHHmmss") + IDGenerator.nextId(5)); + map.put("app_key" , CommonSysConst.getSysConfig().getCzAppKey()); + map.put("timestamp" , timestamp.substring(0,timestamp.length()-3)); map.put("is_fast" , "1"); - map.put("notify_url" , "https://hsgcs.dctpay.com/crest/czOrder/orderRefundNotify"); + map.put("notify_url" , CommonSysConst.getSysConfig().getCzNotifyUrl()); - StringBuilder signStr = new StringBuilder(WxUtils.generateSignature(map)); + String signStr = WxUtils.generateSignatureAppSecret(map, CommonSysConst.getSysConfig().getTelApiSecret() , WXPayConstants.SignType.MD5); - map.put("sign" , WxUtils.MD5(String.valueOf(signStr.append("key=kg5n9br7evt4q8lp")),true)); + map.put("sign" , signStr); - JSONObject object = HttpsUtils.doPost("https://hfcs.dmjvip.com/index.php/third/mobile/createOrder" , map); - return object; + return HttpsUtils.doPost(CommonSysConst.getSysConfig().getCzUrl() , map); } } diff --git a/hai-service/src/main/java/com/hai/service/pay/impl/RechargeOrderServiceImpl.java b/hai-service/src/main/java/com/hai/service/pay/impl/RechargeOrderServiceImpl.java index 02bb007b..df539d98 100644 --- a/hai-service/src/main/java/com/hai/service/pay/impl/RechargeOrderServiceImpl.java +++ b/hai-service/src/main/java/com/hai/service/pay/impl/RechargeOrderServiceImpl.java @@ -74,6 +74,9 @@ public class RechargeOrderServiceImpl implements PayService { order.setPaySerialNo(map.get("transaction_id")); // 支付流水号 order.setPayRealPrice(new BigDecimal(map.get("total_fee")).divide(new BigDecimal("100"))); // 实付金额 order.setPayTime(new Date()); // 支付时间 + if (order.getRechargeType() == 1) { + outRechargeOrderService.getMobile(order.getRechargeContent() , order.getPayPrice().intValue()); + } order.setStatus(2); // 订单状态 : 1.待支付 2.已支付 3.已完成 4.已取消 5.已退款 outRechargeOrderService.updateOrder(order); diff --git a/hai-service/src/main/resources/dev/commonConfig.properties b/hai-service/src/main/resources/dev/commonConfig.properties index 54bf3ebc..643a66c0 100644 --- a/hai-service/src/main/resources/dev/commonConfig.properties +++ b/hai-service/src/main/resources/dev/commonConfig.properties @@ -54,4 +54,5 @@ TelMemberId=d13091df65d64aafbf0f35d2093157b7 // Mobile CzNotifyUrl = https://hsgcs.dctpay.com/crest/czOrder/orderRefundNotify CzAppKey = kg5n9br7evt4q8lp -CzUrl = https://hfcs.dmjvip.com/index.php/third/mobile/createOrder \ No newline at end of file +CzUrl = https://hfcs.dmjvip.com/index.php/third/mobile/createOrder +CzAppSecret = xkf9eoq2cjh6uvzp0mtrga134lnibdw8