Pu Zhibing
2025-11-24 159186d038c5bf296e2a9fed601e39eb931ff6dd
修改bug
6个文件已修改
112 ■■■■■ 已修改文件
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/AppDriverRideController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/dao/mapping/OrderTravelMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/AppDriverRideController.java
@@ -190,10 +190,10 @@
                SaveStaffNodeRequest request = new SaveStaffNodeRequest();
                request.setMobile(user2.getPhone());
                request.setEntercode(tCompany.getEnterCode());
                request.setEmpName(userInfo.getName());
                request.setEmpNickname(userInfo.getName());
                request.setEmpName(userInfo.getNickName());
                request.setEmpNickname(userInfo.getNickName());
                request.setLoginNo(userInfo.getPhone());
                request.setEmpSex(userInfo.getSex() == 1 ? "男" : "女");
                request.setEmpSex(null != userInfo.getSex() && userInfo.getSex() == 1 ? "男" : "女");
                request.setMphone(userInfo.getPhone());
                request.setEmail(userInfo.getPhone() + "@qyt.com");
                request.setDeptId(0);
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java
@@ -742,7 +742,7 @@
                    request.setEmpName(tDriver.getName());
                    request.setEmpNickname(tDriver.getName());
                    request.setLoginNo(tDriver.getPhone());
                    request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
                    request.setEmpSex(null != tDriver.getSex() && tDriver.getSex() == 1 ? "男" : "女");
                    request.setMphone(tDriver.getPhone());
                    request.setEmail(tDriver.getPhone() + "@qyt.com");
                    request.setDeptId(0);
@@ -864,7 +864,7 @@
                request.setEmpName(tDriver.getName());
                request.setEmpNickname(tDriver.getName());
                request.setLoginNo(tDriver.getPhone());
                request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
                request.setEmpSex(null != tDriver.getSex() && tDriver.getSex() == 1 ? "男" : "女");
                request.setMphone(tDriver.getPhone());
                request.setEmail(tDriver.getPhone() + "@qyt.com");
                request.setDeptId(0);
@@ -1018,7 +1018,7 @@
                    request.setEmpName(tDriver.getName());
                    request.setEmpNickname(tDriver.getName());
                    request.setLoginNo(tDriver.getPhone());
                    request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女");
                    request.setEmpSex(null != tDriver.getSex() && tDriver.getSex() == 1 ? "男" : "女");
                    request.setMphone(tDriver.getPhone());
                    request.setEmail(tDriver.getPhone() + "@qyt.com");
                    request.setDeptId(0);
@@ -1648,7 +1648,7 @@
                                saveStaffNodeRequest.setEmpName(driver.getName());
                                saveStaffNodeRequest.setEmpNickname(driver.getName());
                                saveStaffNodeRequest.setLoginNo(driver.getPhone());
                                saveStaffNodeRequest.setEmpSex(driver.getSex() == 1 ? "男" : "女");
                                saveStaffNodeRequest.setEmpSex(null != driver.getSex() && driver.getSex() == 1 ? "男" : "女");
                                saveStaffNodeRequest.setMphone(driver.getPhone());
                                saveStaffNodeRequest.setEmail(driver.getPhone() + "@qyt.com");
                                saveStaffNodeRequest.setDeptId(0);
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/UserMgrController.java
@@ -219,7 +219,7 @@
            request1.setEmpName(user.getName());
            request1.setEmpNickname(user.getName());
            request1.setLoginNo(user.getAccount());
            request1.setEmpSex(user.getSex() == 1 ? "男" : "女");
            request1.setEmpSex(null != user.getSex() && user.getSex() == 1 ? "男" : "女");
            request1.setMphone(user.getPhone());
            request1.setEmail(user.getPhone() + "@qyt.com");
            request1.setDeptId(0);
@@ -284,7 +284,7 @@
            request1.setEmpName(user.getName());
            request1.setEmpNickname(user.getName());
            request1.setLoginNo(user.getAccount());
            request1.setEmpSex(user.getSex() == 1 ? "男" : "女");
            request1.setEmpSex(null != user.getSex() && user.getSex() == 1 ? "男" : "女");
            request1.setMphone(user.getPhone());
            request1.setEmail(user.getPhone() + "@qyt.com");
            request1.setDeptId(0);
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/controller/rideCommentController.java
@@ -1,5 +1,6 @@
package com.stylefeng.guns.modular.shunfeng.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.shunfeng.model.*;
@@ -26,6 +27,7 @@
import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil;
import com.stylefeng.guns.modular.system.util.qianyuntong.model.*;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@@ -37,11 +39,16 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
/**
 * 顺风车相关接口
 */
