From 4231cb0417322b6b974210d31ff4cbd8a842da96 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 12 八月 2025 10:42:39 +0800
Subject: [PATCH] 合并代码

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java |  255 ++++++++++++++++++++++++++++++++++----------------
 1 files changed, 171 insertions(+), 84 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
index b2f30ba..03ca6f1 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
@@ -6,10 +6,13 @@
 import com.google.gson.Gson;
 import com.open.common.util.OpenApiClient;
 import com.open.common.util.SystemParameterNames;
+import com.stylefeng.guns.modular.system.util.SpringContextsUtil;
 import com.stylefeng.guns.modular.system.util.UUIDUtil;
 import com.stylefeng.guns.modular.system.util.qianyuntong.model.*;
 import lombok.extern.slf4j.Slf4j;
 
+import java.net.InetAddress;
+import java.net.UnknownHostException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -20,25 +23,27 @@
 @Slf4j
 public class OrderUtil {
 	
+	private static QianYunTongConfig qianYunTongConfig = SpringContextsUtil.getBean(QianYunTongConfig.class).getQianYunTongConfig();
+	
 	
 	public static void main(String[] args) {
 		//创建行程
 //		CreateTravelItineraryRequest request = new CreateTravelItineraryRequest();
 //		request.setScene("TRAFFIC");
 //		request.setPartnerId("522700");
-//		request.setOrderNo("01234567890");
+//		request.setOrderNo("3456789012345678");
 //		request.setCustomerId("11448156");
 //		request.setDriverId("11448158");
 //		request.setSupplierShopId("981100006005951");
 //		request.setServiceType(1);
 //		String travelItinerary = createTravelItinerary(request);
-//		System.err.println(travelItinerary);//1950363840206753792
+//		System.err.println(travelItinerary);//1951088602595872768
 		
 		//修改行程状态
 //		ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
 //		request.setScene("TRAFFIC");
 //		request.setPartnerId("522700");
-//		request.setOrderId("1950363840206753792");
+//		request.setOrderId("1951088602595872768");
 //		request.setStatus(7);
 //		request.setDriverId("11448158");
 //		request.setSupplierShopId("981100006005951");
@@ -53,11 +58,11 @@
 //		tradeOrderCreateData.setField1("{\"profitSharing\":\"1\",\"isPromote\":\"0\"}");
 //		tradeOrderCreateData.setCharge(new BigDecimal("0.01"));
 //		tradeOrderCreateData.setChannelSource("GRJYCXWXXCX");
-//		tradeOrderCreateData.setOrderId("1950363840206753792");
-//		tradeOrderCreateData.setOrderNo("01234567890");
+//		tradeOrderCreateData.setOrderId("1951088602595872768");
+//		tradeOrderCreateData.setOrderNo("3456789012345678");
 //		tradeOrderCreateData.setCustomerId("11448156");
 //		tradeOrderCreateData.setPayPartnerId("5400004");
-//		tradeOrderCreateData.setPartnerPayId("1950363840206753792");
+//		tradeOrderCreateData.setPartnerPayId("1951088602595872768");
 //		tradeOrderCreateData.setCurrency("RMB");
 //		tradeOrderCreateData.setTotalFee("1");
 //		tradeOrderCreateData.setRetUrl("pages/advoad-city-search/advoad-message/electronic-wait-pay/electronic-wait-pay");
@@ -69,8 +74,8 @@
 //		List<GoodsInfoRequest> goodsInfo = new ArrayList<>();
 //		GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest();
 //		goodsInfoRequest.setId("981100006005901");
-//		goodsInfoRequest.setSubAppId("wxcbad113185a243e1");
-//		goodsInfoRequest.setSubOpenId("oVLur6yFtED8ruXBWUFKXjzXJ_BQ");
+//		goodsInfoRequest.setSubAppId("wxcc3c9058e2b294db");
+//		goodsInfoRequest.setSubOpenId("oVLur61wBKJEO7QPR1dsmzS5TSfs");
 //		goodsInfoRequest.setProfitSharing("1");
 //		goodsInfoRequest.setAreaInfo("520100");
 //		goodsInfoRequest.setPayType("0");
@@ -92,10 +97,10 @@
 //		TradePayOff1Data tradePayOff1Data = new TradePayOff1Data();
 //		tradePayOff1Data.setPartnerId("5400004");
 //		tradePayOff1Data.setScene("TRAFFIC");
-//		tradePayOff1Data.setPartnerPayId("1948685426689200128");
+//		tradePayOff1Data.setPartnerPayId("1951088602595872768");
 //		tradePayOff1Data.setCurrency("RMB");
 //		tradePayOff1Data.setTotalFee("1");
-//		tradePayOff1Data.setRetUrl("/home/");
+//		tradePayOff1Data.setRetUrl("pages/advoad-city-search/advoad-message/electronic-wait-pay/electronic-wait-pay");
 //		tradePayOff1Data.setClientIp("127.0.0.1");
 //		tradePayOff1Data.setNeedLoginFlag("N");
 //		tradePayOff1Data.setOrderDesc("出行订单支付");
@@ -103,8 +108,8 @@
 //		List<GoodsInfoRequest> goodsInfo = new ArrayList<>();
 //		GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest();
 //		goodsInfoRequest.setId("981100006005901");
-//		goodsInfoRequest.setSubAppId("wxcbad113185a243e1");
-//		goodsInfoRequest.setSubOpenId("oVLur6yFtED8ruXBWUFKXjzXJ_BQ");
+//		goodsInfoRequest.setSubAppId("wxcc3c9058e2b294db");
+//		goodsInfoRequest.setSubOpenId("oVLur61wBKJEO7QPR1dsmzS5TSfs");
 //		goodsInfoRequest.setProfitSharing("1");
 //		goodsInfoRequest.setAreaInfo("520100");
 //		goodsInfoRequest.setPayType("0");
@@ -178,18 +183,34 @@
 	 * @return
 	 */
 	public static PayInfo tradePayOff1(TradePayOff1Data tradePayOff1Data) {
+		tradePayOff1Data.setPartnerId("5400004");
+		tradePayOff1Data.setTimeout("72H");
+		tradePayOff1Data.setScene("TRAFFIC");
+		tradePayOff1Data.setCurrency("RMB");
+		tradePayOff1Data.setNeedLoginFlag("N");
+		tradePayOff1Data.setAccessMode("APP");
+		tradePayOff1Data.getGoodsInfo().forEach(goodsInfoRequest -> {
+			goodsInfoRequest.setId("981100006005901");
+			goodsInfoRequest.setSubAppId("wxcc3c9058e2b294db");
+			
+			goodsInfoRequest.setAreaInfo("520100");
+			goodsInfoRequest.setPayType("0");
+			goodsInfoRequest.setBusinessType("10408");
+		});
+		
+		
 		TradeRequest request = new TradeRequest<TradePayOff1Data>();
 		request.setSceneId("1911676727023968256");
-		request.setAppId(QianYunTongProperties.appkey);
+		request.setAppId(qianYunTongConfig.getAppkey());
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(tradePayOff1Data);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradePayOff";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/tradePayOff";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -200,8 +221,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【拉起支付】请求地址:" + url);
 		log.info("【拉起支付】请求参数:" + JSON.toJSONString(contentMap));
@@ -220,20 +241,19 @@
 	
 	/**
 	 * 创建行程单
+	 *
 	 * @param request
 	 * @return 行程单ID
 	 */
-	public static String createTravelItinerary(CreateTravelItineraryRequest request){
+	public static String createTravelItinerary(CreateTravelItineraryRequest request) {
 		request.setScene("TRAFFIC");
 		request.setPartnerId("522700");
-		request.setSupplierShopId("981100006005951");
-		request.setServiceType(1);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/createTravelItinerary";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/createTravelItinerary";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -244,8 +264,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【创建行程单】请求地址:" + url);
 		log.info("【创建行程单】请求参数:" + JSON.toJSONString(contentMap));
@@ -253,7 +273,7 @@
 		log.info("【创建行程单】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("resCode");
-		if(!"000000".equals(resCode)){
+		if (!"000000".equals(resCode)) {
 			log.error("【创建行程单】失败:" + jsonObject.getString("resMsg"));
 			throw new RuntimeException("【创建行程单】失败:" + jsonObject.getString("resMsg"));
 		}
@@ -261,18 +281,20 @@
 	}
 	
 	
-	
 	/**
 	 * 修改行程单
+	 *
 	 * @param request
 	 */
-	public static Boolean modifyTravelItinerary(ModifyTravelItineraryRequest request){
+	public static Boolean modifyTravelItinerary(ModifyTravelItineraryRequest request) {
+		request.setScene("TRAFFIC");
+		request.setPartnerId("522700");
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/modifyTravelItinerary";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/modifyTravelItinerary";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -283,8 +305,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【修改行程单】请求地址:" + url);
 		log.info("【修改行程单】请求参数:" + JSON.toJSONString(contentMap));
@@ -292,7 +314,7 @@
 		log.info("【修改行程单】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("resCode");
-		if(!"000000".equals(resCode)){
+		if (!"000000".equals(resCode)) {
 			log.error("【修改行程单】失败:" + jsonObject.getString("resMsg"));
 			throw new RuntimeException("【修改行程单】失败:" + jsonObject.getString("resMsg"));
 		}
@@ -302,16 +324,20 @@
 	
 	/**
 	 * 行程单列表查询
+	 *
 	 * @param request
 	 * @return
 	 */
-	public static ListPage<TravelItinerary> getTravelItineraryList(GetTravelItineraryListRequest request){
+	public static ListPage<List<TravelItinerary>> getTravelItineraryList(GetTravelItineraryListRequest request) {
+		request.setScene("TRAFFIC");
+		request.setPartnerId("522700");
+		
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/getTravelItineraryList";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/getTravelItineraryList";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -322,8 +348,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【行程单列表查询】请求地址:" + url);
 		log.info("【行程单列表查询】请求参数:" + JSON.toJSONString(contentMap));
@@ -331,7 +357,7 @@
 		log.info("【行程单列表查询】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("resCode");
-		if(!"000000".equals(resCode)){
+		if (!"000000".equals(resCode)) {
 			log.error("【行程单列表查询】失败:" + jsonObject.getString("resMsg"));
 			throw new RuntimeException("【行程单列表查询】失败:" + jsonObject.getString("resMsg"));
 		}
@@ -345,7 +371,7 @@
 			TravelItinerary object = list.getObject(i, TravelItinerary.class);
 			travelItineraryList.add(object);
 		}
-		ListPage listPage = new ListPage<TravelItinerary>();
+		ListPage listPage = new ListPage<List<TravelItinerary>>();
 		listPage.setTotal(total);
 		listPage.setPageNum(pageNum);
 		listPage.setPageSize(pageSize);
@@ -360,19 +386,37 @@
 	 * @return
 	 */
 	public static TradeOrderCreate tradeOrderCreate1(TradeOrderCreateData tradeOrderCreateData) {
+		tradeOrderCreateData.setScene("TRAFFIC");
+		tradeOrderCreateData.setPartnerId("522700");
+		tradeOrderCreateData.setTimeout("72H");
+		tradeOrderCreateData.setOrderAppId("52270015");
+		tradeOrderCreateData.setChannelSource("GRJYCXWXXCX");
+		tradeOrderCreateData.setPayPartnerId("5400004");
+		tradeOrderCreateData.setCurrency("RMB");
+		tradeOrderCreateData.setNeedLoginFlag("N");
+		tradeOrderCreateData.setAccessMode("APP");
+		tradeOrderCreateData.getGoodsInfo().forEach(goodsInfoRequest -> {
+			goodsInfoRequest.setId("981100006005901");
+			goodsInfoRequest.setSubAppId("wxcc3c9058e2b294db");
+			goodsInfoRequest.setAreaInfo("520100");
+			goodsInfoRequest.setPayType("0");
+			goodsInfoRequest.setBusinessType("10408");
+		});
+		
+		
 		TradeRequest request = new TradeRequest<TradeOrderCreateData>();
 		request.setSceneId("1945688132719169536");
-		request.setAppId(QianYunTongProperties.appkey);
+		request.setAppId(qianYunTongConfig.getAppkey());
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(tradeOrderCreateData);
 		
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradeOrderCreate";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/tradeOrderCreate";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -383,8 +427,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【订单创建及拉起支付】请求地址:" + url);
 		log.info("【订单创建及拉起支付】请求参数:" + JSON.toJSONString(contentMap));
@@ -407,18 +451,23 @@
 	 * @return
 	 */
 	public static OrderInfo tradeOrderCreate(CreateOrderRequest createOrderRequest) {
+		createOrderRequest.setOrderAppId("52270015");
+		createOrderRequest.setScene("TRAFFIC");
+		createOrderRequest.setPartnerId("522700");
+		createOrderRequest.setChannelSource("GRJYCXWXXCX");
+		
 		TradeRequest request = new TradeRequest<CreateOrderRequest>();
-		request.setSceneId(QianYunTongProperties.sceneId);
-		request.setAppId(QianYunTongProperties.appkey);
+		request.setSceneId("1948289607125864448");
+		request.setAppId(qianYunTongConfig.getAppkey());
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(createOrderRequest);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradeOrderCreate";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/tradeOrderCreate";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -429,8 +478,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【订单创建】请求地址:" + url);
 		log.info("【订单创建】请求参数:" + JSON.toJSONString(contentMap));
@@ -454,18 +503,53 @@
 	 * @return
 	 */
 	public static PayInfo tradePayOff(TradePayOffData tradePayOffData) {
+		tradePayOffData.setPartnerId("5400005");
+		tradePayOffData.setTimeout("72H");
+		tradePayOffData.setScene("TRAFFIC");
+		tradePayOffData.setCurrency("RMB");
+		tradePayOffData.setRetUrl("");
+		InetAddress inetAddress = null;
+		try {
+			inetAddress = InetAddress.getLocalHost();
+		} catch (UnknownHostException e) {
+			throw new RuntimeException(e);
+		}
+		String ip = inetAddress.getHostAddress();
+		tradePayOffData.setClientIp(ip);
+		tradePayOffData.setNeedLoginFlag("N");
+		tradePayOffData.setAccessMode("APP");
+		List<PaymentInfoRequest> paymentInfoRequests = new ArrayList<>();
+		PaymentInfoRequest paymentInfoRequest = new PaymentInfoRequest();
+		paymentInfoRequest.setPayModeId("501212");
+		paymentInfoRequest.setRealFee(tradePayOffData.getTotalFee().toString());
+		paymentInfoRequest.setTradeFee(tradePayOffData.getTotalFee().toString());
+		paymentInfoRequest.setAccountTyp("501");
+		paymentInfoRequests.add(paymentInfoRequest);
+		tradePayOffData.setPaymentInfos(paymentInfoRequests);
+		List<GoodsInfo> goodsInfo = new ArrayList<>();
+		GoodsInfo goodsInfo1 = new GoodsInfo();
+		goodsInfo1.setMerchantCode("B00000905");
+		goodsInfo1.setCustId("CB0000004686");
+		goodsInfo1.setCustName("证联消费平台交易客户");
+		goodsInfo1.setBusinessType("10408");
+		goodsInfo1.setAgreementNo("00000000468618354161754464398681");
+		goodsInfo1.setProfitSharing("1");
+		goodsInfo.add(goodsInfo1);
+		tradePayOffData.setGoodsInfo(goodsInfo);
+		
+		
 		TradeRequest request = new TradeRequest<TradePayOffData>();
 		request.setSceneId("1774717104844095488");
-		request.setAppId(QianYunTongProperties.appkey);
-		request.setConfigVersion(1);
+		request.setAppId(qianYunTongConfig.getAppkey());
+		request.setConfigVersion(2);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(tradePayOffData);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradePayOff";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/tradePayOff";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -476,8 +560,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【(补偿单)拉起支付】请求地址:" + url);
 		log.info("【(补偿单)拉起支付】请求参数:" + JSON.toJSONString(contentMap));
@@ -497,21 +581,24 @@
 	
 	/**
 	 * 查询支付单信息
+	 *
 	 * @param getPaymentInfoDataRequest
 	 * @return
 	 */
-	public static GetPaymentInfo paymentInfo(GetPaymentInfoDataRequest getPaymentInfoDataRequest){
+	public static GetPaymentInfo paymentInfo(GetPaymentInfoDataRequest getPaymentInfoDataRequest) {
+		getPaymentInfoDataRequest.setPartnerId("5400004");
+		
 		GetPaymentInfoRequest request = new GetPaymentInfoRequest();
 		request.setRequstType("POST");
 		request.setBusType(1);
 		request.setData(getPaymentInfoDataRequest);
 		
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/paymentInfo";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/paymentInfo";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -522,8 +609,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【查询支付单信息】请求地址:" + url);
 		log.info("【查询支付单信息】请求参数:" + JSON.toJSONString(contentMap));
@@ -531,13 +618,13 @@
 		log.info("【查询支付单信息】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("retCode");
-		if(!"0".equals(resCode)){
+		if (!"0".equals(resCode)) {
 			log.error("【查询支付单信息】失败:" + jsonObject.getString("retMsg"));
 			throw new RuntimeException("【查询支付单信息】失败:" + jsonObject.getString("retMsg"));
 		}
 		JSONObject object = jsonObject.getJSONObject("object");
 		String retCode = object.getString("retCode");
-		if(!"000000".equals(retCode)){
+		if (!"000000".equals(retCode)) {
 			log.error("【查询支付单信息】失败:" + jsonObject.getString("retMsg"));
 			throw new RuntimeException("【查询支付单信息】失败:" + jsonObject.getString("retMsg"));
 		}
@@ -548,16 +635,22 @@
 	
 	/**
 	 * (补偿单)支付成功通知
+	 *
 	 * @param request
 	 * @return
 	 */
-	public static OrderInfo paymentOrder(PaymentOrderRequest request){
+	public static OrderInfo paymentOrder(PaymentOrderRequest request) {
+		request.setScene("TRAFFIC");
+		request.setMhltiCenterAppId("52270015");
+		request.setPayType(4);
+		request.setPayChannel(6);
+		request.setIsCompensate(1);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/paymentOrder";
+		String url = qianYunTongConfig.getApiUrl() + "/openapi/rest/1.0/paymentOrder";
 		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		String skprivateKeyFile = qianYunTongConfig.getPrivateKeyPath();
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
+		String appKey = qianYunTongConfig.getAppkey();//appkey
 		Map<String, String> headers = new HashMap<>();
 		headers.put("Content-Type", "application/json");
 		Map<String, Object> contentMap = new HashMap<String, Object>();
@@ -568,8 +661,8 @@
 		String messageId = UUIDUtil.getRandomCode();
 		contentMap.put(SystemParameterNames.getAppKey(), appKey);
 		contentMap.put(SystemParameterNames.getMessage_id(), messageId);
-		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
-		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
+		contentMap.put(SystemParameterNames.getUserName(), qianYunTongConfig.getUserName());
+		contentMap.put(SystemParameterNames.getStatus(), qianYunTongConfig.getStatus());
 		contentMap.put("content", new Gson().toJson(request));
 		log.info("【(补偿单)支付成功通知】请求地址:" + url);
 		log.info("【(补偿单)支付成功通知】请求参数:" + JSON.toJSONString(contentMap));
@@ -577,19 +670,13 @@
 		log.info("【(补偿单)支付成功通知】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("resCode");
-		if(!"0".equals(resCode)){
+		if (!"000000".equals(resCode)) {
 			log.error("【(补偿单)支付成功通知】失败:" + jsonObject.getString("resMsg"));
 			throw new RuntimeException("【(补偿单)支付成功通知】失败:" + jsonObject.getString("resMsg"));
 		}
 		OrderInfo orderInfo = jsonObject.getObject("busiResp", OrderInfo.class);
 		return orderInfo;
 	}
-	
-	
-	
-	
-	
-	
 	
 	
 }

--
Gitblit v1.7.1