完成换电
This commit is contained in:
parent
f76380ff33
commit
1e386c78f6
@ -21,6 +21,7 @@ import com.mybatisflex.core.update.UpdateChain;
|
||||
import com.mybatisflex.spring.service.impl.ServiceImpl;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@ -76,6 +77,8 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
|
||||
@Resource
|
||||
MinioUtil minioUtil;
|
||||
@Autowired
|
||||
private EbikeBikeOrderMapper ebikeBikeOrderMapper;
|
||||
|
||||
@Override
|
||||
public void createBatterySwapOrder(String ecuSn) {
|
||||
@ -315,12 +318,54 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
@Override
|
||||
public void batteryChange(EbikeBatteryChangeVo changeVo) {
|
||||
String bikeCode = changeVo.getBikeCode();
|
||||
String batteryCode = changeVo.getBatteryCode();
|
||||
QueryWrapper queryWrapper = QueryWrapper.create()
|
||||
.where(EBIKE_BIKE_INFO.BIKE_CODE.eq(bikeCode));
|
||||
EbikeBikeInfo bikeInfo = bikeInfoMapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeInfo == null) {
|
||||
throw new EbikeException("车辆编号错误");
|
||||
}
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeCode))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.BATTERY_SWAP))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.ne(OrderHandleState.PROCESSED))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.ne(OrderHandleState.VOIDED));
|
||||
EbikeBikeOrder bikeOrder = ebikeBikeOrderMapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder == null) {
|
||||
throw new EbikeException("该车辆暂时无需换电");
|
||||
}
|
||||
if (bikeOrder.getReceiverId() != StpUtil.getLoginIdAsLong()) {
|
||||
if (bikeOrder.getReceiverId() != null) {
|
||||
throw new EbikeException("其他用户已接单为该车辆换电");
|
||||
}else {
|
||||
throw new EbikeException("请接单后完成换电");
|
||||
}
|
||||
}
|
||||
if (batteryCode.startsWith("B")) {
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_BATTERY_INFO.BATTERY_CODE.eq(batteryCode));
|
||||
EbikeBatteryInfo batteryInfo = batteryInfoMapper.selectOneByQuery(queryWrapper);
|
||||
if (batteryInfo == null) {
|
||||
throw new EbikeException("电池编号错误");
|
||||
}
|
||||
bikeInfo.setBatteryId(batteryInfo.getBatteryId());
|
||||
bikeInfoMapper.update(bikeInfo);
|
||||
bikeOrder.setHandleState(OrderHandleState.PROCESSED);
|
||||
ebikeBikeOrderMapper.update(bikeOrder);
|
||||
}else {
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_ECU_INFO.ECU_SN.eq(bikeCode))
|
||||
.where(EBIKE_ECU_INFO.BIND_BATTERY.eq(Boolean.TRUE));
|
||||
EbikeEcuInfo ecuInfo = ebikeEcuInfoMapper.selectOneByQuery(queryWrapper);
|
||||
if (ecuInfo == null) {
|
||||
throw new EbikeException("带电池中控编号错误");
|
||||
}
|
||||
bikeInfo.setEcuId(ecuInfo.getEcuId());
|
||||
bikeInfo.setBatteryId(null);
|
||||
bikeInfoMapper.update(bikeInfo);
|
||||
bikeOrder.setHandleState(OrderHandleState.PROCESSED);
|
||||
ebikeBikeOrderMapper.update(bikeOrder);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user