package com.xiaopeng.api.feignClient.vehicleConvoy;
|
|
import com.xiaopeng.api.dto.operation.VehiclePositionByVinDto;
|
import com.xiaopeng.api.dto.vehicleConvoy.ServiceVehicleListDto;
|
import com.xiaopeng.api.dto.vehicleConvoy.UpdateVehicleStateDto;
|
import com.xiaopeng.api.factory.vehicleConvoy.XpVehicleClientFallbackFactory;
|
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
|
import com.xiaopeng.api.vo.vehicleConvoy.VehicleDoorStatusVo;
|
import com.xiaopeng.common.core.domain.R;
|
import com.xiaopeng.common.core.dto.ServiceNameConstantsEnum;
|
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* 车辆Feign客户端
|
*
|
* @author mitao
|
*/
|
@FeignClient(contextId = "XpVehicleClient",
|
value = ServiceNameConstantsEnum.XP_VEHICLE_CONVOY_SERVICE,
|
fallbackFactory = XpVehicleClientFallbackFactory.class)
|
public interface XpVehicleClient {
|
|
/**
|
* 根据ID列表批量查询车辆信息
|
*
|
* @param ids 车辆ID列表
|
* @return 车辆列表
|
*/
|
@PostMapping("/logan/inner/vehicle/listByIds")
|
R<List<XpVehicle>> listByIds(@RequestBody List<Long> ids);
|
/**
|
* 查询车辆列表
|
*
|
* @return 车辆列表
|
*/
|
@PostMapping("/logan/inner/vehicle/listVehicle")
|
R<List<XpVehicle>> listVehicle();
|
/**
|
* 根据ID查询车辆信息
|
*
|
* @param id 车辆ID
|
* @return 车辆
|
*/
|
@GetMapping("/logan/inner/vehicle/queryById")
|
R<XpVehicle> queryById(@RequestParam Long id);
|
/**
|
* 修改车辆信息
|
*
|
* @param xpVehicle 车辆信息
|
* @return 车辆
|
*/
|
@PostMapping("/logan/inner/vehicle/updateVehicleById")
|
R<String> updateVehicleById(@RequestBody XpVehicle xpVehicle);
|
|
/**
|
* 根据车牌号查询车辆信息
|
* @param plateNumber
|
* @return
|
*/
|
@PostMapping("/logan/inner/vehicle/listByPlateNumber")
|
R<List<XpVehicle>> listByPlateNumber(@RequestParam("plateNumber") String plateNumber);
|
|
|
/**
|
* 根据围栏id查询空闲车辆
|
*
|
*/
|
@GetMapping("/logan/inner/vehicle/listByFenceId")
|
R<List<XpVehicle>> listByFenceId(@RequestParam("fenceId") Long fenceId);
|
|
/**
|
* 根据围栏id查询所有绑定车辆(不过滤状态)
|
*/
|
@GetMapping("/logan/inner/vehicle/listAllByFenceId")
|
R<List<XpVehicle>> listAllByFenceId(@RequestParam("fenceId") Long fenceId);
|
|
|
/**
|
* 查询车辆信息 进行筛选
|
*/
|
@PostMapping("/logan/inner/vehicle/queryVehiclePositionByVin")
|
R<List<String>> queryVehiclePositionByVin(@RequestBody VehiclePositionByVinDto dto);
|
|
/**
|
* 根据车辆vin查询车辆信息
|
*
|
* @param vehicleVin
|
* @return
|
*/
|
@GetMapping("/logan/inner/vehicle/findByVehicleVin")
|
R<XpVehicle> findByVehicleVin(@RequestParam("vehicleVin") String vehicleVin);
|
|
|
|
|
/**
|
* 根据车辆xpuid查询车辆信息
|
*
|
* @param xpuid
|
* @return
|
*/
|
@GetMapping("/logan/inner/vehicle/findByVehicleXpuId")
|
R<XpVehicle> findByVehicleXpuId(@RequestParam("xpuid") String xpuid);
|
|
/**
|
* 修改车辆状态
|
*
|
* @param updateVehicleStateDto
|
* @return
|
*/
|
@PostMapping("/logan/inner/vehicle/updateVehicleStatus")
|
R<?> updateVehicleStatus(@RequestBody UpdateVehicleStateDto updateVehicleStateDto);
|
|
/**
|
* 根据车辆id查询车辆所属的车队id
|
*
|
* @param vehicleId
|
* @return
|
*/
|
@GetMapping("/logan/inner/vehicle/findFleetIdByVehicleId")
|
R<Long> findFleetIdByVehicleId(@RequestParam Long vehicleId);
|
|
|
/**
|
* 获取车辆后备箱开关状态
|
* @param uid
|
* @param id
|
* @return
|
*/
|
@PostMapping("/logan/inner/vi/vehicle/getVehicleTrunkOpenStatus")
|
R<Boolean> getVehicleTrunkOpenStatus(@RequestParam("uid") Long uid, @RequestParam("id") Long id);
|
|
|
/**
|
* 分页获取运营车辆列表
|
* @param dto
|
* @return
|
*/
|
@PostMapping("/logan/inner/vehicle/getServiceVehicleList")
|
R<List<XpVehicle>> getServiceVehicleList(@RequestBody ServiceVehicleListDto dto);
|
|
|
|
/**
|
* 根据订单id查询四门三盖状态
|
* @param orderId
|
* @return
|
*/
|
@GetMapping("/logan/inner/vehicle/getVehicleDoorStatus/{orderId}")
|
R<VehicleDoorStatusVo> getVehicleDoorStatus(@PathVariable Long orderId);
|
}
|