@Slf4j
@Api(tags = "顺风车相关接口")
@Controller
@RequestMapping("/api/rideComment")
@@ -348,7 +355,8 @@
            } catch (Exception e1) {
                e1.printStackTrace();
            }
            Double distance=Double.valueOf(map1.get("distance"))/1000;//距离公里
            log.info("顺风车预估里程:{}", JSON.toJSONString(map1));
            Double distance = new BigDecimal(map1.get("distance")).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();//距离公里
            Integer distanceType=1;
            //距离类型(1-100==1,100-200==2,200-500==3,500-800==4,800以上==5)
            if(distance<100){
@@ -365,8 +373,9 @@
            ParamRide paramRide=paramRideService.selectOne(new EntityWrapper<ParamRide>().eq("type",1).eq("distanceType",distanceType));
            Double price=0d;
            if(paramRide!=null){
                log.info("获取的价格配置规则:{}", JSON.toJSONString(paramRide));
                JSONObject jsonObject =JSONObject.fromObject(paramRide.getContext());
                String priceStr=jsonObject.getString("person"+num+"");
                String priceStr=jsonObject.getString("person"+num);
                if(priceStr!=null){
                    price=Double.valueOf(priceStr)*distance;
                }
@@ -828,9 +837,11 @@
            /*查看这个订单是否在进行中*/
            OrderRide orderRide=orderRideService.selectById(orderId);
            if(orderRide!=null){
                /*查询该订单是否已经取消*/
                if(orderRide.getState()==6){
                    return ResultUtil.error("该订单已取消");
                if(orderRide.getState() == 4){
                    return ResultUtil.error("订单行程中,不能取消订单");
                }
                if(orderRide.getState() == 6){
                    return ResultUtil.error("订单已取消,不能重复操作");
                }
                //用户取消给司机推送
                if(orderRide.getDriverId()!=null) {
@@ -843,10 +854,8 @@
            //取消司机行程
            if(orderRide.getTravelId()!=null){
                OrderTravel orderTravel=orderTravelService.selectById(orderRide.getTravelId());
                if(orderTravel.getState()!=6){
                    orderTravel.setState(6);
                    orderTravelService.updateById(orderTravel);
                }
                orderTravel.setState(2);
                orderTravelService.updateById(orderTravel);
            }
            return ResultUtil.success("");
        } catch (Exception e) {
@@ -899,31 +908,34 @@
                //中台订单退款操作
                if(ToolUtil.isNotEmpty(orderRide.getZttravelId())){
                    TradeOrderRefundRequest request = new TradeOrderRefundRequest();
                    request.setPartnerPayId(orderRide.getZttravelId());
                    request.setPayId(financial.getLsType());
                    request.setRefundTotalFee(money + "");
                    request.setRemark("顺风车订单取消退款");
                    request.setRefundType("RF");
                    ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 0, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>());
                    threadPoolExecutor.execute(()->{
                        TradeOrderRefundRequest request = new TradeOrderRefundRequest();
                        request.setPartnerPayId(orderRide.getZttravelId());
                        request.setPayId(financial.getLsType());
                        request.setRefundTotalFee(money + "");
                        request.setRemark("顺风车订单取消退款");
                        request.setRefundType("RF");
                    RefundInfoRequest refundInfo = new RefundInfoRequest();
                    refundInfo.setPayItemId(orderRide.getZttravelId());
                    refundInfo.setPayId(financial.getLsType());
                    refundInfo.setTradeFee(money + "");
                    request.setRefundInfos(new ArrayList<RefundInfoRequest>(){{
                        add(refundInfo);
                    }});
                    TradeOrderRefund tradeOrderRefund = OrderUtil.tradeOrderRefund(request);
                    //退款通知
                    OrderRefundNoticeRequest request2 = new OrderRefundNoticeRequest();
                    request2.setOrderId(orderRide.getZttravelId());
                    request2.setRefundPayNum(tradeOrderRefund.getRefundId());
                    request2.setRefundType("5");
                    request2.setApplyRefundCharge(BigDecimal.valueOf(orderRide.getMoney()));
                    request2.setActualRefundCharge(BigDecimal.valueOf(orderRide.getMoney()));
                    request2.setRefundAccount(userInfo.getOnconUUID());
                    request2.setRemark("顺风车订单取消退款");
                    OrderUtil.orderRefundNotice(request2);
                        RefundInfoRequest refundInfo = new RefundInfoRequest();
                        refundInfo.setPayItemId(orderRide.getZttravelId());
                        refundInfo.setPayId(financial.getLsType());
                        refundInfo.setTradeFee(money + "");
                        request.setRefundInfos(new ArrayList<RefundInfoRequest>(){{
                            add(refundInfo);
                        }});
                        TradeOrderRefund tradeOrderRefund = OrderUtil.tradeOrderRefund(request);
                        //退款通知
                        OrderRefundNoticeRequest request2 = new OrderRefundNoticeRequest();
                        request2.setOrderId(orderRide.getZttravelId());
                        request2.setRefundPayNum(tradeOrderRefund.getRefundId());
                        request2.setRefundType("5");
                        request2.setApplyRefundCharge(BigDecimal.valueOf(orderRide.getMoney()));
                        request2.setActualRefundCharge(BigDecimal.valueOf(orderRide.getMoney()));
                        request2.setRefundAccount(userInfo.getOnconUUID());
                        request2.setRemark("顺风车订单取消退款");
                        OrderUtil.orderRefundNotice(request2);
                    });
                }
@@ -955,7 +967,8 @@
            throw new RuntimeException(e);
        }
        orderRide.setState(6);//取消状态
        orderRideService.updateById(orderRide);
        orderRide.setTravelId(null);
        orderRideService.updateAllColumnById(orderRide);
    }
@@ -1025,6 +1038,9 @@
            }
            if(orderTravel.getState()==6){
                return ResultUtil.error("该订单已取消");
            }
            if(orderTravel.getState()==4){
                return ResultUtil.error("出行中不能取消订单");
            }
            DriverRide driverRide=driverRideService.selectById(orderTravel.getDriverId());
            if(orderTravel.getServiceMoney()!=null && orderTravel.getServiceMoney()>0){
@@ -1132,7 +1148,7 @@
            }
            OrderRide orderRide=orderRideService.selectById(userOrderId);
            if(orderRide!=null && orderRide.getState()==6){
                return  ResultUtil.error("用户已取消该行程");
                return ResultUtil.error("用户已取消该行程");
            }
            UserInfo userInfo=userInfoService.selectById(driverRide.getUserId());
            if(orderTravel!=null){
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/shunfeng/dao/mapping/OrderTravelMapper.xml
@@ -26,12 +26,11 @@
    <!--顺风车司机订单行程 type :1待处理的订单,2根据线路、时间,人数综合匹配排序 3按时间排序,4距离最近排序 and r.startTime>=now()-->
    <select id="getOrderTravel" resultType="com.stylefeng.guns.modular.shunfeng.model.vo.OrderRideVo">
        select r.*,calculate_distance(#{lat},#{lon},r.startLat, r.startLon)  as distance,d.totalOrders,u.sex,u.avatar as headImg,u.nickName as name,
        r.id as driverOrderId,i.id as userOrderId, r.startLon as lon, r.startLat as lat, if(e.id is null, 0, 1) as invitation
        r.id as driverOrderId,i.id as userOrderId, r.startLon as lon, r.startLat as lat, IF((SELECT COUNT(1) FROM app_order_invitation WHERE orderRideId = #{id} AND orderTravelId = r.id) = 0, 0, 1) as invitation
        from app_order_travel r
        left join app_order_ride i on i.travelId=r.id
        left join t_user u on u.driverId = r.driverId
        left join app_driver_ride d on d.id=r.driverId
        left join app_order_invitation e on e.orderRideId = #{id} and e.orderTravelId = r.id
        <where>
            <if test="driverId!=null">
                and r.driverId = #{driverId}
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -2642,14 +2642,15 @@
            paymentRecordService.updateById(query);
            //非追缴单才需要记录收入
            if(0 == orderPrivateCar.getRecoveryOrder()){
            if(null != orderPrivateCar.getRecoveryOrder() && 0 == orderPrivateCar.getRecoveryOrder()){
                //添加收入
                Double orderMoney = (2 == orderPrivateCar.getAbnormal() && 2 == orderPrivateCar.getAbnormalStatus() ? orderPrivateCar.getResponsibilityMoney().doubleValue() : orderPrivateCar.getOrderMoney());
                Map<String, Object> map = incomeService.saveIncome(orderPrivateCar.getId(), 1, orderMoney);
                orderPrivateCar.setSplitAllocation(JSON.toJSONString(map));
            }
            //待审核的异常单修改状态为已关闭
            if(2 == orderPrivateCar.getAbnormal() && 1 == orderPrivateCar.getAbnormalStatus()){
            if(null != orderPrivateCar.getAbnormal() && 2 == orderPrivateCar.getAbnormal() &&
                    null != orderPrivateCar.getAbnormalStatus() && 1 == orderPrivateCar.getAbnormalStatus()){
                orderPrivateCar.setAbnormalStatus(3);
                orderPrivateCar.setResponsibilityMoney(new BigDecimal(orderPrivateCar.getOrderMoney()));
                orderPrivateCar.setResponsibilityType(3);