package com.usky.iot.service; import com.usky.backend.domain.*; import com.usky.common.core.bean.CommonPage; import com.usky.common.mybatis.core.CrudService; import com.usky.demo.domain.LastInnerQueryVO; import com.usky.iot.domain.DmpDeviceInfo; import com.usky.iot.service.vo.*; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; /** *

* 设备信息表 *

* * @author ya * @since 2022-10-08 */ public interface DmpDeviceInfoService extends CrudService { void add(DmpDeviceInfo dmpDeviceInfo); void update(DmpDeviceInfo dmpDeviceInfo); boolean checkNameUnique(DmpDeviceInfo dmpDeviceInfo); boolean checkNameUnique1(DmpDeviceInfo dmpDeviceInfo,Integer tenantId); void deviceStatus(); void updateDeviceStatus(LastInnerQueryVO queryVO); CommonPage page(DmpDeviceInfoRequest dmpDeviceInfoRequest); CommonPage pageWhite(DmpDeviceInfoRequest dmpDeviceInfoRequest); List gatewayDeviceList(); boolean remove(Integer id); /** * 设备状态统计 * @return */ List> deviceCollect(List productIds); /** * 设备总数 * @param productId * @return */ int deviceCountByProductId(Integer productId); void addByFile(MultipartFile multipartFiles); void importDeviceInfo(List list); /** * 导出 * @param dmpDeviceInfoRequest */ void export(DmpDeviceInfoRequest dmpDeviceInfoRequest, HttpServletResponse response); CommonPage deviceCurrentDataList(String deviceName,String installAddress,String productCode,Integer pageNum,Integer pageSize); CommonPage dataTVList(DataTVRequestVO requestVO); List dataTVStatistic(DataTVRequestVO requestVO); List> deviceDataTotal(DataTotalRequestVO requestVO); List deviceDataAverage(DataAverageRequestVO requestVO); List DataAverageExport(DataAverageRequestVO requestVO); Map control(String productCode, String deviceUuid, String commandCode, String commandValue, String domain, Long userId, String userName, Integer categoryType, String gatewayUuid); /** * @description: 获取设备topic列表 * @author: fyc * @email yuchuan.fu@chinausky.com * @date: 2025/2/7 17:49 * @param: [pageNum, pageSize] * @return: java.util.List **/ CommonPage topic(DmpTopicRequestVO requestVO); /** * @description: 获取设备告警请求信息 * @author: fyc * @email yuchuan.fu@chinausky.com * @date: 2025/2/7 17:49 * @param: [deviceId, productCode] * @return: com.usky.iot.service.vo.DmpHttpAlarmResponseVO **/ DmpHttpAlarmResponseVO alarmResponse(String deviceId, String productCode); }