99 lines
2.5 KiB
Java
99 lines
2.5 KiB
Java
package com.ruoyi.iot.service;
|
||
|
||
|
||
import com.ruoyi.iot.domain.CurrentDeviceData;
|
||
import com.ruoyi.iot.domain.HistoryDeviceData;
|
||
import com.ruoyi.iot.domain.IotDeviceDetail;
|
||
import com.ruoyi.iot.domain.IotDeviceInfo;
|
||
import com.ruoyi.iot.domain.response.CommandResponse;
|
||
import com.ruoyi.ss.device.domain.SmDevice;
|
||
import com.ruoyi.ss.device.domain.enums.DeviceOnlineStatus;
|
||
|
||
import java.math.BigDecimal;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* @author wjh
|
||
* 2024/3/20
|
||
*/
|
||
public interface IotService {
|
||
/**
|
||
* 向设备发送命令
|
||
* @param deviceName OneNet设备名称(即设备表的MAC号)
|
||
* @param command 命令字符串
|
||
* @return
|
||
*/
|
||
CommandResponse sendCommand(String deviceName, String command);
|
||
|
||
/**
|
||
* 获取设备在线状态
|
||
* @param deviceName OneNet设备名称(即设备表的MAC号)
|
||
*/
|
||
DeviceOnlineStatus getOnlineStatus(String deviceName);
|
||
|
||
/**
|
||
* 通电
|
||
* @param deviceName OneNet设备名称(即设备表的MAC号)
|
||
* @return 是否成功
|
||
*/
|
||
boolean open(String deviceName);
|
||
|
||
|
||
/**
|
||
* 断电
|
||
* @param deviceName OneNet设备名称(即设备表的MAC号)
|
||
* @return 是否成功
|
||
*/
|
||
boolean close(String deviceName);
|
||
|
||
/**
|
||
* 获取历史设备数据点信息
|
||
* @param deviceName OneNet设备名称(即设备表的MAC号)
|
||
*/
|
||
HistoryDeviceData getHistoryDataPoint(String deviceName);
|
||
|
||
/**
|
||
* 批量获取当前设备数据点信息
|
||
* @param deviceNames 设备名称列表
|
||
*/
|
||
List<CurrentDeviceData> getCurrentDataPoint(List<String> deviceNames);
|
||
|
||
/**
|
||
* 获取当前设备数据点信息
|
||
* @param deviceName 设备名称
|
||
*/
|
||
CurrentDeviceData getCurrentDataPoint(String deviceName);
|
||
|
||
/**
|
||
* 获取设备详情
|
||
* @param deviceName 设备名称
|
||
*/
|
||
IotDeviceDetail getDeviceDetail(String deviceName);
|
||
|
||
/**
|
||
* 设备电量充值
|
||
* @param deviceName 设备名称
|
||
* @param num 充值度数(度)
|
||
*/
|
||
boolean recharge(String deviceName, BigDecimal num);
|
||
|
||
/**
|
||
* 更新设备信息
|
||
* @param device 设备信息
|
||
*/
|
||
boolean updateDevice(SmDevice device);
|
||
|
||
/**
|
||
* 获取设备信息,并转化为IotDeviceInfo
|
||
* @param deviceName 设备名称
|
||
*/
|
||
IotDeviceInfo getDeviceInfo(String deviceName);
|
||
|
||
/**
|
||
* 获取设备信息列表,并转换为IotDeviceInfo
|
||
* @param deviceNames 设备名称列表
|
||
*/
|
||
List<IotDeviceInfo> getDeviceInfo(List<String> deviceNames);
|
||
|
||
}
|