换电工单生成防止重复、自动生成、自动完成
This commit is contained in:
parent
a6cfb9e4c9
commit
fcb6180bd2
@ -81,4 +81,13 @@ public interface MaintenanceFeignClient {
|
||||
*/
|
||||
@PostMapping("ebikeBikeInfo/deleteBatteryInfo")
|
||||
JsonResult<List<RspBikeInfo>> deleteBatteryInfo(@RequestBody List<String> batteryCodes);
|
||||
|
||||
/**
|
||||
* 根据ecuSn生成换电工单
|
||||
*
|
||||
* @param ecuSn 中控编号编号
|
||||
* @return 结果
|
||||
*/
|
||||
@GetMapping("ebikeOrder/changeBattery")
|
||||
JsonResult<?> changeBattery(@RequestParam(name = "ecuSn") String ecuSn);
|
||||
}
|
||||
|
||||
@ -39,10 +39,11 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
EbikeBikeInfo ebikeBikeInfo = infoMapper.selectOneByQuery(queryWrapper);
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_BIKE_ORDER.BIKE_ID.eq(ebikeBikeInfo.getBikeId()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq("2"))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq("0"));
|
||||
EbikeBikeOrder order = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (order != null) {
|
||||
throw new RuntimeException("该车辆已存在换电工单,无需重复生成");
|
||||
throw new RuntimeException("该车辆存在未完成的换电工单,无需重复生成");
|
||||
}
|
||||
//生成工单
|
||||
EbikeBikeOrder bikeOrder = new EbikeBikeOrder();
|
||||
@ -57,6 +58,7 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
public void doneChangeBattery(String bikeId, String receiverId) {
|
||||
QueryWrapper queryWrapper = QueryWrapper.create()
|
||||
.where(EBIKE_BIKE_ORDER.BIKE_ID.eq(bikeId))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq("2"))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq("0"));
|
||||
EbikeBikeOrder bikeOrder = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder == null){
|
||||
|
||||
@ -6,6 +6,7 @@ import com.cdzy.common.model.ResGPSDto;
|
||||
import com.cdzy.ebikereport.enums.BitSwitch;
|
||||
import com.cdzy.ebikereport.utils.BinaryUtil;
|
||||
import com.cdzy.ebikereport.utils.RedisUtil;
|
||||
import com.ebike.feign.clients.MaintenanceFeignClient;
|
||||
import com.ebike.feign.clients.OperateFeignClient;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.data.geo.Point;
|
||||
@ -25,6 +26,9 @@ public class ReoprtHandler {
|
||||
@Resource
|
||||
private OperateFeignClient operateFeignClient;
|
||||
|
||||
@Resource
|
||||
private MaintenanceFeignClient maintenanceFeignClient;
|
||||
|
||||
/**
|
||||
* 报文处理
|
||||
*/
|
||||
@ -48,8 +52,8 @@ public class ReoprtHandler {
|
||||
char isWheelSpin = binary.charAt(BitSwitch.IS_WHEEL_SPIN);
|
||||
char isMoving = binary.charAt(BitSwitch.IS_MOVING);
|
||||
ResGPSDto resGpsDto = param.toJavaObject(ResGPSDto.class);
|
||||
if (resGpsDto.getSoc() < 20){
|
||||
//TODO:生成换电工单
|
||||
if (resGpsDto.getSoc() > 0 && resGpsDto.getSoc() < 20){
|
||||
maintenanceFeignClient.changeBattery(deviceId);
|
||||
}
|
||||
resGpsDto.setEcuSn(deviceId);
|
||||
resGpsDto.setHelmetExit(helmet);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user