From 326f47b6b0c7a02685f514d4088e4070b8858ab4 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 25 七月 2025 14:51:52 +0800
Subject: [PATCH] 开放其他模块

---
 UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java |  243 +++++++++++++++++++++++++++++++-----------------
 1 files changed, 158 insertions(+), 85 deletions(-)

diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
index c69197d..bfd2a8d 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/qianyuntong/OrderUtil.java
@@ -22,16 +22,92 @@
 	
 	
 	public static void main(String[] args) {
-		CreateTravelItineraryRequest request = new CreateTravelItineraryRequest();
-		request.setScene(QianYunTongProperties.sceneId);
-		request.setPartnerId("522700");
-		request.setOrderNo("123456");
-		request.setCustomerId("11448156");
-		request.setDriverId("11448158");
-		request.setSupplierShopId("981100006005951");
-		request.setServiceType(1);
-		String travelItinerary = createTravelItinerary(request);
-		System.err.println(travelItinerary);
+		//创建行程
+//		CreateTravelItineraryRequest request = new CreateTravelItineraryRequest();
+//		request.setScene("TRAFFIC");
+//		request.setPartnerId("522700");
+//		request.setOrderNo("123456");
+//		request.setCustomerId("11448156");
+//		request.setDriverId("11448158");
+//		request.setSupplierShopId("981100006005951");
+//		request.setServiceType(1);
+//		String travelItinerary = createTravelItinerary(request);
+//		System.err.println(travelItinerary);//1948565171253956608
+		
+		//修改行程状态
+//		ModifyTravelItineraryRequest request = new ModifyTravelItineraryRequest();
+//		request.setScene("TRAFFIC");
+//		request.setPartnerId("522700");
+//		request.setOrderId("1948565171253956608");
+//		request.setStatus(7);
+//		request.setDriverId("11448158");
+//		request.setSupplierShopId("981100006005951");
+//		Boolean aBoolean = modifyTravelItinerary(request);
+		
+		//订单创建及拉起支付
+//		TradeOrderCreateData tradeOrderCreateData = new TradeOrderCreateData();
+//		tradeOrderCreateData.setScene("TRAFFIC");
+//		tradeOrderCreateData.setPartnerId("522700");
+//		tradeOrderCreateData.setTreatShopId("11448158");
+//		tradeOrderCreateData.setOrderAppId("52270015");
+//		tradeOrderCreateData.setField1("{\"profitSharing\":\"1\",\"isPromote\":\"0\"}");
+//		tradeOrderCreateData.setCharge(new BigDecimal("0.01"));
+//		tradeOrderCreateData.setChannelSource("GRJYCXWXXCX");
+//		tradeOrderCreateData.setOrderId("1948565171253956608");
+//		tradeOrderCreateData.setOrderNo("123456");
+//		tradeOrderCreateData.setCustomerId("11448156");
+//		tradeOrderCreateData.setPayPartnerId("5400004");
+//		tradeOrderCreateData.setPartnerPayId("1948565171253956608");
+//		tradeOrderCreateData.setCurrency("RMB");
+//		tradeOrderCreateData.setTotalFee("1");
+//		tradeOrderCreateData.setRetUrl("/home/");
+//		tradeOrderCreateData.setClientIp("127.0.0.1");
+//		tradeOrderCreateData.setNeedLoginFlag("N");
+//		tradeOrderCreateData.setOrderDesc("出行订单支付");
+//		tradeOrderCreateData.setAccessMode("H5");
+//
+//		List<GoodsInfoRequest> goodsInfo = new ArrayList<>();
+//		GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest();
+//		goodsInfoRequest.setId("1");
+//		goodsInfoRequest.setSubAppId(QianYunTongProperties.appId);
+//		goodsInfoRequest.setSubOpenId("oVLur6yFtED8ruXBWUFKXjzXJ_BQ");
+//		goodsInfoRequest.setProfitSharing("1");
+//		goodsInfo.add(goodsInfoRequest);
+//		tradeOrderCreateData.setGoodsInfo(goodsInfo);
+//		TradeOrderCreate tradeOrderCreate = tradeOrderCreate1(tradeOrderCreateData);
+//		System.err.println(tradeOrderCreate);
+//		//TradeOrderCreate(orderInfo=OrderInfo(orderId=1948565171253956608, status=null), payInfo=PayInfo(retCode=000000, retMsg=success, success=true, data=PayInfoData(redirectUrl=https://qhsctest.qytzt.cn/gray/mobile/index.html?f=allCashDesk&accessToken=5nUBXayFpfZz%2FXUZiMu9LyWg15VM5hbmhIjUt0hdmws%3D, payId=540000420250725000135518, status=null, payTime=null, payFee=null, paymentInfos=null), sign=ea01f3b186be02e43367b856fd2ec699))
+		
+		//查询支付单信息
+//		GetPaymentInfoDataRequest getPaymentInfoDataRequest = new GetPaymentInfoDataRequest();
+//		getPaymentInfoDataRequest.setPartnerId("5400004");
+//		getPaymentInfoDataRequest.setPartnerPayId("1948565171253956608");
+//		GetPaymentInfo getPaymentInfo = paymentInfo(getPaymentInfoDataRequest);
+//		System.err.println(getPaymentInfo);
+		
+		//拉起支付
+		TradePayOff1Data tradePayOff1Data = new TradePayOff1Data();
+		tradePayOff1Data.setPartnerId("5400004");
+		tradePayOff1Data.setScene("TRAFFIC");
+		tradePayOff1Data.setPartnerPayId("1948565171253956608");
+		tradePayOff1Data.setCurrency("RMB");
+		tradePayOff1Data.setTotalFee("1");
+		tradePayOff1Data.setRetUrl("/home/");
+		tradePayOff1Data.setClientIp("127.0.0.1");
+		tradePayOff1Data.setNeedLoginFlag("N");
+		tradePayOff1Data.setOrderDesc("出行订单支付");
+		tradePayOff1Data.setAccessMode("H5");
+		List<GoodsInfoRequest> goodsInfo = new ArrayList<>();
+		GoodsInfoRequest goodsInfoRequest = new GoodsInfoRequest();
+		goodsInfoRequest.setId("1");
+		goodsInfoRequest.setSubAppId(QianYunTongProperties.appId);
+		goodsInfoRequest.setSubOpenId("oVLur6yFtED8ruXBWUFKXjzXJ_BQ");
+		goodsInfoRequest.setProfitSharing("1");
+		goodsInfo.add(goodsInfoRequest);
+		tradePayOff1Data.setGoodsInfo(goodsInfo);
+		PayInfo payInfo = tradePayOff1(tradePayOff1Data);
+		System.err.println(payInfo);
+
 
 //		CreateOrderRequest createOrderRequest = new CreateOrderRequest();
 //		createOrderRequest.setTreatShopId("");
@@ -48,22 +124,21 @@
 		
 	}
 	
