You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
301 lines
12 KiB
301 lines
12 KiB
package com.hai.config;
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
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.WxUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import java.util.*;
|
|
|
|
/**
|
|
* @ClassName TelConfig
|
|
* @Author Sum1Dream
|
|
* @Version 1.0.0
|
|
* @Description // 充值接口
|
|
* @Date 2021/7/18 14:18
|
|
**/
|
|
@Component
|
|
public class RechargeConfig {
|
|
|
|
private static Logger log = LoggerFactory.getLogger(RechargeConfig.class);
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name getProductsList.java
|
|
* @Description // 获取龙阅产品
|
|
* @Date 10:03 2022/5/24
|
|
* @Param []
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject getProductsListByLy() throws Exception {
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("userid" , CommonSysConst.getSysConfig().getLyMemberId());
|
|
paramMap.put("sign", WxUtils.generateSignatureLy(paramMap , CommonSysConst.getSysConfig().getLyApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
return HttpsUtils.doPost(CommonSysConst.getSysConfig().getLyPostUrl()+ "index/product", paramMap);
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name rechargeOrderByLy.java
|
|
* @Description // 龙阅订单充值
|
|
* @Date 09:57 2022/5/25
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject rechargeOrderByLy(JSONObject object) throws Exception {
|
|
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("out_trade_num" , object.getString("out_trade_num"));
|
|
paramMap.put("product_id" , object.getString("product_id"));
|
|
paramMap.put("mobile" , object.getString("mobile"));
|
|
paramMap.put("notify_url" , object.getString("notifyUrl"));
|
|
paramMap.put("userid" , CommonSysConst.getSysConfig().getLyMemberId());
|
|
paramMap.put("sign", WxUtils.generateSignatureLy(paramMap , CommonSysConst.getSysConfig().getLyApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("龙阅订单充值-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPost(CommonSysConst.getSysConfig().getLyPostUrl()+ "index/recharge", paramMap);
|
|
|
|
log.info("龙阅订单充值-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return jsonObject;
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name checkOrderByLy.java
|
|
* @Description // 龙阅查询订单结果
|
|
* @Date 14:05 2022/5/24
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject checkOrderByLy(JSONObject object) throws Exception {
|
|
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("userid" , CommonSysConst.getSysConfig().getLyMemberId());
|
|
paramMap.put("out_trade_nums" , object.getString("out_trade_nums"));
|
|
paramMap.put("sign", WxUtils.generateSignatureLy(paramMap , CommonSysConst.getSysConfig().getLyApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("龙阅订单查询-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPost(CommonSysConst.getSysConfig().getLyPostUrl()+ "index/check", paramMap);
|
|
|
|
log.info("龙阅订单查询-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
|
|
return jsonObject;
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name rechargeOrderByJj.java
|
|
* @Description // 尖椒订单充值
|
|
* @Date 09:57 2022/5/25
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject rechargeOrderByJj(JSONObject object) throws Exception {
|
|
|
|
String timestamp = String.valueOf(System.currentTimeMillis());
|
|
|
|
Map<String , Object> map = new HashMap<>();
|
|
map.put("mobile" , object.getString("mobile"));
|
|
map.put("amount" , object.getString("amount"));
|
|
map.put("out_order_id" , object.getString("out_order_id"));
|
|
map.put("app_key" , CommonSysConst.getSysConfig().getJjAppKey());
|
|
map.put("timestamp" , timestamp.substring(0,timestamp.length()-3));
|
|
map.put("notify_url" , object.getString("notifyUrl"));
|
|
String signStr = WxUtils.generateSignatureAppSecret(map, CommonSysConst.getSysConfig().getJjAppSecret() , WXPayConstants.SignType.MD5);
|
|
map.put("sign" , signStr);
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("尖椒订单充值-请求参数: " + JSON.toJSONString(map));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPost(CommonSysConst.getSysConfig().getJjUrl() + "createOrder" , map);
|
|
|
|
log.info("尖椒订单充值-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return jsonObject;
|
|
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name checkOrderByJj.java
|
|
* @Description // 尖椒查询订单详情
|
|
* @Date 09:57 2022/5/25
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject checkOrderByJj(JSONObject object) throws Exception {
|
|
|
|
String timestamp = String.valueOf(System.currentTimeMillis());
|
|
|
|
Map<String , Object> map = new HashMap<>();
|
|
map.put("out_order_id" , object.getString("out_order_id"));
|
|
map.put("app_key" , CommonSysConst.getSysConfig().getJjAppKey());
|
|
map.put("timestamp" , timestamp.substring(0,timestamp.length()-3));
|
|
map.put("notify_url" , CommonSysConst.getSysConfig().getLyNotifyUrl());
|
|
|
|
String signStr = WxUtils.generateSignatureAppSecret(map, CommonSysConst.getSysConfig().getJjAppSecret() , WXPayConstants.SignType.MD5);
|
|
|
|
map.put("sign" , signStr);
|
|
|
|
return HttpsUtils.doPost(CommonSysConst.getSysConfig().getJjUrl() + "queryOrder" , map);
|
|
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name rechargeOrderByCy.java
|
|
* @Description // 城宇话费下单
|
|
* @Date 10:22 2022/7/14
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject rechargeOrderByCy(JSONObject object) throws Exception {
|
|
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("agentOrderId" , object.getString("agentOrderId"));
|
|
paramMap.put("productId" , object.getInteger("productId"));
|
|
paramMap.put("mobile" , object.getString("mobile"));
|
|
paramMap.put("timestamp" , DateUtil.date2String(new Date() , DateUtil.Y_M_D_HMS));
|
|
paramMap.put("appid" , CommonSysConst.getSysConfig().getCyApiKey());
|
|
paramMap.put("sign", WxUtils.generateSignatureCy(paramMap , CommonSysConst.getSysConfig().getCyAppSecret() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("城宇话费下单-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPostByCy(CommonSysConst.getSysConfig().getCyPostUrl()+ "/api/interface/recharge", paramMap);
|
|
|
|
log.info("城宇话费下单-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return jsonObject;
|
|
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @name rechargeOrderByCy.java
|
|
* @Description // 城宇话费查询订单详情
|
|
* @Date 10:22 2022/7/14
|
|
* @Param [com.alibaba.fastjson.JSONObject]
|
|
* @return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject queryRechargeByCy(JSONObject object) throws Exception {
|
|
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("orderId" , object.getString("orderNo"));
|
|
paramMap.put("timestamp" , DateUtil.date2String(new Date() , DateUtil.Y_M_D_HMS));
|
|
paramMap.put("appid" , CommonSysConst.getSysConfig().getCyApiKey());
|
|
paramMap.put("sign", WxUtils.generateSignatureCy(paramMap , CommonSysConst.getSysConfig().getCyAppSecret() , WXPayConstants.SignType.MD5));
|
|
|
|
return HttpsUtils.doPostByCy(CommonSysConst.getSysConfig().getCyPostUrl()+ "/api/interface/queryRecharge", paramMap);
|
|
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @Name checkOrderByHg
|
|
* @Description // 查询嗨购订单下单
|
|
* @Date 14:50 2023/2/8
|
|
* @Param [object]
|
|
* @Return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject rechargeOrderByHg(JSONObject object) throws Exception {
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("mchid" , CommonSysConst.getSysConfig().getHgMemberId());
|
|
paramMap.put("phone" , object.getString("phone"));
|
|
paramMap.put("orderid" , object.getString("orderid"));
|
|
paramMap.put("price" , object.getBigDecimal("price"));
|
|
paramMap.put("product_id" , object.getString("product_id"));
|
|
paramMap.put("notify" , CommonSysConst.getSysConfig().getHgNotifyUrl());
|
|
paramMap.put("sign", WxUtils.generateSignatureHg(paramMap , CommonSysConst.getSysConfig().getHgApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("嗨购话费查询订单-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
System.out.println("嗨购话费查询订单-请求参数: " + JSON.toJSONString(paramMap));
|
|
JSONObject repsObject = HttpsUtils.doPostForm(CommonSysConst.getSysConfig().getHgPostUrl()+ "external/api/telPay", paramSort(paramMap), new HashMap<>());
|
|
|
|
log.info("嗨购话费查询订单-响应参数: " + repsObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return repsObject;
|
|
}
|
|
|
|
/**
|
|
* @Author Sum1Dream
|
|
* @Name searchOrder
|
|
* @Description // 嗨购话费查询订单详情
|
|
* @Date 11:39 2023/2/7
|
|
* @Param [object]
|
|
* @Return com.alibaba.fastjson.JSONObject
|
|
*/
|
|
public static JSONObject checkOrderByHg(JSONObject object) throws Exception {
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("mchid" , CommonSysConst.getSysConfig().getHgMemberId());
|
|
paramMap.put("orderid" , object.getString("orderid"));
|
|
paramMap.put("sign", WxUtils.generateSignatureHg(paramMap , CommonSysConst.getSysConfig().getHgApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("嗨购话费查询订单-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPostForm(CommonSysConst.getSysConfig().getHgPostUrl()+ "external/api/searchOrder", paramSort(paramMap) , new HashMap<>());
|
|
|
|
log.info("嗨购话费查询订单-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return jsonObject;
|
|
}
|
|
|
|
public static JSONObject searchProduct() throws Exception {
|
|
Map<String,Object> paramMap = new HashMap<>();
|
|
|
|
paramMap.put("mchid" , CommonSysConst.getSysConfig().getHgMemberId());
|
|
paramMap.put("sign", WxUtils.generateSignatureHg(paramMap , CommonSysConst.getSysConfig().getHgApiKey() , WXPayConstants.SignType.MD5));
|
|
|
|
log.info("============请求任务Start=============");
|
|
log.info("嗨购话费查询订单-请求参数: " + JSON.toJSONString(paramMap));
|
|
|
|
JSONObject jsonObject = HttpsUtils.doPostForm(CommonSysConst.getSysConfig().getHgPostUrl()+ "/external/api/searchProduct", paramSort(paramMap) , new HashMap<>());
|
|
|
|
log.info("嗨购话费查询订单-响应参数: " + jsonObject.toJSONString());
|
|
log.info("============请求任务End==============");
|
|
return jsonObject;
|
|
}
|
|
|
|
|
|
private static String paramSort(final Map<String, Object> param) {
|
|
Set<String> keySet = param.keySet();
|
|
String[] keyArray = keySet.toArray(new String[keySet.size()]);
|
|
StringBuilder sb = new StringBuilder();
|
|
for (String k : keyArray) {
|
|
if (StringUtils.isBlank(sb.toString())) {
|
|
sb.append(k).append("=").append(param.get(k));
|
|
} else {
|
|
sb.append("&").append(k).append("=").append(param.get(k));
|
|
}
|
|
}
|
|
return sb.toString();
|
|
}
|
|
|
|
|
|
}
|
|
|