From 9641d9ebc7b32b7e2cee898c8e9250e798c97e1b Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期六, 16 八月 2025 15:17:32 +0800
Subject: [PATCH] 修改bug

---
 UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java |   54 +++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 37 insertions(+), 17 deletions(-)

diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 4b9cf30..7cee817 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -703,6 +703,15 @@
 							orderPrivateCar.setIsDelete(1);
 							orderPrivateCar.setPid(orderPrivateCar1.getPid() == null ? orderPrivateCar1.getId() : orderPrivateCar1.getPid());
 
+							Integer promotion1 = isPromotion(orderPrivateCar.getUserId());
+							if(promotion1!=null){
+								orderPrivateCar.setPromotion(2);
+								Driver driver1 = driverService.selectById(promotion);
+								orderPrivateCar.setPromotionUser(driver1.getName());
+								orderPrivateCar.setPromotionPhone(driver1.getPhone());
+								orderPrivateCar.setPromotionDriverId(promotion1);
+							}
+
 							Company company = companyService.selectById(driver.getCompanyId());
 							//调三方订单中心创建行程单
 							CreateTravelItineraryRequest request = new CreateTravelItineraryRequest();
@@ -717,8 +726,8 @@
 							request.setServiceType(2);
 							String travelItinerary = OrderUtil.createTravelItinerary(request);
 							orderPrivateCar.setTravelId(travelItinerary);
-
 							this.insertOrUpdate(orderPrivateCar);
+
 							//修改总订单人数
 							OrderPrivateCar orderPrivateCar2 = new OrderPrivateCar();
 							orderPrivateCar2.setSpellSuccess(1);
@@ -771,7 +780,7 @@
 		UserInfo userInfo = userInfoService.selectById(userId);
 		if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
 			String registAreaCode = userInfo.getRegistAreaCode();
-			TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).eq("state",1).ge("startTime", new Date()).lt("endTime", new Date()).last("AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
+			TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).eq("state",1).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
 			if(tDriverPromotionActivity!=null){
 				return userInfo.getBindDriverId();
 			}
@@ -1270,14 +1279,10 @@
 		if(Integer.valueOf(String.valueOf(map.get("state"))) == 11){
 			map.put("state", map.get("oldState"));
 		}
-		if(Integer.valueOf(String.valueOf(map.get("state"))) ==7 &&  (map.get("responsibilityType")==null || Integer.valueOf(String.valueOf(map.get("responsibilityType")))<4)){
-			map.put("appealButton", 1);
-		}
 		if(map.get("abnormalIntro")!=null){
 			map.put("appealStatus", 1);
 		}