-	
-	
 	/**
-	 * 订单创建
-	 * @param createOrderRequest
+	 * 拉起支付
+	 *
+	 * @param tradePayOff1Data
 	 * @return
 	 */
-	public static OrderInfo tradeOrderCreate(CreateOrderRequest createOrderRequest){
-		TradeRequest request = new TradeRequest<CreateOrderRequest>();
-		request.setSceneId(QianYunTongProperties.sceneId);
-		request.setAppId(QianYunTongProperties.appId);
+	public static PayInfo tradePayOff1(TradePayOff1Data tradePayOff1Data) {
+		TradeRequest request = new TradeRequest<TradePayOff1Data>();
+		request.setSceneId("1911676727023968256");
+		request.setAppId(QianYunTongProperties.appkey);
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
-		request.setData(createOrderRequest);
+		request.setData(tradePayOff1Data);
 		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradeOrderCreate";
+		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradePayOff";
 		//私钥文件
 		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
 		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
@@ -81,19 +156,19 @@
 		contentMap.put(SystemParameterNames.getUserName(), QianYunTongProperties.userName);
 		contentMap.put(SystemParameterNames.getStatus(), QianYunTongProperties.status);
 		contentMap.put("content", new Gson().toJson(request));
-		log.info("【订单创建】请求地址:" + url);
-		log.info("【订单创建】请求参数:" + JSON.toJSONString(contentMap));
+		log.info("【拉起支付】请求地址:" + url);
+		log.info("【拉起支付】请求参数:" + JSON.toJSONString(contentMap));
 		String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
-		log.info("【订单创建】请求结果:" + result);
+		log.info("【拉起支付】请求结果:" + result);
 		JSONObject jsonObject = JSON.parseObject(result);
 		String resCode = jsonObject.getString("resCode");
-		if(!"000000".equals(resCode)){
-			log.error("【订单创建】失败:" + jsonObject.getString("resMsg"));
-			throw new RuntimeException("【订单创建】失败:" + jsonObject.getString("resMsg"));
+		if (!"000000".equals(resCode)) {
+			log.error("【拉起支付】失败:" + jsonObject.getString("resMsg"));
+			throw new RuntimeException("【拉起支付】失败:" + jsonObject.getString("resMsg"));
 		}
 		JSONObject busiResp = jsonObject.getJSONObject("busiResp");
-		OrderInfo orderInfo = busiResp.getObject("orderInfo", OrderInfo.class);
-		return orderInfo;
+		PayInfo payInfo = busiResp.getObject("payInfo", PayInfo.class);
+		return payInfo;
 	}
 	
 	/**
@@ -227,18 +302,16 @@
 		return listPage;
 	}
 	
-	
-	
-	
 	/**
 	 * 订单创建及拉起支付
+	 *
 	 * @param tradeOrderCreateData
 	 * @return
 	 */
-	public static TradeOrderCreate tradeOrderCreate1(TradeOrderCreateData tradeOrderCreateData){
+	public static TradeOrderCreate tradeOrderCreate1(TradeOrderCreateData tradeOrderCreateData) {
 		TradeRequest request = new TradeRequest<TradeOrderCreateData>();
-		request.setSceneId(QianYunTongProperties.sceneId);
-		request.setAppId(QianYunTongProperties.appId);
+		request.setSceneId("1945688132719169536");
+		request.setAppId(QianYunTongProperties.appkey);
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(tradeOrderCreateData);
@@ -268,7 +341,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"));
 		}
@@ -276,16 +349,63 @@
 		return busiResp;
 	}
 	
+	/**
+	 * 订单创建
+	 *
+	 * @param createOrderRequest
+	 * @return
+	 */
+	public static OrderInfo tradeOrderCreate(CreateOrderRequest createOrderRequest) {
+		TradeRequest request = new TradeRequest<CreateOrderRequest>();
+		request.setSceneId(QianYunTongProperties.sceneId);
+		request.setAppId(QianYunTongProperties.appkey);
+		request.setConfigVersion(1);
+		request.setRequestId(UUIDUtil.getRandomCode());
+		request.setData(createOrderRequest);
+		//请求路径
+		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradeOrderCreate";
+		//私钥文件
+		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
+		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
+		String appKey = QianYunTongProperties.appkey;//appkey
+		Map<String, String> headers = new HashMap<>();
+		headers.put("Content-Type", "application/json");
+		Map<String, Object> contentMap = new HashMap<String, Object>();
+		Date nowdate = new Date();
+		SimpleDateFormat date = new SimpleDateFormat("yyyyMMddHHmmss");
+		
+		String timeStamp = date.format(nowdate);
+		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("content", new Gson().toJson(request));
+		log.info("【订单创建】请求地址:" + url);
+		log.info("【订单创建】请求参数:" + JSON.toJSONString(contentMap));
+		String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
+		log.info("【订单创建】请求结果:" + result);
+		JSONObject jsonObject = JSON.parseObject(result);
+		String resCode = jsonObject.getString("resCode");
+		if (!"000000".equals(resCode)) {
+			log.error("【订单创建】失败:" + jsonObject.getString("resMsg"));
+			throw new RuntimeException("【订单创建】失败:" + jsonObject.getString("resMsg"));
+		}
+		JSONObject busiResp = jsonObject.getJSONObject("busiResp");
+		OrderInfo orderInfo = busiResp.getObject("orderInfo", OrderInfo.class);
+		return orderInfo;
+	}
 	
 	/**
 	 * (补偿单)拉起支付
+	 *
 	 * @param tradePayOffData
 	 * @return
 	 */
-	public static PayInfo tradePayOff(TradePayOffData tradePayOffData){
+	public static PayInfo tradePayOff(TradePayOffData tradePayOffData) {
 		TradeRequest request = new TradeRequest<TradePayOffData>();
 		request.setSceneId(QianYunTongProperties.sceneId);
-		request.setAppId(QianYunTongProperties.appId);
+		request.setAppId(QianYunTongProperties.appkey);
 		request.setConfigVersion(1);
 		request.setRequestId(UUIDUtil.getRandomCode());
 		request.setData(tradePayOffData);
@@ -314,56 +434,9 @@
 		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"));
-		}
-		JSONObject busiResp = jsonObject.getJSONObject("busiResp");
-		PayInfo payInfo = busiResp.getObject("payInfo", PayInfo.class);
-		return payInfo;
-	}
-	
-	
-	/**
-	 * 拉起支付
-	 * @param tradePayOff1Data
-	 * @return
-	 */
-	public static PayInfo tradePayOff1(TradePayOff1Data tradePayOff1Data){
-		TradeRequest request = new TradeRequest<TradePayOff1Data>();
-		request.setSceneId(QianYunTongProperties.sceneId);
-		request.setAppId(QianYunTongProperties.appId);
-		request.setConfigVersion(1);
-		request.setRequestId(UUIDUtil.getRandomCode());
-		request.setData(tradePayOff1Data);
-		//请求路径
-		String url = QianYunTongProperties.apiUrl + "/openapi/rest/1.0/tradePayOff";
-		//私钥文件
-		String skprivateKeyFile = QianYunTongProperties.privateKeyPath;
-		//注意:私钥文件需要开发者手动新建.pem文件,将委办局提供的私钥串复制进文件里用于sign加密
-		String appKey = QianYunTongProperties.appkey;//appkey
-		Map<String, String> headers = new HashMap<>();
-		headers.put("Content-Type", "application/json");
-		Map<String, Object> contentMap = new HashMap<String, Object>();
-		Date nowdate = new Date();
-		SimpleDateFormat date = new SimpleDateFormat("yyyyMMddHHmmss");
-		
-		String timeStamp = date.format(nowdate);
-		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("content", new Gson().toJson(request));
-		log.info("【拉起支付】请求地址:" + url);
-		log.info("【拉起支付】请求参数:" + JSON.toJSONString(contentMap));
-		String result = OpenApiClient.sendCommonHttpRequst(url, headers, "POST", skprivateKeyFile, timeStamp, contentMap);
-		log.info("【拉起支付】请求结果:" + result);
-		JSONObject jsonObject = JSON.parseObject(result);
-		String resCode = jsonObject.getString("resCode");
-		if(!"000000".equals(resCode)){
-			log.error("【拉起支付】失败:" + jsonObject.getString("resMsg"));
-			throw new RuntimeException("【拉起支付】失败:" + jsonObject.getString("resMsg"));
 		}
 		JSONObject busiResp = jsonObject.getJSONObject("busiResp");
 		PayInfo payInfo = busiResp.getObject("payInfo", PayInfo.class);

--
Gitblit v1.7.1