生成逻辑
This commit is contained in:
parent
1e31711338
commit
ed451798e8
@ -15,6 +15,7 @@ import org.locationtech.jts.geom.Point;
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 车辆扫一扫详情。
|
||||
@ -117,46 +118,11 @@ public class EbikeScanInfoDto implements Serializable {
|
||||
/**
|
||||
* 是否包含头盔
|
||||
*/
|
||||
private Boolean hasHelme;
|
||||
private Boolean hasHelmet;
|
||||
|
||||
/**
|
||||
* 是否包含巡检
|
||||
* 工单信息
|
||||
*/
|
||||
private Boolean hasInspection = false;
|
||||
|
||||
/**
|
||||
* 是否自己已接单巡检工单
|
||||
*/
|
||||
private Boolean inspectionAcceptSelf = false;
|
||||
|
||||
/**
|
||||
* 是否包含换电
|
||||
*/
|
||||
private Boolean hasBatterySwap = false;
|
||||
|
||||
/**
|
||||
* 是否自己已接单换电工单
|
||||
*/
|
||||
private Boolean batterySwapAcceptSelf = false;
|
||||
|
||||
/**
|
||||
* 是否包含调度
|
||||
*/
|
||||
private Boolean hasDispatch = false;
|
||||
|
||||
/**
|
||||
* 是否自己已接单调度工单
|
||||
*/
|
||||
private Boolean dispatchAcceptSelf = false;
|
||||
|
||||
/**
|
||||
* 是否包含维修
|
||||
*/
|
||||
private Boolean hasRepair = false;
|
||||
|
||||
/**
|
||||
* 是否自己已接单维修工单
|
||||
*/
|
||||
private Boolean repairAcceptSelf = false;
|
||||
private List<EbikeScanOrderDto> orders;
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,61 @@
|
||||
package com.cdzy.operations.model.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 车辆扫一扫详情。
|
||||
*
|
||||
* @author attiya
|
||||
* @since 2025-10-21
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class EbikeScanOrderDto implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 工单ID
|
||||
*/
|
||||
private Long orderId;
|
||||
|
||||
/**
|
||||
* 工单类型
|
||||
*/
|
||||
private Long orderType;
|
||||
|
||||
/**
|
||||
* 工单类型
|
||||
*/
|
||||
private Long receiverId;
|
||||
|
||||
/**
|
||||
* 车辆编号
|
||||
*/
|
||||
private String bikeCode;
|
||||
|
||||
/**
|
||||
* 工单编号
|
||||
*/
|
||||
private Long orderCode;
|
||||
|
||||
/**
|
||||
* 是否自己已接单
|
||||
*/
|
||||
private Boolean acceptSelf = false;
|
||||
|
||||
/**
|
||||
* 是否已接单
|
||||
*/
|
||||
private Boolean accepted = false;
|
||||
|
||||
}
|
||||
@ -582,39 +582,27 @@ public class EbikeBikeInfoServiceImpl extends ServiceImpl<EbikeBikeInfoMapper, E
|
||||
.where(EBIKE_BIKE_INFO.BIKE_CODE.eq(bikeCode));
|
||||
EbikeScanInfoDto ebikeScanInfoDto = this.mapper.selectOneByQueryAs(queryWrapper, EbikeScanInfoDto.class);
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeCode));
|
||||
List<EbikeBikeOrder> list = orderMapper.selectListByQuery(queryWrapper);
|
||||
queryWrapper.select(
|
||||
EBIKE_BIKE_ORDER.ORDER_ID,
|
||||
EBIKE_BIKE_ORDER.ORDER_TYPE,
|
||||
EBIKE_BIKE_ORDER.RECEIVER_ID,
|
||||
EBIKE_BIKE_ORDER.BIKE_CODE,
|
||||
EBIKE_BIKE_ORDER.ORDER_CODE
|
||||
)
|
||||
.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeCode));
|
||||
List<EbikeScanOrderDto> list = orderMapper.selectListByQueryAs(queryWrapper, EbikeScanOrderDto.class);
|
||||
long staffId = StpUtil.getLoginIdAsLong();
|
||||
if (!list.isEmpty()) {
|
||||
for (EbikeBikeOrder order : list) {
|
||||
switch (order.getOrderType()) {
|
||||
case BikeOrderType.INSPECTION -> {
|
||||
ebikeScanInfoDto.setHasInspection(Boolean.TRUE);
|
||||
if (order.getReceiverId() != null && staffId == order.getReceiverId()) {
|
||||
ebikeScanInfoDto.setInspectionAcceptSelf(Boolean.TRUE);
|
||||
}
|
||||
}
|
||||
case BikeOrderType.BATTERY_SWAP -> {
|
||||
ebikeScanInfoDto.setHasBatterySwap(Boolean.TRUE);
|
||||
if (order.getReceiverId() != null && staffId == order.getReceiverId()) {
|
||||
ebikeScanInfoDto.setBatterySwapAcceptSelf(Boolean.TRUE);
|
||||
}
|
||||
}
|
||||
case BikeOrderType.DISPATCH -> {
|
||||
ebikeScanInfoDto.setHasDispatch(Boolean.TRUE);
|
||||
if (order.getReceiverId() != null && staffId == order.getReceiverId()) {
|
||||
ebikeScanInfoDto.setDispatchAcceptSelf(Boolean.TRUE);
|
||||
}
|
||||
}
|
||||
case BikeOrderType.REPAIR -> {
|
||||
ebikeScanInfoDto.setHasRepair(Boolean.TRUE);
|
||||
if (order.getReceiverId() != null && staffId == order.getReceiverId()) {
|
||||
ebikeScanInfoDto.setRepairAcceptSelf(Boolean.TRUE);
|
||||
}
|
||||
for (EbikeScanOrderDto order : list) {
|
||||
if (order.getReceiverId() != null) {
|
||||
order.setAccepted(Boolean.TRUE);
|
||||
if (order.getReceiverId() == staffId){
|
||||
order.setAcceptSelf(Boolean.TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
ebikeScanInfoDto.setOrders(list);
|
||||
return ebikeScanInfoDto;
|
||||
}
|
||||
|
||||
|
||||
@ -118,7 +118,8 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
}
|
||||
queryWrapper.clear();
|
||||
queryWrapper.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeInfo.getBikeCode()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.BATTERY_SWAP));
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.BATTERY_SWAP))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.UNPROCESSED).or(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.ACCEPTED)));
|
||||
EbikeBikeOrder bikeOrder = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder != null) {
|
||||
log.error("车辆已存在换电工单,bikeCode={} ", bikeInfo.getBikeCode());
|
||||
@ -143,8 +144,10 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
@Override
|
||||
public void createInspectionSwapOrder(InspectionSwapOrderVo inspectionSwapOrderVo) {
|
||||
EbikeBikeInfo bikeInfo = checkBikeCode(inspectionSwapOrderVo.getBikeCode());
|
||||
QueryWrapper queryWrapper = QueryWrapper.create().where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeInfo.getBikeCode()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.INSPECTION));
|
||||
QueryWrapper queryWrapper = QueryWrapper.create()
|
||||
.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeInfo.getBikeCode()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.INSPECTION))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.UNPROCESSED).or(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.ACCEPTED)));
|
||||
EbikeBikeOrder bikeOrder = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder != null) {
|
||||
log.error("车辆已存在巡检工单,bikeCode={} ", bikeInfo.getBikeCode());
|
||||
@ -177,13 +180,11 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
@Override
|
||||
public void createDispatchSwapOrder(String bikeCode) {
|
||||
EbikeBikeInfo bikeInfo = checkBikeCode(bikeCode);
|
||||
List<Integer> list = new ArrayList<>();
|
||||
list.add(OrderHandleState.UNPROCESSED);
|
||||
list.add(OrderHandleState.ACCEPTED);
|
||||
|
||||
QueryWrapper queryWrapper = QueryWrapper.create()
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.in(list))
|
||||
.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeInfo.getBikeCode()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.DISPATCH));
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.DISPATCH))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.UNPROCESSED).or(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.ACCEPTED)));
|
||||
EbikeBikeOrder bikeOrder = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder != null) {
|
||||
log.error("车辆已存在调度工单,bikeCode={} ", bikeInfo.getBikeCode());
|
||||
@ -255,7 +256,8 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
|
||||
|
||||
QueryWrapper queryWrapper = QueryWrapper.create()
|
||||
.where(EBIKE_BIKE_ORDER.BIKE_CODE.eq(bikeInfo.getBikeCode()))
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.REPAIR));
|
||||
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(BikeOrderType.REPAIR))
|
||||
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.UNPROCESSED).or(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.ACCEPTED)));
|
||||
EbikeBikeOrder bikeOrder = this.mapper.selectOneByQuery(queryWrapper);
|
||||
if (bikeOrder != null) {
|
||||
log.error("车辆已存在维修工单,bikeCode={} ", bikeInfo.getBikeCode());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user