-		
-		
+
 		if(Integer.valueOf(String.valueOf(map.get("state"))) != 8 && Integer.valueOf(String.valueOf(map.get("state"))) != 9){
 			map.put("redPacketMoney", null);
 			map.put("couponMoney", null);
@@ -2348,7 +2353,12 @@
 			//添加收入
 			Map<String, Object> map = incomeService.saveIncome(orderPrivateCar.getId(), 1, orderPrivateCar.getOrderMoney());
 			orderPrivateCar.setSplitAllocation(JSON.toJSONString(map));
-			
+
+
+			this.updateAllColumnById(orderPrivateCar);
+			promotion(orderPrivateCar.getId());
+
+
 			// TODO: 2020/5/24 这里需要给司机和用户推送订单状态
 			new Thread(new Runnable() {
 				@Override
@@ -2376,8 +2386,12 @@
 			resultUtil = appOrderController.placeAnOrder(new BigDecimal(orderMoney), 4, orderId, 6, integer);
 			
 		}
-		
-		this.updateAllColumnById(orderPrivateCar);
+
+		if(payType != 3){
+			this.updateAllColumnById(orderPrivateCar);
+		}
+
+
 		return resultUtil;
 	}
 	
@@ -2659,7 +2673,7 @@
 				OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
 				List<PushOrder> querys = pushOrderService.querys(null, 2, openCity.getId());//获取需要推送的次数
 				int time = 0;
-				for (int i = 1; i <= querys.size() + 5; i++) {
+				for (int i = 1; i <= querys.size() + 15; i++) {
 					int finalI = i;
 					PushOrder pushOrder = querys.stream().filter(s -> s.getType() == (finalI <= 3 ? finalI : 3)).findFirst().orElse(null);
 					time += pushOrder.getPushTime() * 1000;
@@ -2823,7 +2837,7 @@
 					OpenCity openCity = openCityService.openCity1(startLon.toString(), startLat.toString());
 					List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
 					//整轮派单结束,若无司机接单,系统自动增加派单5轮,若增加5轮后任无司机接单,则系统结束派单,乘客端显示无司机接单、是否再次打车
-					for (int i = 1; i <= querys.size() + 5; i++) {
+					for (int i = 1; i <= querys.size() + 15; i++) {
 						OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(id);
 						if (null == orderPrivateCar || orderPrivateCar.getState() > 1) {
 							break;
@@ -2856,12 +2870,13 @@
 							}
 						}
 						Thread.sleep(pushOrder.getPushTime() * 1000);//设置等待时间
-						Integer state = orderPrivateCarMapper.selectById(orderPrivateCar.getId()).getState();
+						OrderPrivateCar orderPrivateCar1 = orderPrivateCarMapper.selectById(orderPrivateCar.getId());
+						Integer state =orderPrivateCar1.getState();
 						if (state > 1) {
 							orderIds.remove(orderPrivateCar.getId());
 							break;
 						}
-						if (i == querys.size() + 5) {
+						if (i == querys.size() + 15) {
 							pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
 							orderIds.remove(orderPrivateCar.getId());
 						}
@@ -2894,7 +2909,7 @@
 					}
 					OpenCity openCity = openCityService.openCity1(orderPrivateCar.getStartLon().toString(), orderPrivateCar.getStartLat().toString());
 					List<PushOrder> querys = pushOrderService.querys(null, 1, openCity.getId());//获取需要推送的次数
-					for (int i = 1; i <= querys.size() + 5; i++) {
+					for (int i = 1; i <= querys.size() + 15; i++) {
 						OrderPrivateCar orderPrivateCar = orderPrivateCarMapper.selectById(id);
 						if (null == orderPrivateCar || orderPrivateCar.getState() > 1) {
 							break;
@@ -2937,7 +2952,7 @@
 								orderIds.remove(orderPrivateCar.getId());
 								return;
 							}
-							if (i == querys.size() + 5 && state == 1) {
+							if (i == querys.size() + 15 && state == 1) {
 								pushUtil.pushEndPush(1, orderPrivateCar.getUserId(), orderPrivateCar.getId(), 1);
 								orderIds.remove(orderPrivateCar.getId());
 							}
@@ -2972,15 +2987,20 @@
 		UserInfo userInfo = userInfoService.selectById(orderPrivateCar.getUserId());
 //		if(userInfo.getBindDriverId()!=null && userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){
 		// 开始绑定的  后面到期也结算
+		System.out.println("eeeee+"+orderPrivateCar.getPromotionDriverId());
 		if(orderPrivateCar.getPromotionDriverId()!=null ){
 			String registAreaCode = userInfo.getRegistAreaCode();
-			TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).ge("startTime", new Date()).lt("endTime", new Date()).last("AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
+			TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 1 + ", bizType) limit 1"));
+			System.out.println("ddddd"+tDriverPromotionActivity);
 			if(tDriverPromotionActivity!=null){
 				Double payMoney = orderPrivateCar.getPayMoney();
+				System.out.println(payMoney);
 				BigDecimal bigDecimal = tDriverPromotionActivity.getCommissionRatio().divide(new BigDecimal(100), 2, RoundingMode.HALF_UP).multiply(new BigDecimal(payMoney)).setScale(2, RoundingMode.HALF_UP);
+				System.out.println(bigDecimal);
 				orderPrivateCar.setPromotionDriverId(userInfo.getBindDriverId());
 				orderPrivateCar.setPromotionMoney(bigDecimal);
 				orderPrivateCar.setPromotionActivityId(tDriverPromotionActivity.getId());
+				orderPrivateCar.setSuccessTime(new Date());
 				this.baseMapper.updateById(orderPrivateCar);
 			}
 		}

--
Gitblit v1.7.1