170 lines
3.9 KiB
Java
170 lines
3.9 KiB
Java
package com.cdzy.operations.service;
|
|
|
|
import com.cdzy.operations.model.dto.EbikeEcuInOverview;
|
|
import com.cdzy.operations.model.vo.EbikeEcuInfoBatchVo;
|
|
import com.cdzy.operations.model.vo.EbikeEcuInfoVo;
|
|
import com.cdzy.operations.model.vo.EbikeEcuUpgradeVo;
|
|
import com.mybatisflex.core.service.IService;
|
|
import com.cdzy.operations.model.entity.EbikeEcuInfo;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import java.io.IOException;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 中控基本信息 服务层。
|
|
*
|
|
* @author attiya
|
|
* @since 2025-09-15
|
|
*/
|
|
public interface EbikeEcuInfoService extends IService<EbikeEcuInfo> {
|
|
|
|
/**
|
|
* 中控入库
|
|
* @param ebikeEcuInfo 中控信息
|
|
*/
|
|
void saveEcu(EbikeEcuInfoVo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 批量入库
|
|
* @param batchVo 入库信息
|
|
*/
|
|
void batchSave(EbikeEcuInfoBatchVo batchVo);
|
|
|
|
/**
|
|
* 总览
|
|
* @return 总览数据
|
|
*/
|
|
List<EbikeEcuInOverview> overview();
|
|
|
|
/**
|
|
* 检测设备是否在线
|
|
* @param ecuSn 中控SN码
|
|
* @param bikeCode 车辆编号
|
|
* @return 结果
|
|
*/
|
|
boolean online(String ecuSn, String bikeCode) throws IOException;
|
|
|
|
/**
|
|
* 寻车铃命令
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean findBike(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* GPS命令
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean gps(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 打开电池仓锁命令
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean openBatteryLock(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 关闭电池仓所命令
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean closeBatteryLock(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 校验参数
|
|
* @param ecuSn 中控SN码
|
|
* @param bikeCode 车辆编号
|
|
* @return 结果
|
|
*/
|
|
boolean checkSnOrBikeCode(String ecuSn, String bikeCode);
|
|
|
|
/**
|
|
* 关锁
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean lock(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 开锁
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean unLock(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
|
|
/**
|
|
* 打开头盔锁
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean openHelmet(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 打开头盔锁
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean powerOff(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 执行命令
|
|
* @param ecuSn 中控SN码
|
|
* @param bikeCode 车辆编号
|
|
* @param commandCode 命令编码
|
|
* @return 执行结果
|
|
*/
|
|
boolean executeCommand(String ecuSn, String bikeCode, String commandCode,String url);
|
|
|
|
/**
|
|
* 根据车辆编号获取中控信息
|
|
* @param bikeCode 车辆编号
|
|
* @return 中控信息
|
|
*/
|
|
EbikeEcuInfo getEcu(String bikeCode);
|
|
|
|
/**
|
|
* 远程升级中控
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 结果
|
|
*/
|
|
boolean upgradeFile(EbikeEcuInfo ebikeEcuInfo,String url,Boolean fullUpgrade);
|
|
|
|
/**
|
|
* 上传远程升级
|
|
* @param file 文件对象
|
|
*/
|
|
String upload(MultipartFile file) throws Exception;
|
|
|
|
/**
|
|
* 远程升级
|
|
* @param upgradeVoe 升级信息
|
|
* @return 操作结果
|
|
*/
|
|
boolean upgrade(EbikeEcuUpgradeVo upgradeVoe);
|
|
|
|
/**
|
|
* 根据车辆编号查询寻车铃
|
|
*
|
|
* @param bikeCode 车辆编号
|
|
*/
|
|
boolean findBikeByBikeCode(String bikeCode);
|
|
|
|
/**
|
|
* 临时停车
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 操作结果
|
|
*/
|
|
boolean tempLock(EbikeEcuInfo ebikeEcuInfo);
|
|
|
|
/**
|
|
* 临时停车继续骑行
|
|
* @param ebikeEcuInfo 中控信息
|
|
* @return 操作结果
|
|
*/
|
|
boolean tempLockResume(EbikeEcuInfo ebikeEcuInfo);
|
|
}
|