Commit 614a22a4 by 罗志长

Revert "feat: 坐标数据改为es"

This reverts commit e4fa4e44
parent 14da9f8e
...@@ -75,8 +75,6 @@ ...@@ -75,8 +75,6 @@
<weixin-java.version>4.5.0</weixin-java.version> <weixin-java.version>4.5.0</weixin-java.version>
<elasticsearch.version>6.8.11</elasticsearch.version>
</properties> </properties>
...@@ -290,17 +288,7 @@ ...@@ -290,17 +288,7 @@
<classifier>jdk15</classifier> <classifier>jdk15</classifier>
</dependency> </dependency>
<dependency> <!--工作流模块使用-->
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>${elasticsearch.version}</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>${elasticsearch.version}</version>
</dependency>
</dependencies> </dependencies>
......
...@@ -179,16 +179,6 @@ ...@@ -179,16 +179,6 @@
<artifactId>weixin-java-mp</artifactId> <artifactId>weixin-java-mp</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
</dependency>
</dependencies> </dependencies>
<profiles> <profiles>
......
package com.makeit.config.es;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Data
@Configuration
@ConfigurationProperties(prefix = "elasticsearch")
public class ESConfig {
private String host;
private int port;
private String scheme;
private String user;
private String password;
@Override
public String toString() {
return String.format("elasticsearch{host=%s, port=%d, user=%s, password=%s}", host, port, user, password);
}
}
\ No newline at end of file
package com.makeit.config.es;
import org.apache.http.HttpHost;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ElasticSearchClientConfig {
@Autowired
private ESConfig es;
@Bean(name = "restHighLevelClient")
public RestHighLevelClient restHighLevelClient() {
return new RestHighLevelClient(
RestClient.builder(
new HttpHost(es.getHost(), es.getPort(), es.getScheme())
)
);
}
}
\ No newline at end of file
...@@ -27,15 +27,6 @@ ...@@ -27,15 +27,6 @@
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
</dependency>
</dependencies> </dependencies>
......
package com.makeit.dto.platform.elder.es;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 长者坐标轨迹
*/
@Data
public class PlatElderCoordinateDTO {
/**
* 主键ID
*/
private String id;
/**
* 租户ID
*/
private String tenantId;
/**
* 创建时间
*/
private LocalDateTime createDate;
/**
* 1 表示空间, 2 表示跌倒
*/
private Integer type;
/**
* 空间人感:0表示无人,1表示活动, 2表示微动 ,3表示静止 ,跌倒设备:0无人,1跌倒
*/
private Integer personState;
/**
* 设备Id
*/
private String deviceId;
/**
* iot设备Id
*/
private String iotDeviceId;
/**
* 长者id
*/
private String elderId;
/**
* 跌倒设备轨迹
*/
private String track;
/**
* 上报时间
*/
private Long reportTime;
}
...@@ -2,9 +2,6 @@ package com.makeit.service.platform.elder; ...@@ -2,9 +2,6 @@ package com.makeit.service.platform.elder;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.makeit.entity.platform.elder.PlatElderCoordinateRecord; import com.makeit.entity.platform.elder.PlatElderCoordinateRecord;
import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO;
import java.util.List;
/** /**
* <p> * <p>
...@@ -18,6 +15,4 @@ public interface PlatElderCoordinateRecordService extends IService<PlatElderCoor ...@@ -18,6 +15,4 @@ public interface PlatElderCoordinateRecordService extends IService<PlatElderCoor
void coordinateRecordTask(); void coordinateRecordTask();
List<PlatElderCoordinateVO> coordinateList(String elderId, long start, long end);
} }
package com.makeit.service.platform.elder.impl; package com.makeit.service.platform.elder.impl;
import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.core.type.TypeReference;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.makeit.dto.platform.elder.es.PlatElderCoordinateDTO; import com.google.common.collect.Sets;
import com.makeit.entity.platform.elder.PlatElder; import com.makeit.entity.platform.elder.PlatElder;
import com.makeit.entity.platform.elder.PlatElderCoordinateRecord; import com.makeit.entity.platform.elder.PlatElderCoordinateRecord;
import com.makeit.entity.platform.space.PlatRegionSetting; import com.makeit.entity.platform.space.PlatRegionSetting;
...@@ -19,37 +16,20 @@ import com.makeit.service.platform.elder.PlatElderRealTimeService; ...@@ -19,37 +16,20 @@ import com.makeit.service.platform.elder.PlatElderRealTimeService;
import com.makeit.service.platform.elder.PlatElderService; import com.makeit.service.platform.elder.PlatElderService;
import com.makeit.service.platform.space.PlatRegionSettingFixService; import com.makeit.service.platform.space.PlatRegionSettingFixService;
import com.makeit.service.platform.space.PlatRegionSettingService; import com.makeit.service.platform.space.PlatRegionSettingService;
import com.makeit.utils.data.convert.JsonUtil;
import com.makeit.utils.data.convert.StreamUtil; import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.time.LocalDateTimeUtils; import com.makeit.utils.time.LocalDateTimeUtils;
import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO; import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.elasticsearch.action.bulk.BulkRequest;
import org.elasticsearch.action.bulk.BulkResponse;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.common.xcontent.XContentType;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.io.IOException;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors;
/** /**
* <p> * <p>
...@@ -59,7 +39,6 @@ import java.util.stream.Collectors; ...@@ -59,7 +39,6 @@ import java.util.stream.Collectors;
* @author eugene young * @author eugene young
* @since 2023-11-15 * @since 2023-11-15
*/ */
@Slf4j
@Service @Service
public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderCoordinateRecordMapper, PlatElderCoordinateRecord> implements PlatElderCoordinateRecordService { public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderCoordinateRecordMapper, PlatElderCoordinateRecord> implements PlatElderCoordinateRecordService {
...@@ -74,8 +53,6 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC ...@@ -74,8 +53,6 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC
private PlatRegionSettingService platRegionSettingService; private PlatRegionSettingService platRegionSettingService;
@Autowired @Autowired
private PlatElderRealTimeService platElderRealTimeService; private PlatElderRealTimeService platElderRealTimeService;
@Autowired
private RestHighLevelClient restHighLevelClient;
@Override @Override
public void coordinateRecordTask() { public void coordinateRecordTask() {
...@@ -89,36 +66,29 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC ...@@ -89,36 +66,29 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC
if (CollectionUtils.isEmpty(elderList)) { if (CollectionUtils.isEmpty(elderList)) {
return; return;
} }
PlatElderCoordinateRecord platElderCoordinateRecord;
List<PlatRegionSetting> platRegionSettingList = platRegionSettingService.list(new QueryWrapper<>()); List<PlatRegionSetting> platRegionSettingList = platRegionSettingService.list(new QueryWrapper<>());
for (PlatElder platElder : elderList) { for (PlatElder platElder : elderList) {
BulkRequest request = new BulkRequest();
request.timeout("600s");
List<PlatElderCoordinateVO> elderCoordinateVOList = platElderDayReportDayService.coordinateList(platElder.getId(), null, datStart, dayEnd); List<PlatElderCoordinateVO> elderCoordinateVOList = platElderDayReportDayService.coordinateList(platElder.getId(), null, datStart, dayEnd);
List<PlatElderCoordinateRecord> list = Lists.newArrayList();
for (PlatElderCoordinateVO vo : elderCoordinateVOList) { for (PlatElderCoordinateVO vo : elderCoordinateVOList) {
PlatElderCoordinateDTO platElderCoordinateDTO = new PlatElderCoordinateDTO(); platElderCoordinateRecord = new PlatElderCoordinateRecord();
BeanUtils.copyProperties(vo, platElderCoordinateDTO); BeanUtils.copyProperties(vo,platElderCoordinateRecord);
if (CollectionUtils.isNotEmpty(vo.getTrack())) { if (CollectionUtils.isNotEmpty(vo.getTrack())) {
platElderCoordinateDTO.setTrack(JSON.toJSONString(vo.getTrack())); platElderCoordinateRecord.setTrack(JSON.toJSONString(vo.getTrack()));
}
platElderCoordinateDTO.setReportTime(vo.getTimestamp());
platElderCoordinateDTO.setIotDeviceId(vo.getOriDeviceId());
platElderCoordinateDTO.setDeviceId(vo.getDeviceId());
platElderCoordinateDTO.setElderId(platElder.getId());
platElderCoordinateDTO.setTenantId(platElder.getTenantId());
request.add(new IndexRequest("plat_elder_coordinate").id(IdUtil.fastUUID()).type("_doc").source(JSONObject.toJSONString(platElderCoordinateDTO), XContentType.JSON));
}
if (CollectionUtils.isNotEmpty(elderCoordinateVOList)) {
try {
BulkResponse response = restHighLevelClient.bulk(request, RequestOptions.DEFAULT);
if (response.hasFailures()) {
log.error("es保存数据失败");
}
} catch (IOException e) {
log.error("es保存数据失败:{}", e);
} }
platElderCoordinateRecord.setReportTime(vo.getTimestamp());
platElderCoordinateRecord.setIotDeviceId(vo.getOriDeviceId());
platElderCoordinateRecord.setDeviceId(vo.getDeviceId());
platElderCoordinateRecord.setPersonState(vo.getPersonState());
platElderCoordinateRecord.setElderId(platElder.getId());
platElderCoordinateRecord.setTenantId(platElder.getTenantId());
list.add(platElderCoordinateRecord);
} }
saveBatch(list);
} }
List<PlatRegionSettingFix> settingFixList = StreamUtil.map(platRegionSettingList, setting -> { List<PlatRegionSettingFix> settingFixList = StreamUtil.map(platRegionSettingList, setting -> {
PlatRegionSettingFix settingFix = new PlatRegionSettingFix(); PlatRegionSettingFix settingFix = new PlatRegionSettingFix();
...@@ -128,30 +98,4 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC ...@@ -128,30 +98,4 @@ public class PlatElderCoordinateRecordServiceImpl extends ServiceImpl<PlatElderC
}); });
platRegionSettingFixService.saveBatch(settingFixList); platRegionSettingFixService.saveBatch(settingFixList);
} }
@Override
public List<PlatElderCoordinateVO> coordinateList(String elderId, long start, long end) {
SearchRequest request = new SearchRequest();
request.indices("plat_elder_coordinate");
request.types("_doc");
SearchSourceBuilder builder = new SearchSourceBuilder();
builder.query(QueryBuilders.matchQuery("elderId", elderId));
builder.query(QueryBuilders.rangeQuery("reportTime").gte(start).lte(end));
request.source(builder);
SearchResponse response = null;
List<PlatElderCoordinateVO> list = Lists.newArrayList();
try {
response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
SearchHit[] results = response.getHits().getHits();
for (SearchHit result : results) {
Map<String, Object> sourceAsMap = result.getSourceAsMap();
sourceAsMap.put("track", JSON.parseArray(MapUtils.getString(sourceAsMap, "track"), Integer.class));
PlatElderCoordinateVO platElderCoordinateVO = JsonUtil.mapToBean(sourceAsMap, PlatElderCoordinateVO.class);
list.add(platElderCoordinateVO);
}
} catch (IOException e) {
e.printStackTrace();
}
return list;
}
} }
...@@ -2,7 +2,8 @@ package com.makeit.service.platform.elder.impl; ...@@ -2,7 +2,8 @@ package com.makeit.service.platform.elder.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
...@@ -17,7 +18,9 @@ import com.makeit.enums.CommonEnum; ...@@ -17,7 +18,9 @@ import com.makeit.enums.CommonEnum;
import com.makeit.enums.platform.alarm.PlatAlarmConfigEnum; import com.makeit.enums.platform.alarm.PlatAlarmConfigEnum;
import com.makeit.enums.report.SleepTypeEnum; import com.makeit.enums.report.SleepTypeEnum;
import com.makeit.module.iot.service.IotProductDeviceService; import com.makeit.module.iot.service.IotProductDeviceService;
import com.makeit.module.iot.vo.analysis.EvaluateReportVO;
import com.makeit.module.iot.vo.fall.DeviceInfoContentFall; import com.makeit.module.iot.vo.fall.DeviceInfoContentFall;
import com.makeit.module.iot.vo.space.DeviceInfoContentSpace;
import com.makeit.service.platform.alarm.PlatAlarmRecordService; import com.makeit.service.platform.alarm.PlatAlarmRecordService;
import com.makeit.service.platform.alarm.PlatDayDurationRecordService; import com.makeit.service.platform.alarm.PlatDayDurationRecordService;
import com.makeit.service.platform.elder.*; import com.makeit.service.platform.elder.*;
...@@ -32,6 +35,7 @@ import com.makeit.utils.time.LocalDateTimeUtils; ...@@ -32,6 +35,7 @@ import com.makeit.utils.time.LocalDateTimeUtils;
import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO; import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO;
import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO; import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO;
import com.makeit.vo.platform.elder.report.day.*; import com.makeit.vo.platform.elder.report.day.*;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -125,16 +129,16 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -125,16 +129,16 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
if (platElderSleepAnalysis == null) { if (platElderSleepAnalysis == null) {
return platElderSleepEvaluationVO; return platElderSleepEvaluationVO;
} }
String sleepScore = platElderSleepAnalysis.getSleepScore(); // String sleepScore = platElderSleepAnalysis.getSleepScore();
// Long sleepScore = getSleepScore(platElderSleepAnalysis); Long sleepScore = getSleepScore(platElderSleepAnalysis);
// EvaluateReportVO evaluateReport = sleepEvaluateReportService.getByScore(sleepScore); EvaluateReportVO evaluateReport = sleepEvaluateReportService.getByScore(sleepScore);
platElderSleepEvaluationVO.setScore(Integer.valueOf(sleepScore + "")); platElderSleepEvaluationVO.setScore(Integer.valueOf(sleepScore + ""));
platElderSleepEvaluationVO.setResult(platElderSleepAnalysis.getSleepResult()); platElderSleepEvaluationVO.setResult(platElderSleepAnalysis.getSleepResult());
platElderSleepEvaluationVO.setEvaluation(platElderSleepAnalysis.getSleepEvaluate()); platElderSleepEvaluationVO.setEvaluation(evaluateReport.getEvaluate());
platElderSleepEvaluationVO.setSleepDuration(Integer.valueOf(platElderSleepAnalysis.getSleepTime() + "")); platElderSleepEvaluationVO.setSleepDuration(Integer.valueOf(platElderSleepAnalysis.getSleepTime() + ""));
platElderSleepEvaluationVO.setRestDuration(Integer.valueOf(platElderSleepAnalysis.getRestTime() + "")); platElderSleepEvaluationVO.setRestDuration(Integer.valueOf(platElderSleepAnalysis.getRestTime() + ""));
...@@ -200,9 +204,8 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -200,9 +204,8 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
String nowString = DateTimeFormatter.ofPattern("yyyy-MM-dd").format(now); String nowString = DateTimeFormatter.ofPattern("yyyy-MM-dd").format(now);
String elderId = platElderIdDTO.getElderId(); String elderId = platElderIdDTO.getElderId();
String deviceId = platElderIdDTO.getDeviceId(); if (StringUtils.isNotEmpty(platElderIdDTO.getDeviceId())) {
if (StringUtils.isNotEmpty(deviceId)) { PlatElder platElder = platElderService.getByDeviceId(platElderIdDTO.getDeviceId(), platElderIdDTO.getTenantId());
PlatElder platElder = platElderService.getByDeviceId(deviceId, platElderIdDTO.getTenantId());
if (platElder != null) { if (platElder != null) {
elderId = platElder.getId(); elderId = platElder.getId();
} }
...@@ -445,66 +448,74 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -445,66 +448,74 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
@Override @Override
public List<PlatElderCoordinateVO> coordinateList(String elderId, long start, long end) { public List<PlatElderCoordinateVO> coordinateList(String elderId, long start, long end) {
return platElderCoordinateRecordService.coordinateList(elderId, start, end); LambdaQueryWrapper<PlatElderCoordinateRecord> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PlatElderCoordinateRecord::getElderId, elderId);
queryWrapper.ge(PlatElderCoordinateRecord::getReportTime, start);
queryWrapper.le(PlatElderCoordinateRecord::getReportTime, end);
List<PlatElderCoordinateRecord> list = platElderCoordinateRecordService.list(queryWrapper);
return list.stream().map(r -> {
PlatElderCoordinateVO platElderCoordinateVO = new PlatElderCoordinateVO();
BeanUtils.copyProperties(r, platElderCoordinateVO);
platElderCoordinateVO.setTimestamp(r.getReportTime());
platElderCoordinateVO.setOriDeviceId(r.getIotDeviceId());
if (StringUtils.isNotBlank(r.getTrack())) {
platElderCoordinateVO.setTrack(JSON.parseArray(r.getTrack(), Integer.class));
}
return platElderCoordinateVO;
}).collect(Collectors.toList());
} }
@Override @Override
public List<PlatElderCoordinateVO> coordinateList(String elderId, String deviceId, LocalDateTime start, LocalDateTime end) { public List<PlatElderCoordinateVO> coordinateList(String elderId, String deviceId, LocalDateTime start, LocalDateTime end) {
// 主要为了获取track,空间设备没有该字段,所以去除
// List<PlatDevice> platDeviceListSpace = platElderRealTimeService.getSpaceDevice(elderId, deviceId); List<PlatDevice> platDeviceListSpace = platElderRealTimeService.getSpaceDevice(elderId, deviceId);
List<PlatDevice> platDeviceListFall = platElderRealTimeService.getFallDevice(elderId, deviceId); List<PlatDevice> platDeviceListFall = platElderRealTimeService.getFallDevice(elderId, deviceId);
if (CollectionUtils.isEmpty(platDeviceListFall)) { if (CollectionUtils.isEmpty(platDeviceListSpace) && CollectionUtils.isEmpty(platDeviceListFall)) {
return new ArrayList<>(10); return new ArrayList<>(10);
} }
List<PlatElderCoordinateVO> voList = new ArrayList<>(10); List<PlatElderCoordinateVO> voList = new ArrayList<>(10);
// platDeviceListSpace.forEach(e -> { platDeviceListSpace.forEach(e -> {
// List<DeviceInfoContentSpace> spaceList = iotProductDeviceService.getDeviceLogByTimeRangeSpace(e.getOriDeviceId(), 24 * 3600, start, end); List<DeviceInfoContentSpace> spaceList = iotProductDeviceService.getDeviceLogByTimeRangeSpace(e.getOriDeviceId(), 24 * 3600, start, end);
// voList.addAll(StreamUtil.map(spaceList, i -> { voList.addAll(StreamUtil.map(spaceList, i -> {
//
// PlatElderCoordinateVO vo = new PlatElderCoordinateVO(); PlatElderCoordinateVO vo = new PlatElderCoordinateVO();
// vo.setTimestamp(i.getTimestamp()); vo.setTimestamp(i.getTimestamp());
// vo.setDistance(i.getProperties().getDistance()); vo.setDistance(i.getProperties().getDistance());
// vo.setAngle(i.getProperties().getAngle()); vo.setAngle(i.getProperties().getAngle());
// vo.setType(1); vo.setType(1);
// vo.setPersonState(i.getProperties().getPersonState()); vo.setPersonState(i.getProperties().getPersonState());
// vo.setMount(i.getProperties().getMount()); vo.setMount(i.getProperties().getMount());
// vo.setDeviceId(e.getId()); vo.setDeviceId(e.getId());
// vo.setOriDeviceId(e.getOriDeviceId()); vo.setOriDeviceId(e.getOriDeviceId());
//
// return vo; return vo;
//
// }) })
// ); );
//
// }); });
platDeviceListFall.forEach(e -> { platDeviceListFall.forEach(e -> {
List<DeviceInfoContentFall> fallList = iotProductDeviceService.getDeviceLogByTimeRangeFall(e.getOriDeviceId(), 2 * 24 * 3600, start, end); List<DeviceInfoContentFall> fallList = iotProductDeviceService.getDeviceLogByTimeRangeFall(e.getOriDeviceId(), 2 * 24 * 3600, start, end);
Map<String, Boolean> existMap = new HashMap<>(); voList.addAll(StreamUtil.map(fallList, i -> {
for (DeviceInfoContentFall deviceInfoContentFall : fallList) {
DeviceInfoContentFall.Properties properties = deviceInfoContentFall.getProperties(); PlatElderCoordinateVO vo = new PlatElderCoordinateVO();
if (properties == null || CollectionUtils.isEmpty(properties.getTrack())) { vo.setTimestamp(i.getTimestamp());
continue; vo.setTrack(i.getProperties().getTrack());
} vo.setDeviceId(e.getId());
String key = deviceInfoContentFall.getDeviceId() + "_" + JSONObject.toJSONString(properties.getTrack()); vo.setType(2);
if (!existMap.containsKey(key)) { vo.setPersonState(i.getProperties().getPersonState());
existMap.put(key, true); vo.setMount(i.getProperties().getMount());
vo.setOriDeviceId(e.getOriDeviceId());
PlatElderCoordinateVO vo = new PlatElderCoordinateVO();
vo.setTimestamp(deviceInfoContentFall.getTimestamp()); return vo;
vo.setTrack(properties.getTrack());
vo.setDeviceId(e.getId()); })
vo.setType(2); );
vo.setPersonState(properties.getPersonState());
vo.setMount(properties.getMount());
vo.setOriDeviceId(e.getOriDeviceId());
voList.add(vo);
}
}
}); });
return voList; return voList;
......
...@@ -173,13 +173,6 @@ aliyun: ...@@ -173,13 +173,6 @@ aliyun:
bucket: kangyang-oss bucket: kangyang-oss
baseDir: kangyang baseDir: kangyang
elasticsearch:
host: 124.71.33.17
port: 9200
user:
password:
scheme: http
......
...@@ -171,10 +171,4 @@ aliyun: ...@@ -171,10 +171,4 @@ aliyun:
bucket: kangyang-oss bucket: kangyang-oss
baseDir: kangyang baseDir: kangyang
elasticsearch:
host: 124.71.33.17
port: 9200
user:
password:
scheme: http
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment