| | |
| | | double payAmount = PayUtil.getPayAmountByEnv(MappingCache.getValue(MappingConstant.ENV_DOMAIN, "HC_ENV"), paymentOrderDto.getMoney()); |
| | | //添加或更新支付记录(参数跟进自己业务需求添加) |
| | | |
| | | PaymentPoolValueDto paymentPoolValueDto = new PaymentPoolValueDto(); |
| | | paymentPoolValueDto.setPpId(paymentPoolId); |
| | | List<PaymentPoolValueDto> paymentPoolValueDtos = paymentPoolValueV1InnerServiceSMOImpl.queryPaymentPoolValues(paymentPoolValueDto); |
| | | |
| | | if (paymentPoolValueDtos == null || paymentPoolValueDtos.isEmpty()) { |
| | | throw new IllegalArgumentException("配置错误,未配置参数"); |
| | | } |
| | | JSONObject resMap = null; |
| | | resMap = this.java110UnifieldOrder(paymentOrderDto.getName(), |
| | | paymentOrderDto.getOrderId(), |
| | |
| | | payAmount, |
| | | openId, |
| | | smallWeChatDto, |
| | | paymentPoolId, |
| | | paymentPoolValueDtos, |
| | | notifyUrl |
| | | ); |
| | | String key = PaymentPoolValueDto.getValue(paymentPoolValueDtos, "PLUTUS_KEY"); |
| | | |
| | | |
| | | if (TRADE_TYPE_JSAPI.equals(tradeType)) { |
| | |
| | | resultMap.put("partnerid", smallWeChatDto.getMchId()); |
| | | resultMap.put("prepayid", resMap.getString("session_id")); |
| | | //resultMap.put("signType", "MD5"); |
| | | resultMap.put("sign", PayUtil.createSign(resultMap, smallWeChatDto.getPayPassword())); |
| | | resultMap.put("sign", PayUtil.createSign(resultMap, key)); |
| | | } else if (TRADE_TYPE_NATIVE.equals(tradeType)) { |
| | | resultMap.put("prepayId", resMap.getString("session_id")); |
| | | resultMap.put("codeUrl", resMap.getString("qr_code")); |
| | |
| | | private JSONObject java110UnifieldOrder(String feeName, String orderNum, |
| | | String tradeType, double payAmount, String openid, |
| | | SmallWeChatDto smallWeChatDto, |
| | | String paymentPoolId, |
| | | List<PaymentPoolValueDto> paymentPoolValueDtos, |
| | | String notifyUrl) throws Exception { |
| | | |
| | | //String systemName = MappingCache.getValue(WechatConstant.WECHAT_DOMAIN, WechatConstant.PAY_GOOD_NAME); |
| | | PaymentPoolValueDto paymentPoolValueDto = new PaymentPoolValueDto(); |
| | | paymentPoolValueDto.setPpId(paymentPoolId); |
| | | List<PaymentPoolValueDto> paymentPoolValueDtos = paymentPoolValueV1InnerServiceSMOImpl.queryPaymentPoolValues(paymentPoolValueDto); |
| | | |
| | | if (paymentPoolValueDtos == null || paymentPoolValueDtos.isEmpty()) { |
| | | throw new IllegalArgumentException("配置错误,未配置参数"); |
| | | } |
| | | |
| | | String mchId = PaymentPoolValueDto.getValue(paymentPoolValueDtos, "PLUTUS_MCHID"); |
| | | String key = PaymentPoolValueDto.getValue(paymentPoolValueDtos, "PLUTUS_KEY"); |
| | |
| | | paramMap.put("appid", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_APP_ID)); //服务商appid,是服务商注册时公众号的id |
| | | paramMap.put("mch_id", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_MCH_ID)); //服务商商户号 |
| | | paramMap.put("sub_appid", shopSmallWeChatDto.getAppId());//起调小程序appid |
| | | paramMap.put("sub_mch_id", shopSmallWeChatDto.getMchId());//起调小程序的商户号 |
| | | paramMap.put("sub_mch_id", mchId);//起调小程序的商户号 |
| | | paramMap.remove("openid"); |
| | | } |
| | | paramMap.put("sign", PayUtil.createSign(paramMap, key)); |
| | |
| | | if (WECHAT_SERVICE_PAY_SWITCH_ON.equals(paySwitch)) { |
| | | paramMap.put("appid", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_APP_ID)); //服务商appid,是服务商注册时公众号的id |
| | | paramMap.put("mch_id", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_MCH_ID)); //服务商商户 |
| | | paramMap.put("sub_mch_id", shopSmallWeChatDto.getMchId()); |
| | | paramMap.put("sub_mch_id", mchId); |
| | | } |
| | | paramMap.put("sign", PayUtil.createSign(paramMap, key)); |
| | | //转换为xml |
| | |
| | | paramMap.put("appid", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_APP_ID)); //服务商appid,是服务商注册时公众号的id |
| | | paramMap.put("mch_id", MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_MCH_ID)); //服务商商户号 |
| | | paramMap.put("sub_appid", smallWeChatDto.getAppId());//起调小程序appid |
| | | paramMap.put("sub_mch_id", smallWeChatDto.getMchId());//起调小程序的商户号 |
| | | paramMap.put("sub_mch_id", mchId);//起调小程序的商户号 |
| | | paramMap.put("sub_openid", openid); |
| | | paramMap.remove("openid"); |
| | | } |