smart-switch-java/smart-switch-service/src/main/java/com/ruoyi/iot/service/IotService.java
2024-05-06 18:06:58 +08:00

99 lines
2.5 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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);
}