From cb7bb59905f6ff335ca24ec6a963d0b17d979d79 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期一, 22 九月 2025 09:08:22 +0800 Subject: [PATCH] 修改 --- UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java | 55 +++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 35 insertions(+), 20 deletions(-) diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java index 725c6e7..36411db 100644 --- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java +++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java @@ -35,6 +35,7 @@ import org.springframework.util.CollectionUtils; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; +import org.springframework.util.StringUtils; import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; @@ -287,24 +288,24 @@ orderPrivateCar.setTravelTime(travelTime); orderPrivateCar.setOrderType(reservation); orderPrivateCar.setOrderSource(orderSource); + Driver driver2 = driverService.selectById(driverId); if(orderSource == 2){//扫码下单 - Driver driver = driverService.selectById(driverId); - if(null == driver){ + if(null == driver2){ return ResultUtil.error("司机信息有误,无法完成下单"); } - if(driver.getAuthState() == 1){ + if(driver2.getAuthState() == 1){ return ResultUtil.error("司机信息还未完成审核,无法完成下单"); } - if(driver.getAuthState() == 3){ + if(driver2.getAuthState() == 3){ return ResultUtil.error("司机账户已被冻结,无法提供服务"); } - if(driver.getAuthState() == 4){ + if(driver2.getAuthState() == 4){ return ResultUtil.error("司机信息未通过审核,无法提供服务"); } - if(driver.getState() == 1){ + if(driver2.getState() == 1){ return ResultUtil.error("司机还未上线,无法提供服务"); } - if(driver.getState() == 3){ + if(driver2.getState() == 3){ return ResultUtil.error("司机正在服务中,无法提供服务"); } List<DriverService> query = driverServiceService.query(driverId, 1); @@ -313,15 +314,15 @@ } orderPrivateCar.setDriverId(driverId); - orderPrivateCar.setCompanyId(driver.getFranchiseeId() != null && driver.getFranchiseeId() != 0 ? driver.getFranchiseeId() : ( - driver.getCompanyId() != null && driver.getCompanyId() != 0 ? driver.getCompanyId() : 1)); + orderPrivateCar.setCompanyId(driver2.getFranchiseeId() != null && driver2.getFranchiseeId() != 0 ? driver2.getFranchiseeId() : ( + driver2.getCompanyId() != null && driver2.getCompanyId() != 0 ? driver2.getCompanyId() : 1)); orderPrivateCar.setState(2); - orderPrivateCar.setCarId(driver.getCarId()); - CarService query1 = carServiceMapper.query(1, driver.getCarId()); + orderPrivateCar.setCarId(driver2.getCarId()); + CarService query1 = carServiceMapper.query(1, driver2.getCarId()); orderPrivateCar.setServerCarModelId(query1.getServerCarModelId()); orderPrivateCar.setSnatchOrderTime(new Date()); - driver.setState(3); - driverService.updateById(driver); + driver2.setState(3); + driverService.updateById(driver2); } // 查询城市的订单额度 OpenCity openCity = openCityService.selectOne(new EntityWrapper<OpenCity>() @@ -341,7 +342,17 @@ // 查询预估价格 ResultUtil<List<ServerCarModelWarpper>> listResultUtil = serverCarModelService.queryServerCarModel(startLon + "," + startLat, endLon + "," + endLat, 1); List<ServerCarModelWarpper> data = listResultUtil.getData(); - data = data.stream().filter(e -> serverCarModelId.equals(e.getId())).sorted(Comparator.comparing(ServerCarModelWarpper::getAmount)).collect(Collectors.toList()); + if(Objects.isNull(serverCarModelId)){ + //获取经营业务 + CarService query = new CarService(); + query.setCarId(driver2.getCarId()); + CarService service = carServiceMapper.selectOne(query); + if(Objects.nonNull(service)){ + serverCarModelId = service.getServerCarModelId(); + } + } + Integer finalServerCarModelId = serverCarModelId; + data = data.stream().filter(e -> finalServerCarModelId.equals(e.getId())).sorted(Comparator.comparing(ServerCarModelWarpper::getAmount)).collect(Collectors.toList()); if(Objects.nonNull(openCity) && !CollectionUtils.isEmpty(data) && BigDecimal.valueOf(data.get(0).getAmount()).compareTo(openCity.getOrderMagnitude()) > 0){ orderPrivateCar.setIsReassign(1); orderPrivateCar.setIsDelete(1); @@ -363,7 +374,9 @@ return ResultUtil.success(baseWarpper); }else { if(orderSource == 2){ - orderPrivateCar.setEstimatedPrice(data.get(0).getAmount()); + if(!CollectionUtils.isEmpty(data)){ + orderPrivateCar.setEstimatedPrice(data.get(0).getAmount()); + } }else { orderPrivateCar.setEstimatedPrice(data.get(carIndex).getAmount()); } @@ -1924,13 +1937,15 @@ transactionDetailsService.saveData(orderPrivateCar.getUserId(), "完成订单", query.getAmount(), 2, 1, 1, 1, query.getOrderId()); // orderPrivateCar.setState(8); orderPrivateCar.setPayType(type); - orderPrivateCar.setTransactionId(order_id); + if(!StringUtils.hasLength(orderPrivateCar.getTransactionId())){ + orderPrivateCar.setTransactionId(order_id); + } this.updateById(orderPrivateCar); - UserInfo userInfo = userInfoService.selectById(orderPrivateCar.getUserId()); - SysIntegral query1 = sysIntegralMapper.query(orderPrivateCar.getCompanyId()); - userInfo.setIntegral(userInfo.getIntegral() + (query.getAmount().intValue() * query1.getIntegral()));//积分 - userInfoService.updateById(userInfo); +// UserInfo userInfo = userInfoService.selectById(orderPrivateCar.getUserId()); +// SysIntegral query1 = sysIntegralMapper.query(orderPrivateCar.getCompanyId()); +// userInfo.setIntegral(userInfo.getIntegral() + (query.getAmount().intValue() * query1.getIntegral()));//积分 +// userInfoService.updateById(userInfo); //处理优惠券和红包 if(null != orderPrivateCar.getCouponId()){ -- Gitblit v1.7.1