package com.mes.device.service;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.mes.device.entity.DeviceConfig;
|
import com.mes.device.vo.DeviceConfigVO;
|
import com.mes.device.vo.StatisticsVO;
|
|
/**
|
* 设备配置服务接口
|
*/
|
public interface DeviceConfigService extends IService<DeviceConfig> {
|
|
/**
|
* 创建设备配置
|
* @param deviceConfig 设备配置信息
|
* @return 是否创建成功
|
*/
|
boolean createDevice(DeviceConfig deviceConfig);
|
|
/**
|
* 更新设备配置
|
* @param deviceConfig 设备配置信息
|
* @return 是否更新成功
|
*/
|
boolean updateDevice(DeviceConfig deviceConfig);
|
|
/**
|
* 删除设备配置
|
* @param id 设备ID
|
* @return 是否删除成功
|
*/
|
boolean deleteDevice(Long id);
|
|
/**
|
* 查询设备配置详情
|
* @param id 设备ID
|
* @return 设备配置信息
|
*/
|
DeviceConfig getDeviceById(Long id);
|
|
/**
|
* 根据设备编号查询设备配置
|
* @param deviceCode 设备编号
|
* @return 设备配置信息
|
*/
|
DeviceConfig getDeviceByCode(String deviceCode);
|
|
/**
|
* 查询设备配置列表 - 控制器版本
|
* @param projectId 项目ID
|
* @param deviceType 设备类型
|
* @param deviceStatus 设备状态
|
* @param keyword 搜索关键词
|
* @param page 页码
|
* @param size 每页大小
|
* @return 设备配置分页列表
|
*/
|
Page<DeviceConfigVO.DeviceInfo> getDeviceList(Long projectId, String deviceType, String deviceStatus, String keyword, Integer page, Integer size);
|
|
/**
|
* 查询设备配置列表
|
* @param projectId 项目ID
|
* @param deviceType 设备类型
|
* @param status 设备状态
|
* @return 设备配置列表
|
*/
|
java.util.List<DeviceConfig> getDeviceList(Long projectId, String deviceType, String status);
|
|
/**
|
* 查询设备配置VO列表
|
* @param projectId 项目ID
|
* @param deviceType 设备类型
|
* @param status 设备状态
|
* @return 设备配置VO列表
|
*/
|
java.util.List<DeviceConfigVO.DeviceInfo> getDeviceVOList(Long projectId, String deviceType, String status);
|
|
/**
|
* 检查设备编号是否存在
|
* @param deviceCode 设备编号
|
* @param excludeId 排除的设备ID
|
* @return 是否存在
|
*/
|
boolean isDeviceCodeExists(String deviceCode, Long excludeId);
|
|
/**
|
* 更新设备状态
|
* @param id 设备ID
|
* @param status 新状态
|
* @return 是否更新成功
|
*/
|
boolean updateDeviceStatus(Long id, String status);
|
|
/**
|
* 批量更新设备状态
|
* @param ids 设备ID列表
|
* @param status 新状态
|
* @return 是否更新成功
|
*/
|
boolean batchUpdateDeviceStatus(java.util.List<Long> ids, String status);
|
|
/**
|
* 获取设备的扩展参数
|
* @param id 设备ID
|
* @return 扩展参数字典
|
*/
|
java.util.Map<String, Object> getExtraParams(Long id);
|
|
/**
|
* 更新设备的扩展参数
|
* @param id 设备ID
|
* @param extraParams 扩展参数字典
|
* @return 是否更新成功
|
*/
|
boolean updateExtraParams(Long id, java.util.Map<String, Object> extraParams);
|
|
/**
|
* 获取在线设备数量
|
* @param projectId 项目ID
|
* @return 在线设备数量
|
*/
|
int getOnlineDeviceCount(Long projectId);
|
|
/**
|
* 获取设备总数
|
* @param projectId 项目ID
|
* @param deviceType 设备类型
|
* @param deviceStatus 设备状态
|
* @param keyword 搜索关键词
|
* @return 设备总数
|
*/
|
Long getDeviceCount(Long projectId, String deviceType, String deviceStatus, String keyword);
|
|
/**
|
* 获取所有设备类型
|
* @return 设备类型列表
|
*/
|
java.util.List<String> getAllDeviceTypes();
|
|
/**
|
* 获取所有设备状态
|
* @return 设备状态列表
|
*/
|
java.util.List<String> getAllDeviceStatuses();
|
|
/**
|
* 启用设备
|
* @param id 设备ID
|
* @return 是否启用成功
|
*/
|
boolean enableDevice(Long id);
|
|
/**
|
* 禁用设备
|
* @param id 设备ID
|
* @return 是否禁用成功
|
*/
|
boolean disableDevice(Long id);
|
|
/**
|
* 批量启用设备
|
* @param deviceIds 设备ID列表
|
* @return 是否启用成功
|
*/
|
boolean batchEnableDevices(java.util.List<Long> deviceIds);
|
|
/**
|
* 批量禁用设备
|
* @param deviceIds 设备ID列表
|
* @return 是否禁用成功
|
*/
|
boolean batchDisableDevices(java.util.List<Long> deviceIds);
|
|
/**
|
* 设备健康检查
|
* @param id 设备ID
|
* @return 健康检查结果
|
*/
|
com.mes.device.vo.DeviceConfigVO.HealthCheckResult performHealthCheck(Long id);
|
|
/**
|
* 获取设备树结构
|
* @param projectId 项目ID
|
* @return 设备树节点列表
|
*/
|
java.util.List<com.mes.device.vo.DeviceConfigVO.DeviceTreeNode> getDeviceTree(Long projectId);
|
|
/**
|
* 获取设备统计信息
|
* @param projectId 项目ID
|
* @return 设备统计信息
|
*/
|
StatisticsVO.DeviceStatistics getDeviceStatistics(Long projectId);
|
}
|