|
@@ -23,6 +23,7 @@ import com.inspur.device.domain.vo.*;
|
|
|
import com.inspur.device.mapper.SmsbDeviceHeartRecordMapper;
|
|
import com.inspur.device.mapper.SmsbDeviceHeartRecordMapper;
|
|
|
import com.inspur.device.mapper.SmsbDeviceMapper;
|
|
import com.inspur.device.mapper.SmsbDeviceMapper;
|
|
|
import com.inspur.device.mapper.SmsbDeviceRunInfoMapper;
|
|
import com.inspur.device.mapper.SmsbDeviceRunInfoMapper;
|
|
|
|
|
+import com.inspur.device.service.IEsSmsbDeviceService;
|
|
|
import com.inspur.device.service.ISmsbDeviceManufacturerService;
|
|
import com.inspur.device.service.ISmsbDeviceManufacturerService;
|
|
|
import com.inspur.device.service.ISmsbDeviceService;
|
|
import com.inspur.device.service.ISmsbDeviceService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
@@ -44,6 +45,7 @@ import org.dromara.common.sse.dto.SseMessageDto;
|
|
|
import org.dromara.common.sse.utils.SseMessageUtils;
|
|
import org.dromara.common.sse.utils.SseMessageUtils;
|
|
|
import org.dromara.common.tenant.helper.TenantHelper;
|
|
import org.dromara.common.tenant.helper.TenantHelper;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.cache.annotation.CacheEvict;
|
|
import org.springframework.cache.annotation.CacheEvict;
|
|
|
import org.springframework.cache.annotation.CachePut;
|
|
import org.springframework.cache.annotation.CachePut;
|
|
@@ -69,18 +71,16 @@ import java.util.*;
|
|
|
public class SmsbDeviceServiceImpl implements ISmsbDeviceService {
|
|
public class SmsbDeviceServiceImpl implements ISmsbDeviceService {
|
|
|
|
|
|
|
|
private final SmsbDeviceMapper baseMapper;
|
|
private final SmsbDeviceMapper baseMapper;
|
|
|
-
|
|
|
|
|
private final ISmsbDeviceManufacturerService deviceManufacturerService;
|
|
private final ISmsbDeviceManufacturerService deviceManufacturerService;
|
|
|
-
|
|
|
|
|
private final SmsbDeviceRunInfoMapper smsbDeviceRunInfoMapper;
|
|
private final SmsbDeviceRunInfoMapper smsbDeviceRunInfoMapper;
|
|
|
-
|
|
|
|
|
private final SmsbDeviceHeartRecordMapper smsbDeviceHeartRecordMapper;
|
|
private final SmsbDeviceHeartRecordMapper smsbDeviceHeartRecordMapper;
|
|
|
-
|
|
|
|
|
|
|
+ @Autowired(required = false)
|
|
|
|
|
+ private IEsSmsbDeviceService esSmsbDeviceService;
|
|
|
@Value("${server.minio.ip}")
|
|
@Value("${server.minio.ip}")
|
|
|
private String minioServerIp;
|
|
private String minioServerIp;
|
|
|
-
|
|
|
|
|
|
|
+ @Value("${easy-es.enable}")
|
|
|
|
|
+ private boolean esEnable;
|
|
|
private final static String REDIS_KEY_IDENTIFIER = "global:msr:device:identifier";
|
|
private final static String REDIS_KEY_IDENTIFIER = "global:msr:device:identifier";
|
|
|
-
|
|
|
|
|
private final static String REDIS_KEY_ID = "global:msr:device:id";
|
|
private final static String REDIS_KEY_ID = "global:msr:device:id";
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -427,11 +427,15 @@ public class SmsbDeviceServiceImpl implements ISmsbDeviceService {
|
|
|
smsbDeviceHeartRecord.setHeartType(1);
|
|
smsbDeviceHeartRecord.setHeartType(1);
|
|
|
if (null != lastHttpHeartTime) {
|
|
if (null != lastHttpHeartTime) {
|
|
|
smsbDeviceHeartRecord.setTimeInterval(currentTime - lastHttpHeartTime);
|
|
smsbDeviceHeartRecord.setTimeInterval(currentTime - lastHttpHeartTime);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
smsbDeviceHeartRecord.setTimeInterval(0L);
|
|
smsbDeviceHeartRecord.setTimeInterval(0L);
|
|
|
}
|
|
}
|
|
|
smsbDeviceHeartRecord.setTenantId(smsbDeviceVo.getTenantId());
|
|
smsbDeviceHeartRecord.setTenantId(smsbDeviceVo.getTenantId());
|
|
|
smsbDeviceHeartRecordMapper.insert(smsbDeviceHeartRecord);
|
|
smsbDeviceHeartRecordMapper.insert(smsbDeviceHeartRecord);
|
|
|
|
|
+ // 4-1 es
|
|
|
|
|
+ if (esEnable) {
|
|
|
|
|
+ esSmsbDeviceService.insertEsDeviceHeartRecord(smsbDeviceHeartRecord, smsbDeviceVo);
|
|
|
|
|
+ }
|
|
|
// 5 记录设备状态
|
|
// 5 记录设备状态
|
|
|
SmsbDeviceRunInfo deviceRunInfo = new SmsbDeviceRunInfo();
|
|
SmsbDeviceRunInfo deviceRunInfo = new SmsbDeviceRunInfo();
|
|
|
BeanUtils.copyProperties(requestParam, deviceRunInfo);
|
|
BeanUtils.copyProperties(requestParam, deviceRunInfo);
|
|
@@ -444,6 +448,10 @@ public class SmsbDeviceServiceImpl implements ISmsbDeviceService {
|
|
|
deviceRunInfo.setRamTotalOfByte(requestParam.getRamTotalOfByte().toString());
|
|
deviceRunInfo.setRamTotalOfByte(requestParam.getRamTotalOfByte().toString());
|
|
|
deviceRunInfo.setRamUsageOfByte(requestParam.getRamUsageOfByte().toString());
|
|
deviceRunInfo.setRamUsageOfByte(requestParam.getRamUsageOfByte().toString());
|
|
|
smsbDeviceRunInfoMapper.insert(deviceRunInfo);
|
|
smsbDeviceRunInfoMapper.insert(deviceRunInfo);
|
|
|
|
|
+ // 5-1 es
|
|
|
|
|
+ if (esEnable) {
|
|
|
|
|
+ esSmsbDeviceService.insertEsDeviceRunInfo(deviceRunInfo, smsbDeviceVo);
|
|
|
|
|
+ }
|
|
|
// 6 Redis 缓存
|
|
// 6 Redis 缓存
|
|
|
RedisUtils.setCacheObject(DeviceConstants.REDIS_DEVICE_RUN_INFO_KEY + requestParam.getIdentifier(), deviceRunInfo, Duration.ofMinutes(1));
|
|
RedisUtils.setCacheObject(DeviceConstants.REDIS_DEVICE_RUN_INFO_KEY + requestParam.getIdentifier(), deviceRunInfo, Duration.ofMinutes(1));
|
|
|
// 返回当前设备的Redis缓存的任务中心任务
|
|
// 返回当前设备的Redis缓存的任务中心任务
|