修改副驾绑定
This commit is contained in:
+55
-9
@@ -2921,14 +2921,16 @@ public class VehicleApplicationService {
|
||||
*
|
||||
* @param vehicleDto
|
||||
* @return
|
||||
*
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer updatePilotDriver(VehicleDto vehicleDto) {
|
||||
if (vehicleDto.getVehicleId() == null) {
|
||||
throw new IllegalArgumentException("车辆ID不能为空");
|
||||
}
|
||||
|
||||
boolean hasPilot1 = StringUtils.hasText(vehicleDto.getPilot1());
|
||||
boolean hasPilot2 = StringUtils.hasText(vehicleDto.getPilot2());
|
||||
boolean hasPilot1 = StringUtils.hasText(vehicleDto.getPilot1Id());
|
||||
boolean hasPilot2 = StringUtils.hasText(vehicleDto.getPilot2Id());
|
||||
|
||||
// 两个都传了
|
||||
if (hasPilot1 && hasPilot2) {
|
||||
@@ -2938,17 +2940,61 @@ public class VehicleApplicationService {
|
||||
if (!hasPilot1 && !hasPilot2) {
|
||||
throw new IllegalArgumentException("请选择副驾");
|
||||
}
|
||||
UserDriverDTO userDriverDTO = new UserDriverDTO();
|
||||
//将pilot1或是pilot2的id传给userDriverDTO,判断一下谁有值传谁
|
||||
userDriverDTO.setUserId(Long.valueOf(hasPilot1 ? vehicleDto.getPilot1Id() : vehicleDto.getPilot2Id()));
|
||||
userDriverDTO.setVehicleId(vehicleDto.getVehicleId());
|
||||
|
||||
Vehicle vehicle = vehicleMapper.selectById(vehicleDto.getVehicleId());
|
||||
String modifyPilotId = vehicleDto.getModifyPilotId();
|
||||
if (modifyPilotId != null){
|
||||
UserDriverDTO userDriverDTO1 = new UserDriverDTO();
|
||||
userDriverDTO1.setUserId(Long.valueOf(modifyPilotId));
|
||||
userDriverDTO1.setVehicleId(vehicleDto.getVehicleId());
|
||||
userServiceFeign.delectDriverBind(userDriverDTO1);
|
||||
}
|
||||
if (hasPilot1){
|
||||
|
||||
// 更新
|
||||
vehicleMapper.updatePilotDriver(vehicleDto);
|
||||
AjaxResult result = userServiceFeign.getDriverInfoByUserId(Long.valueOf(vehicleDto.getPilot1Id()));
|
||||
UserDriverPo driverInfo = null;
|
||||
if(result != null && "200".equals(String.valueOf(result.get("code")))){
|
||||
// 提取数据
|
||||
driverInfo = JSONUtil.toBean(JSONUtil.toJsonStr(result.get("data")), UserDriverPo.class);
|
||||
vehicle.setPilot1(driverInfo.getUserName());
|
||||
vehicle.setPilot1Id(vehicleDto.getPilot1Id());
|
||||
|
||||
// 更新车辆信息到数据库
|
||||
vehicleDomainService.updateVehicle(vehicle);
|
||||
|
||||
// 在user库中的driver_vehicle_bind表中添加一条绑定信息
|
||||
UserDriverDTO userDriverDTO = new UserDriverDTO();
|
||||
userDriverDTO.setUserId(Long.valueOf(vehicleDto.getPilot1Id()));
|
||||
userDriverDTO.setVehicleId(vehicleDto.getVehicleId());
|
||||
userDriverDTO.setVehicleLicensePlateNumber(vehicle.getVehicleLicensePlateNumber());
|
||||
userDriverDTO.setBindSource(2); // 2-副驾绑定
|
||||
userServiceFeign.bindVehicleForHome(userDriverDTO);
|
||||
}
|
||||
|
||||
userServiceFeign.bindVehicle(userDriverDTO);
|
||||
} else if (hasPilot2) {
|
||||
// 如果是pilot2的情况,需要类似处理
|
||||
AjaxResult result = userServiceFeign.getDriverInfoByUserId(Long.valueOf(vehicleDto.getPilot2Id()));
|
||||
UserDriverPo driverInfo = null;
|
||||
if(result != null && "200".equals(String.valueOf(result.get("code")))){
|
||||
// 提取数据
|
||||
driverInfo = JSONUtil.toBean(JSONUtil.toJsonStr(result.get("data")), UserDriverPo.class);
|
||||
vehicle.setPilot2(driverInfo.getUserName());
|
||||
vehicle.setPilot2Id(vehicleDto.getPilot2Id());
|
||||
|
||||
// 更新车辆信息到数据库
|
||||
vehicleDomainService.updateVehicle(vehicle);
|
||||
|
||||
// 在user库中的driver_vehicle_bind表中添加一条绑定信息
|
||||
UserDriverDTO userDriverDTO = new UserDriverDTO();
|
||||
userDriverDTO.setUserId(Long.valueOf(vehicleDto.getPilot2Id()));
|
||||
userDriverDTO.setVehicleId(vehicleDto.getVehicleId());
|
||||
userDriverDTO.setVehicleLicensePlateNumber(vehicle.getVehicleLicensePlateNumber());
|
||||
userDriverDTO.setBindSource(2); // 2-副驾绑定
|
||||
|
||||
userServiceFeign.bindVehicleForHome(userDriverDTO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return 1;
|
||||
|
||||
|
||||
+14
@@ -28,6 +28,19 @@ public interface UserServiceFeign {
|
||||
@PostMapping("/userDriverApi/bindVehicle")
|
||||
public AjaxResult bindVehicle(@RequestBody UserDriverDTO userDriverDTO);
|
||||
|
||||
/**
|
||||
* 添加绑定关系
|
||||
*/
|
||||
@PostMapping("/userDriverApi/bindVehicleForHome")
|
||||
public AjaxResult bindVehicleForHome(@RequestBody UserDriverDTO userDriverDTO);
|
||||
|
||||
/**
|
||||
* 删除司机绑定关系
|
||||
*/
|
||||
@ApiOperation("删除司机绑定关系")
|
||||
@PostMapping("/driverVehicleBindApi/delectDriverBind")
|
||||
void delectDriverBind(@RequestBody UserDriverDTO userDriverDTO);
|
||||
|
||||
/**
|
||||
* @Description 绑定车辆
|
||||
* @Author Alex
|
||||
@@ -204,4 +217,5 @@ public interface UserServiceFeign {
|
||||
@GetMapping("/driverVehicleBindApi/isVehicleBinding/{vehicleLicensePlateNumber}")
|
||||
R<Boolean> isVehicleBinding(
|
||||
@PathVariable("vehicleLicensePlateNumber") String vehicleLicensePlateNumber);
|
||||
|
||||
}
|
||||
|
||||
@@ -437,4 +437,7 @@ public class VehicleDto extends BaseVOEntity implements Serializable
|
||||
|
||||
@ApiModelProperty(value = "车辆主体")
|
||||
private Integer vehicleBody;
|
||||
|
||||
@ApiModelProperty(value = "被修改副驾id")
|
||||
private String modifyPilotId;
|
||||
}
|
||||
|
||||
+2
-2
@@ -69,8 +69,8 @@ public class VehicleApi extends BaseController
|
||||
* 车辆绑定副驾
|
||||
*/
|
||||
@Log(title = "车辆管理-车辆绑定副驾", description = "车辆绑定副驾", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/bindVehicle")
|
||||
public R<Integer> bindVehicle(@RequestBody VehicleDto vehicleDto){
|
||||
@GetMapping("/bindVehicle")
|
||||
public R<Integer> bindVehicle(VehicleDto vehicleDto){
|
||||
return R.ok(vehicleApplicationService.updatePilotDriver(vehicleDto));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user