|
|
@@ -41,6 +41,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
@@ -195,20 +196,15 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
|
|
|
iotAlarmData.setOrgId(sysOrg.getId());
|
|
|
iotAlarmData.setDeviceId(String.valueOf(deviceInfo.getId()));
|
|
|
final String sourceType = SensorType.getCodeByProduct(dataReq.getProductType());
|
|
|
- try {
|
|
|
- fieldList.stream()
|
|
|
- .filter(r -> ObjectUtil.equal(String.valueOf(r.getSourceType()), sourceType))
|
|
|
- .filter(r -> ObjectUtil.equal(r.getPropertyName(), dataReq.getProductProperty()))
|
|
|
- .findAny()
|
|
|
- .ifPresent(r -> {
|
|
|
- iotAlarmData.setSourceType(r.getSourceType());
|
|
|
- iotAlarmData.setSourceTypeDes(r.getSourceTypeDes());
|
|
|
- iotAlarmData.setFieldCode(r.getSysFieldCode());
|
|
|
- });
|
|
|
- } catch (Exception e) {
|
|
|
-
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
+ fieldList.stream()
|
|
|
+ .filter(r -> ObjectUtil.equal(String.valueOf(r.getSourceType()), sourceType))
|
|
|
+ .filter(r -> ObjectUtil.equal(r.getPropertyName(), dataReq.getProductProperty()))
|
|
|
+ .findAny()
|
|
|
+ .ifPresent(r -> {
|
|
|
+ iotAlarmData.setSourceType(r.getSourceType());
|
|
|
+ iotAlarmData.setSourceTypeDes(r.getSourceTypeDes());
|
|
|
+ iotAlarmData.setFieldCode(r.getSysFieldCode());
|
|
|
+ });
|
|
|
iotAlarmDataService.saveOrUpdate(iotAlarmData);
|
|
|
// 发生报警
|
|
|
if(ObjectUtil.isNotNull(dataReq.getStartTime())&&ObjectUtil.isNull(dataReq.getEndTime())){
|
|
|
@@ -254,6 +250,7 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
|
|
|
List<IotAlarmSystemField> fieldList = alarmSystemFieldMapper.selectList(new LambdaQueryWrapper<>());
|
|
|
final JSONArray array = dealStatusData(data, fieldList, deviceType);
|
|
|
IotDeviceStatus status = getByDeviceId(code.getId());
|
|
|
+ final LocalDateTime now = LocalDateTime.now();
|
|
|
if (status == null) {
|
|
|
status = new IotDeviceStatus();
|
|
|
BeanUtils.copyProperties(code, status, "id");
|
|
|
@@ -262,9 +259,13 @@ public class IotDeviceStatusServiceImpl extends ServiceImpl<IotDeviceStatusMappe
|
|
|
status.setUniqueCode();
|
|
|
status.setDeviceType(deviceType);
|
|
|
status.setInfo(JSON.toJSONString(array));
|
|
|
+ status.setStateUpdateTime(now);
|
|
|
+ status.setStateStartTime(now);
|
|
|
save(status);
|
|
|
} else {
|
|
|
status.setInfo(JSON.toJSONString(array));
|
|
|
+ status.setStateStartTime(now);
|
|
|
+ status.setStateUpdateTime(now);
|
|
|
updateById(status);
|
|
|
}
|
|
|
deviceStatusLogService.saveLog(status);
|