ISmsbDeviceService.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. package com.inspur.device.service;
  2. import com.inspur.device.domain.SmsbDevice;
  3. import com.inspur.device.domain.bo.HttpHeartbeatReq;
  4. import com.inspur.device.domain.bo.SmsbDeviceBo;
  5. import com.inspur.device.domain.vo.*;
  6. import org.dromara.common.core.domain.R;
  7. import org.dromara.common.mybatis.core.page.TableDataInfo;
  8. import org.dromara.common.mybatis.core.page.PageQuery;
  9. import org.springframework.web.multipart.MultipartFile;
  10. import java.util.Collection;
  11. import java.util.List;
  12. /**
  13. * 设备Service接口
  14. *
  15. * @author Hao Li
  16. * @date 2025-01-20
  17. */
  18. public interface ISmsbDeviceService {
  19. /**
  20. * 查询设备
  21. *
  22. * @param id 主键
  23. * @return 设备
  24. */
  25. SmsbDeviceVo queryById(Long id);
  26. /**
  27. * 分页查询设备列表
  28. *
  29. * @param bo 查询条件
  30. * @param pageQuery 分页参数
  31. * @return 设备分页列表
  32. */
  33. TableDataInfo<SmsbDeviceVo> queryPageList(SmsbDeviceBo bo, PageQuery pageQuery);
  34. /**
  35. * 查询符合条件的设备列表
  36. *
  37. * @param bo 查询条件
  38. * @return 设备列表
  39. */
  40. List<SmsbDeviceVo> queryList(SmsbDeviceBo bo);
  41. /**
  42. * 新增设备
  43. *
  44. * @param bo 设备
  45. * @return 是否新增成功
  46. */
  47. Boolean insertByBo(SmsbDeviceBo bo);
  48. /**
  49. * 修改设备
  50. *
  51. * @param bo 设备
  52. * @return 是否修改成功
  53. */
  54. Boolean updateByBo(SmsbDeviceBo bo);
  55. /**
  56. * 校验并批量删除设备信息
  57. *
  58. * @param ids 待删除的主键集合
  59. * @param isValid 是否进行有效性校验
  60. * @return 是否删除成功
  61. */
  62. Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
  63. /**
  64. * 校验设备是否存在
  65. * @param serialNumber
  66. * @param mac
  67. * @return
  68. */
  69. Boolean checkExist(String serialNumber,String mac);
  70. /**
  71. * 根据标识符查询设备
  72. * @param identifier
  73. * @return
  74. */
  75. SmsbDeviceVo getDeviceByIdentifier(String identifier);
  76. /**
  77. * 根据设备ID查询设备
  78. * @param deviceId
  79. * @return
  80. */
  81. SmsbDeviceVo getDeviceCacheById(Long deviceId);
  82. /**
  83. * 设备数量统计
  84. * @return
  85. */
  86. DeviceStatisticsVo deviceStatistics();
  87. /**
  88. * 设备运行详情
  89. * @param id
  90. * @return
  91. */
  92. SmsbDeviceRunInfoVo getRunInfo(Long id);
  93. /**
  94. * 更新设备状态
  95. * @param smsbDeviceVo
  96. * @return
  97. */
  98. SmsbDeviceVo updateDeviceStatus(SmsbDeviceVo smsbDeviceVo);
  99. /**
  100. * 根据租户ID查询设备列表
  101. * @param bo
  102. * @param pageQuery
  103. * @return
  104. */
  105. TableDataInfo<SmsbDeviceVo> queryPageListByTenantId(SmsbDeviceBo bo, PageQuery pageQuery);
  106. /**
  107. * 前端设备上传截图
  108. * @param identifier
  109. * @param timestamp
  110. * @param file
  111. * @return
  112. */
  113. R<Void> screenshotUpload(String identifier, Long timestamp, MultipartFile file);
  114. /**
  115. * 前端设备心跳接口
  116. * @param requestParam
  117. * @return
  118. */
  119. R<HttpHeartbeatRspVo> heartbeat(HttpHeartbeatReq requestParam);
  120. /**
  121. * 前端设备多功能卡上报
  122. * @param frontMultiCardUploadVo
  123. * @return
  124. */
  125. R<Void> uploadMultiCard(FrontMultiCardUploadVo frontMultiCardUploadVo);
  126. /**
  127. * 根据设备ID获取多功能卡数据
  128. * @param id
  129. * @return
  130. */
  131. List<SmsbDeviceMultiCardVo> getDeviceMultiCardList(Long id);
  132. }