package com.cdzy.operations.service; import com.cdzy.operations.model.dto.EbikeBikeOrderInfoDto; import com.cdzy.operations.model.dto.EbikeOrderBikeListDto; import com.cdzy.operations.model.dto.EbikeOrderBikeInfoDto; import com.cdzy.operations.model.entity.EbikeBikeOrder; import com.cdzy.operations.model.vo.EbikeBatteryChangeVo; import com.cdzy.operations.model.vo.EbikeBatteryClaimReturnVo; import com.cdzy.operations.model.vo.FaultOrderVo; import com.cdzy.operations.model.vo.InspectionSwapOrderVo; import com.mybatisflex.core.service.IService; import org.springframework.web.multipart.MultipartFile; import java.util.List; /** * 工单信息 服务层。 * * @author attiya * @since 2025-11-24 */ public interface EbikeBikeOrderService extends IService { /** * 根据中控编码(EcuSn)生成车辆换电工单 * @param ecuSn 中控编码 */ void createBatterySwapOrder(String ecuSn); /** * 根据车辆编号(bikeCode)生成车辆巡检工单 * @param inspectionSwapOrderVo 巡检信息 */ void createInspectionSwapOrder(InspectionSwapOrderVo inspectionSwapOrderVo); /** * 根据车辆编号(bikeCode)生成车辆调度工单 * @param bikeCode 车辆编号 */ void createDispatchSwapOrder(String bikeCode); /** * 工单详情 * @param orderId 订单ID * @return 详情 */ EbikeBikeOrderInfoDto getInfo(Long orderId); /** * 接取工单 * @param orderId 工单ID */ void acceptOrder(Long orderId); /** * 上传故障文件 * @param file 上传文件 * @return 文件路径 */ String upload(MultipartFile file) throws Exception; /** * 生成维修工单 * @param faultOrderVo 故障信息 */ void faultOrder(FaultOrderVo faultOrderVo); /** * 领取电池 * @param batteryClaimVo 领取电池 */ void batteryClaim(EbikeBatteryClaimReturnVo batteryClaimVo); /** * 电池二维码检查(换电工单用,包含带电池中控二维码) * @param code 电池二维码 * */ void checkCode(String code); /** * 归还电池 * @param batteryClaimVo 归还电池 */ void batteryReturn(EbikeBatteryClaimReturnVo batteryClaimVo); /** * 更换电池 * @param changeVo 更换信息 */ void batteryChange(EbikeBatteryChangeVo changeVo); /** * 获取车辆详情 * @param bikeCode 车辆编号 * @return 详情 */ EbikeOrderBikeInfoDto bikeInfo(String bikeCode); /** * 获取车辆列表 * @param regionId 运营区ID * @return 列表 */ List bikeList(Long regionId); }