接口定义、工单创建时间查询

This commit is contained in:
attiya 2025-12-08 16:05:11 +08:00
parent f19bed2541
commit afdb93839d
5 changed files with 83 additions and 6 deletions

View File

@ -152,6 +152,18 @@ public class EbikeBikeOrderController {
return JsonResult.success();
}
/**
* 完成维修工单
*
* @param faultOrderVo 故障信息
* @return 结果
*/
@PostMapping("doFault")
public JsonResult<?> doFault(@Validated @RequestBody DoneFaultOrderVo faultOrderVo) {
ebikeBikeOrderService.doFault(faultOrderVo);
return JsonResult.success();
}
/**
* 接取工单
*
@ -234,7 +246,7 @@ public class EbikeBikeOrderController {
// }
/**
* 运营区列表列表工单用
* 运营区列表工单用
*
* @return 操作结果
*/
@ -261,8 +273,8 @@ public class EbikeBikeOrderController {
* @return 操作结果
*/
@GetMapping("bikeInfo")
public JsonResult<EbikeOrderBikeInfoDto> bikeInfo(@RequestParam("bikeCode") String bikeCode) throws IOException {
EbikeOrderBikeInfoDto info = ebikeBikeOrderService.bikeInfo(bikeCode);
public JsonResult<EbikeOrderBikeInfoDto> bikeInfo(@RequestParam("bikeCode") String bikeCode,Integer orderType) throws IOException {
EbikeOrderBikeInfoDto info = ebikeBikeOrderService.bikeInfo(bikeCode,orderType);
return JsonResult.success(info);
}
}

View File

@ -126,6 +126,11 @@ public class EbikeOrderBikeInfoDto implements Serializable {
*/
private LocalDateTime latestTime;
/**
* 最后一次上报时间
*/
private LocalDateTime createdAt;
/**
* 是否在线
*/

View File

@ -0,0 +1,42 @@
package com.cdzy.operations.model.vo;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author attiya
* @since 2025-11-26
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DoneFaultOrderVo {
/**
* 车辆编号
*/
@NotNull(message = "车辆编号不能为空")
private String bikeCode;
/**
* 处理类型1-故障误报 2-故障处理
*/
@NotNull(message = "处理类型不能为空")
private Integer type;
/**
* 文件地址
*/
private List<String> fileUrls;
/**
* 备注
*/
private String remarks;
}

View File

@ -95,7 +95,7 @@ public interface EbikeBikeOrderService extends IService<EbikeBikeOrder> {
* @param bikeCode 车辆编号
* @return 详情
*/
EbikeOrderBikeInfoDto bikeInfo(String bikeCode) throws IOException;
EbikeOrderBikeInfoDto bikeInfo(String bikeCode,Integer orderType) throws IOException;
/**
* 获取车辆列表
@ -122,4 +122,10 @@ public interface EbikeBikeOrderService extends IService<EbikeBikeOrder> {
* @return 列表
*/
List<EbikeRegion> regionList(OrderRegionVo orderRegionVo);
/**
* 完成维修工单
* @param faultOrderVo 信息
*/
void doFault(DoneFaultOrderVo faultOrderVo);
}

View File

@ -353,7 +353,8 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
if (bikeOrder.getReceiverId() != null) {
throw new EbikeException("其他用户已接单为该车辆换电");
} else {
throw new EbikeException("请接单后完成换电");
//无人接单则自动接单
bikeOrder.setReceiverId(StpUtil.getLoginIdAsLong());
}
}
if (batteryCode.startsWith("B")) {
@ -385,11 +386,17 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
}
@Override
public EbikeOrderBikeInfoDto bikeInfo(String bikeCode) throws IOException {
public EbikeOrderBikeInfoDto bikeInfo(String bikeCode,Integer orderType) throws IOException {
QueryWrapper queryWrapper = QueryWrapper.create()
.select(EBIKE_BIKE_INFO.BIKE_INFO_ID, EBIKE_BIKE_INFO.LOCATION, EBIKE_BIKE_INFO.USAGE_STATUS, EBIKE_BIKE_INFO.LATEST_CYCLING_TIME, EBIKE_ECU_INFO.ECU_SN)
.where(EBIKE_BIKE_INFO.BIKE_CODE.eq(bikeCode))
.leftJoin(EBIKE_ECU_INFO).on(EBIKE_ECU_INFO.ECU_ID.eq(EBIKE_BIKE_INFO.ECU_ID));
if (orderType != null) {
queryWrapper.select(EBIKE_BIKE_ORDER.CREATED_AT)
.where(EBIKE_BIKE_ORDER.ORDER_TYPE.eq(orderType))
.where(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.UNPROCESSED).or(EBIKE_BIKE_ORDER.HANDLE_STATE.eq(OrderHandleState.ACCEPTED)))
.leftJoin(EBIKE_BIKE_ORDER).on(EBIKE_BIKE_ORDER.BIKE_CODE.eq(EBIKE_BIKE_INFO.BIKE_CODE));
}
EbikeOrderBikeInfoDto bikeInfo = bikeInfoMapper.selectOneByQueryAs(queryWrapper, EbikeOrderBikeInfoDto.class);
if (bikeInfo == null) {
throw new EbikeException("车辆编号错误");
@ -518,6 +525,11 @@ public class EbikeBikeOrderServiceImpl extends ServiceImpl<EbikeBikeOrderMapper,
}
}
@Override
public void doFault(DoneFaultOrderVo faultOrderVo) {
}
EbikeBikeInfo checkBikeCode(String bikeCode) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(EBIKE_BIKE_INFO.BIKE_CODE.eq(bikeCode))