301 lines
7.3 KiB
Java
Raw Normal View History

2025-04-14 09:35:36 +08:00
package com.cdzy.ebikemaintenance.service;
import com.cdzy.common.model.JsonResult;
2025-04-14 09:35:36 +08:00
import com.cdzy.ebikemaintenance.model.dto.request.*;
import com.cdzy.ebikemaintenance.model.dto.response.*;
import com.cdzy.ebikemaintenance.model.dto.response.ResEbikeBikeComDto;
import com.cdzy.ebikemaintenance.model.pojo.*;
import com.ebike.feign.model.res.ReqEcuSnDto;
import com.ebike.feign.model.rsp.RspBikeInfo;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import java.util.List;
2025-04-28 18:23:58 +08:00
import java.util.Map;
2025-04-14 09:35:36 +08:00
/**
* 车辆基本信息 服务层
*
* @author zjd
* @since 2025-03-17
*/
public interface EbikeBikeInfoService extends IService<EbikeBikeInfo> {
/**
* 根据车辆编号获取车辆基本信息
*
* @param bikeCode 车辆编号
* @return
*/
EbikeBikeInfo getByBikeCode(String bikeCode);
/**
* 整车信息保存
*
* @param ebikeInfoDto 车辆基本信息
* @return
*/
Boolean saveEbikeInfo(ReqEbikeBikeInfoDto ebikeInfoDto);
/**
* 更换头盔
*
* @param reqUpdateHelmetDto 车辆基本信息
* @return
*/
Boolean updateEbikeHelmet(ReqUpdateHelmetDto reqUpdateHelmetDto);
/**
* 更换中控
*
* @param reqUpdateEcuDto 车辆基本信息
* @return
*/
Boolean updateEbikeEcu(ReqUpdateEcuDto reqUpdateEcuDto);
/**
* 根据车辆编号获取车辆基本信息
*
* @param bikeCode 车辆编号
* @return
*/
ResEbikeBikeAndEcuCodeDto getBikeINfoData(String bikeCode);
/**
* 根据车辆编号解绑中控
*
* @param bikeId 车辆编号
* @return
*/
Boolean untieEcu(List<String> bikeId);
/**
* 获取库存车辆详情信息
*
* @param bikeId 车辆ID
* @return
*/
ResInventoryBikeDetailsDto getInventoryBikeDetails(String bikeId);
/**
* 更换二维码
*
* @param reqUpBikeCodeDto 更换二维码dto
* @return
*/
Boolean updateBikeQRCode(ReqUpBikeCodeDto reqUpBikeCodeDto);
/**
* 分页查询车辆入库信息列表
*
* @param queryParam 查询参数
* @return
*/
Page<ResInventoryBikeListDto> getInventoryBikeList(ReqEbikeCheckinDto queryParam);
/**
* 车辆批量出库
*
* @param reqBulkDeliveryDto 车辆出库信息
* @return
*/
Boolean vehicleLeaveWarehouse(ReqBulkDeliveryDto reqBulkDeliveryDto);
/**
* 故障上报提交保存
*
* @param reqEbikeBikeFaultReportDto 故障上报信息
* @return
*/
Boolean faultReporting(ReqEbikeBikeFaultReportDto reqEbikeBikeFaultReportDto);
/**
* 根据车辆编号获取故障信息详情
*
* @param orderId 工单ID
* @return
*/
ResEbikeBikeFaultReportDto getFaultInfo(String orderId) throws Exception;
/**
* 获取故障上报历史
*
* @param reqFaultHistoryListDto 查询参数
* @return
*/
List<ResEbikeBikeFaultReportDto> getFaultHistoryList(ReqFaultHistoryListDto reqFaultHistoryListDto);
/**
* 故障处理完成
*
* @param ebikeBikeFaultHandleFileDto 故障处理实体
* @return
*/
Boolean faultHandelComplete(ReqEbikeBikeFaultHandleDto ebikeBikeFaultHandleFileDto);
/**
* 领取故障创建工单
*
* @param reqEbikeBikeOrderDto 工单基本信息
* @return
*/
String createWorkOrder(ReqEbikeBikeOrderDto reqEbikeBikeOrderDto);
/**
* 检查是否有工单
*
* @param reqEbikeWorkOrderDto 工单基本信息
* @return
*/
EbikeBikeOrder inspectHaveOrNotWorkOrder(ReqEbikeWorkOrderDto reqEbikeWorkOrderDto);
/**
* 检查车辆是否存在
*
* @param bikeCode 车辆编号
* @return
*/
Boolean inspectBikeHaveOrNot(String bikeCode);
/**
* 获取当期车辆所有故障上报列表
*
* @param bikeCode 车辆编号
* @return
*/
List<ResEbikeBikeFaultReportListDto> getFaultReportList(String bikeCode);
/**
* 换电
*
* @param changeDto 换电信息
*/
void changeBattery(ReqBatteryApplyChangeDto changeDto);
/**
* 获取指令记录列表
*
* @param reqInstructionRecordListDto 查询参数
* @return
*/
List<ResEbikeBikeComDto> getInstructionRecordList(ReqInstructionRecordListDto reqInstructionRecordListDto);
/**
* 获取工单记录列表
*
* @param reqWorkOrderRecordListDto 查询参数
* @return
*/
List<ResEbikeBikeWorkOrderDto> getWorkOrderRecordList(ReqWorkOrderRecordListDto reqWorkOrderRecordListDto);
/**
* 取消工单
*
2025-04-28 14:06:36 +08:00
* @param orderId 工单id orderType 1 维修工单 2 换电工单 3 调度工单
2025-04-14 09:35:36 +08:00
* @return
*/
2025-04-28 14:06:36 +08:00
Boolean canCellWorkOrder(String orderId,String orderType);
2025-04-14 09:35:36 +08:00
/**
* 根据SN码批量获取车辆信息
*
* @param ecuSnDto SN码列表
* @return 车辆信息
*/
List<RspBikeInfo> getBikeByEcuSn(ReqEcuSnDto ecuSnDto);
/**
* 获取车辆详情信息
*
* @param reqEbikeGetBikeDetailsDto 车辆基本信息
* @return
*/
ResEbikeBikeDetailsInfoDto getBikeDetailsINfoData(ReqEbikeGetBikeDetailsDto reqEbikeGetBikeDetailsDto);
/**
* 根据车辆编号获取中控SN
*
* @param bikeCode 车辆编号
* @return
*/
String getEcuSnByBikeCode(String bikeCode);
/**
* 获取定位基本信息
*
* @param reqEbikeGetBikeDetailsDto 车辆基本信息
* @return
*/
ResEbikeOrientationInfoDto getOrientationInfo(ReqEbikeGetBikeDetailsDto reqEbikeGetBikeDetailsDto);
/**
* 获取维修工单详情
*
* @param orderId 工单id
* @return
*/
ResEbikeBikeWorkOrderDto getWorkOrderInfo(String orderId);
/**
* 批量投放
*
* @param reqWorkOrderDispatchDto
* @return
*/
String createWorkOrderDispatch(ReqWorkOrderDispatchDto reqWorkOrderDispatchDto);
/**
* 根据工单id 获取调度车辆数据接口
*
* @param orderId
* @return
*/
ResDispatchVehicleDto getDispatchVehicleByOrderId(String orderId);
2025-04-24 17:55:27 +08:00
/**
* 有工单-根据工单ID 车辆编号 新增调度车车辆
* @param ebikeDispatchRecordDto
*/
EbikeDispatchRecords createDispatchRecord(ReqEbikeDispatchRecordDto ebikeDispatchRecordDto);
/**
* 删除调度记录接口
* @param recordId
* @return
*/
Boolean deleteDispatchRecord(String recordId);
2025-04-28 14:06:36 +08:00
/**
* 获取运营车辆列表
*
* @param
* @return
*/
Page<ResInventoryBikeListDto> getOperationalBikeList(ReqEbikeCheckinDto queryParam);
/**
* 修改车辆状态
*
* @param queryParam 车辆状态修改请求参数
* @return
*/
JsonResult<?> updateVehicleStatus(ReqVehicleStatusUpdateDto queryParam);
2025-04-28 18:23:58 +08:00
/**
* 完成投放
*
* @param param 完成投放请求参数 orderId
* @return
*/
JsonResult<?> completeDeployment(Map<String,Object> param);
2025-04-30 17:36:19 +08:00
/**
* 获取工单列表
*
* @param param 获取工单列表请求参数如分页信息筛选条件等
* @return 返回工单列表数据
*/
JsonResult<?> getWorkOrderList(Map<String,Object> param);
2025-04-14 09:35:36 +08:00
}