longz
2026-04-27 18c488ada25f028d01f68acd844ab38c61422ca3
线路目的地价格获取
5个文件已修改
60 ■■■■■ 已修改文件
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/dao/mapping/OrderCrossCityMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/model/OrderCrossCity.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/warpper/OrderCrossCityWarpper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java
@@ -44,14 +44,15 @@
            @ApiImplicitParam(value = "乘车人数", name = "peopleNumber", required = true, dataType = "int"),
            @ApiImplicitParam(value = "出行方式(1=拼车,2=包车)", name = "travelMode", required = true, dataType = "int"),
            @ApiImplicitParam(value = "线路id", name = "lineId", required = true, dataType = "int"),
            @ApiImplicitParam(value = "线路目的地id", name = "lineDestinationId", required = false, dataType = "int"),
            @ApiImplicitParam(value = "服务车型id", name = "serverCarModelId", required = true, dataType = "int"),
            @ApiImplicitParam(value = "车辆总座位数", name = "totalSeat", required = true, dataType = "int"),
            @ApiImplicitParam(value = "座位编号(1,3,4)", name = "seatNumber", required = true, dataType = "int")
    })
    public ResultUtil queryOrderMoney(String startLonLat, String endLonLat, Integer peopleNumber, Integer travelMode,
                                      Integer lineId, Integer serverCarModelId, Integer totalSeat, String seatNumber){
                                      Integer lineId, Integer lineDestinationId, Integer serverCarModelId, Integer totalSeat, String seatNumber){
        try {
            return orderCrossCityService.queryOrderMoney(startLonLat, endLonLat, peopleNumber, travelMode, lineId, serverCarModelId, totalSeat, seatNumber);
            return orderCrossCityService.queryOrderMoney(startLonLat, endLonLat, peopleNumber, travelMode, lineId, lineDestinationId, serverCarModelId, totalSeat, seatNumber);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/dao/mapping/OrderCrossCityMapper.xml
@@ -9,6 +9,7 @@
        <result column="serverCarModelId" property="serverCarModelId"/>
        <result column="driverId" property="driverId"/>
        <result column="lineId" property="lineId"/>
        <result column="lineDestinationId" property="lineDestinationId"/>
        <result column="lineShiftDriverId" property="lineShiftDriverId"/>
        <result column="carId" property="carId"/>
        <result column="orderNum" property="orderNum"/>
@@ -82,6 +83,7 @@
        serverCarModelId as serverCarModelId,
        driverId as driverId,
        lineId as lineId,
        lineDestinationId as lineDestinationId,
        lineShiftDriverId as lineShiftDriverId,
        carId as carId,
        orderNum as orderNum,
@@ -159,6 +161,7 @@
        serverCarModelId as serverCarModelId,
        driverId as driverId,
        lineId as lineId,
        lineDestinationId as lineDestinationId,
        lineShiftDriverId as lineShiftDriverId,
        carId as carId,
        orderNum as orderNum,
@@ -231,6 +234,7 @@
        serverCarModelId as serverCarModelId,
        driverId as driverId,
        lineId as lineId,
        lineDestinationId as lineDestinationId,
        lineShiftDriverId as lineShiftDriverId,
        carId as carId,
        orderNum as orderNum,
@@ -457,6 +461,7 @@
        serverCarModelId as serverCarModelId,
        driverId as driverId,
        lineId as lineId,
        lineDestinationId as lineDestinationId,
        lineShiftDriverId as lineShiftDriverId,
        carId as carId,
        orderNum as orderNum,
@@ -538,6 +543,7 @@
        a.serverCarModelId as serverCarModelId,
        a.driverId as driverId,
        a.lineId as lineId,
        a.lineDestinationId as lineDestinationId,
        a.lineShiftDriverId as lineShiftDriverId,
        a.carId as carId,
        a.orderNum as orderNum,
@@ -661,4 +667,4 @@
        boardingLat
        from t_order_cross_city where userId = #{uid}  and state in (8, 9) order by insertTime desc
    </select>
</mapper>
</mapper>
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/model/OrderCrossCity.java
@@ -40,6 +40,11 @@
    @TableField("lineId")
    private Integer lineId;
    /**
     * 线路目的地id
     */
    @TableField("lineDestinationId")
    private Integer lineDestinationId;
    /**
     * 预约班次的id
     */
    @TableField("lineShiftDriverId")
@@ -561,6 +566,14 @@
    public void setLineId(Integer lineId) {
        this.lineId = lineId;
    }
    public Integer getLineDestinationId() {
        return lineDestinationId;
    }
    public void setLineDestinationId(Integer lineDestinationId) {
        this.lineDestinationId = lineDestinationId;
    }
    public Integer getLineShiftDriverId() {
@@ -1171,6 +1184,7 @@
                ", serverCarModelId=" + serverCarModelId +
                ", driverId=" + driverId +
                ", lineId=" + lineId +
                ", lineDestinationId=" + lineDestinationId +
                ", lineShiftDriverId=" + lineShiftDriverId +
                ", carId=" + carId +
                ", orderNum='" + orderNum + '\'' +
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -8,6 +8,7 @@
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.account.controller.AppOrderController;
import com.stylefeng.guns.modular.crossCity.dao.LinePriceMapper;
import com.stylefeng.guns.modular.crossCity.dao.LineMapper;
import com.stylefeng.guns.modular.crossCity.dao.LineShiftDriverMapper;
import com.stylefeng.guns.modular.crossCity.dao.OrderCrossCityMapper;
import com.stylefeng.guns.modular.crossCity.model.Line;
@@ -70,6 +71,9 @@
    
    @Resource
    private LinePriceMapper linePriceMapper;
    @Resource
    private LineMapper lineMapper;
    
    @Resource
    private UserActivityDiscount1Mapper userActivityDiscount1Mapper;
@@ -234,7 +238,23 @@
     */
    @Override
    public ResultUtil queryOrderMoney(String startLonLat, String endLonLat, Integer peopleNumber, Integer travelMode, Integer lineId,
                                      Integer serverCarModelId, Integer totalSeat, String seatNumber) throws Exception {
                                      Integer lineDestinationId, Integer serverCarModelId, Integer totalSeat, String seatNumber) throws Exception {
        if (lineDestinationId != null) {
            Map<String, Object> destination = lineMapper.queryLineDestinationById(lineDestinationId, lineId);
            if (destination == null) {
                return ResultUtil.error("目的地不存在");
            }
            Object priceObj = (totalSeat != null && totalSeat <= 5) ? destination.get("price5") : destination.get("price7");
            if (priceObj == null) {
                return ResultUtil.error("目的地价格未配置");
            }
            double unitPrice = Double.valueOf(String.valueOf(priceObj));
            double totalPrice = new BigDecimal(unitPrice).multiply(new BigDecimal(peopleNumber)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
            Map<String, Object> map = new HashMap<>();
            map.put("distance", 0);
            map.put("price", totalPrice);
            return ResultUtil.success(map);
        }
        // TODO: 2023/11/4 无法修改
        Map<String, String> distance = gdMapElectricFenceUtil.getDistance(startLonLat, endLonLat, 1);//调用高德计算距离
        if (null != distance) {
@@ -1273,6 +1293,7 @@
        orderCrossCity.setServerCarModelId(orderCrossCityWarpper.getServerCarModelId());
        orderCrossCity.setDriverId(orderCrossCityWarpper.getDriverId());
        orderCrossCity.setLineId(orderCrossCityWarpper.getLineId());
        orderCrossCity.setLineDestinationId(orderCrossCityWarpper.getLineDestinationId());
        orderCrossCity.setLineShiftDriverId(orderCrossCityWarpper.getLineShiftDriverId());
        orderCrossCity.setCarId(orderCrossCityWarpper.getCarId());
        orderCrossCity.setOrderNum(this.getOrderNum(orderCrossCityWarpper.getDriverId(), orderCrossCityWarpper.getLineShiftDriverId()));
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/warpper/OrderCrossCityWarpper.java
@@ -15,6 +15,8 @@
    private Integer driverId;
    @ApiModelProperty(value = "线路id", required = true, dataType = "int")
    private Integer lineId;
    @ApiModelProperty(value = "线路目的地id(t_line_destination.id)", required = false, dataType = "int")
    private Integer lineDestinationId;
    @ApiModelProperty(value = "车辆id", required = true, dataType = "int")
    private Integer carId;
    @ApiModelProperty(value = "下单地点经度", required = true, dataType = "double")
@@ -84,6 +86,14 @@
        this.lineId = lineId;
    }
    public Integer getLineDestinationId() {
        return lineDestinationId;
    }
    public void setLineDestinationId(Integer lineDestinationId) {
        this.lineDestinationId = lineDestinationId;
    }
    public Integer getCarId() {
        return carId;
    }