xuhy
2026-03-01 a7ddbb6b72617d4dcad8933e09bb7caf8bb382f8
车辆运维的车辆定位
6个文件已修改
34 ■■■■■ 已修改文件
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/mapper/XpVehicleMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/model/vo/XpVehicleVO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/IXpVehicleService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/impl/XpVehicleServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/resources/mapper/vehicleConvoy/XpVehicleMapper.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java
@@ -605,7 +605,7 @@
     */
    @ApiOperation(value = "车辆管理-地图", tags = {"运维APP-车辆管理"})
    @PostMapping("/api/v1/vehicle/vehicleMap")
    public R<PageInfo<XpVehicle>> vehicleMap(@RequestBody VehicleMapQuery query) {
    public R<PageInfo<XpVehicleVO>> vehicleMap(@RequestBody VehicleMapQuery query) {
        return R.ok(xpVehicleService.pageList(query));
    }
    /**
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/mapper/XpVehicleMapper.java
@@ -63,7 +63,7 @@
     * @param query    查询参数
     * @return 车辆列表
     */
    List<XpVehicle> pageList(@Param("pageInfo") PageInfo<XpVehicle> pageInfo, @Param("query") VehicleMapQuery query);
    List<XpVehicleVO> pageList(@Param("pageInfo") PageInfo<XpVehicleVO> pageInfo, @Param("query") VehicleMapQuery query);
    /**
     * 在库车辆管理分页查询
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/model/vo/XpVehicleVO.java
@@ -27,4 +27,10 @@
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private LocalDate nextMaintenanceTime;
    @ApiModelProperty(value = "车辆经度")
    private Double longitude;
    @ApiModelProperty(value = "车辆纬度")
    private Double latitude;
}
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/IXpVehicleService.java
@@ -40,7 +40,7 @@
     *
     * @return 车辆列表
     */
    PageInfo<XpVehicle> pageList(VehicleMapQuery query);
    PageInfo<XpVehicleVO> pageList(VehicleMapQuery query);
    /**
     * 根据车牌号查询车辆信息
xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/service/impl/XpVehicleServiceImpl.java
@@ -37,6 +37,7 @@
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.data.mongodb.core.geo.GeoJsonPoint;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
@@ -127,8 +128,8 @@
    }
    @Override
    public PageInfo<XpVehicle> pageList(VehicleMapQuery query) {
        PageInfo<XpVehicle> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
    public PageInfo<XpVehicleVO> pageList(VehicleMapQuery query) {
        PageInfo<XpVehicleVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        if(StringUtils.isNotBlank(query.getStatus())){
            query.setStatusList(Arrays.asList(query.getStatus().split(",")));
@@ -136,7 +137,20 @@
        if(StringUtils.isNotBlank(query.getElectronicId())){
            query.setElectronicIdList(Arrays.asList(query.getElectronicId().split(",")));
        }
        List<XpVehicle> list = this.baseMapper.pageList(pageInfo, query);
        List<XpVehicleVO> list = this.baseMapper.pageList(pageInfo, query);
        if (CollectionUtils.isEmpty(list)){
            return pageInfo;
        }
        for (XpVehicleVO xpVehicleVO : list) {
            GeoJsonPoint geoJsonPoint = redisService.getCacheObject("vehiclePosition:" + xpVehicleVO.getVehicleVin());
            if (Objects.nonNull(geoJsonPoint)){
                // 获取经纬度
                xpVehicleVO.setLongitude(geoJsonPoint.getX());
                xpVehicleVO.setLatitude(geoJsonPoint.getY());
            }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
xp-robotaxi-vehicle-convoy-boot/src/main/resources/mapper/vehicleConvoy/XpVehicleMapper.xml
@@ -47,7 +47,7 @@
        GROUP BY DATE(create_time)
        ORDER BY date ASC
    </select>
    <select id="pageList" resultType="com.xiaopeng.api.model.vehicleConvoy.XpVehicle">
    <select id="pageList" resultType="com.xiaopeng.vehicleConvoy.model.vo.XpVehicleVO">
        SELECT <include refid="Base_Column_List"></include>
        FROM xp_vehicle
        <where>