From bf2acefcf5ba801d3e4a4f507c5f064fc93625cc Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 21 八月 2025 00:25:09 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/QianYunTong --- DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java | 49 ++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 42 insertions(+), 7 deletions(-) diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java index 2da4352..2efbc8a 100644 --- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java +++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java @@ -20,12 +20,10 @@ import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityWarpper; import com.stylefeng.guns.modular.specialTrain.dao.OrderPrivateCarMapper; import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar; -import com.stylefeng.guns.modular.system.dao.PhoneMapper; -import com.stylefeng.guns.modular.system.dao.RegionMapper; -import com.stylefeng.guns.modular.system.dao.SysIntegralMapper; -import com.stylefeng.guns.modular.system.dao.UserInfoMapper; +import com.stylefeng.guns.modular.system.dao.*; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; +import com.stylefeng.guns.modular.system.service.impl.CarServiceImpl; import com.stylefeng.guns.modular.system.util.*; import com.stylefeng.guns.modular.system.warpper.BaseWarpper; import com.stylefeng.guns.modular.system.warpper.MerchantCouponListWarpper; @@ -43,6 +41,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.*; import java.util.stream.Collectors; @@ -151,11 +150,18 @@ @Autowired private QrCodeConfiguration qrCodeConfiguration; + @Autowired + private TDriverPromotionActivityService driverPromotionActivityService; + @Value("${pushMinistryOfTransport}") private boolean pushMinistryOfTransport; @Value("${callbackPath}") private String callbackPath; + @Autowired + private CarModelMapper carModelMapper; + @Autowired + private CarServiceImpl carServiceImpl; /** @@ -292,7 +298,13 @@ //还原座位数 LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId()); - lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber()); + if(1 == orderCrossCity.getTravelMode()){ + lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber()); + }else{ + Car car = carServiceImpl.selectById(driver.getCarId()); + CarModel carModel = carModelMapper.selectById(car.getCarModelId()); + lineShiftDriver.setLaveSeat(carModel.getSeat() - 1); + } lineShiftDriver.setLaveSeatNumber( (ToolUtil.isNotEmpty(lineShiftDriver.getLaveSeatNumber()) ? lineShiftDriver.getLaveSeatNumber() + "," : "") + orderCrossCity.getSeatNumber() @@ -301,7 +313,7 @@ //修改司机空闲状态 List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.queryWithin30Minutes(orderCrossCity.getDriverId(), 2, 3, 4, 5, 11); - if(orderCrossCities.size() == 0){ + if(orderCrossCities.size() <= 1){ driver = driverService.selectById(orderCrossCity.getDriverId()); driver.setState(2); driverService.updateById(driver); @@ -370,6 +382,7 @@ pushUtil.removeTask(orderId, 3);//删除定时任务,结束推送数据 systemNoticeService.addSystemNotice(1, "司机已结束本次行程,谢谢使用", orderCrossCity.getUserId(), 1); + promotion(orderId); break; } this.updateById(orderCrossCity); @@ -385,7 +398,29 @@ return ResultUtil.success(); } + public void promotion(Integer orderId) { + OrderCrossCity orderCrossCity = this.baseMapper.selectById(orderId); + UserInfo userInfo = userInfoMapper.selectById(orderCrossCity.getUserId()); + if(orderCrossCity.getPromotionDriverId()!=null ){ + String registAreaCode = userInfo.getRegistAreaCode(); + TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", registAreaCode).le("startTime", new Date()).ge("endTime", new Date()).last("AND FIND_IN_SET(" + 3 + ", bizType) limit 1")); + System.out.println("ddddd"+tDriverPromotionActivity); + if(tDriverPromotionActivity!=null){ + Double payMoney = orderCrossCity.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); + orderCrossCity.setPromotionDriverId(userInfo.getBindDriverId()); + orderCrossCity.setPromotionMoney(bigDecimal); + orderCrossCity.setPromotionActivityId(tDriverPromotionActivity.getId()); + orderCrossCity.setSuccessTime(new Date()); + this.baseMapper.updateById(orderCrossCity); + } + } + + + } /** * 获取订单明细 * @param orderId @@ -915,7 +950,7 @@ String lat = orderPosition.getLat(); OrderCrossCity order = this.selectById(orderId); if(null == order){ - System.err.println("订单数据异常:" + orderId); + System.err.println("跨城订单数据异常:" + orderId); return false; } -- Gitblit v1.7.1