Commit bacc1801 by 汪志阳

Merge branch 'dev'

parents d6fa5969 41429564
...@@ -75,6 +75,8 @@ ...@@ -75,6 +75,8 @@
<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>
...@@ -288,7 +290,17 @@ ...@@ -288,7 +290,17 @@
<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,6 +179,16 @@ ...@@ -179,6 +179,16 @@
<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
...@@ -7,11 +7,22 @@ import java.util.List; ...@@ -7,11 +7,22 @@ import java.util.List;
@Data @Data
public class SleepTimeAnalysisVO { public class SleepTimeAnalysisVO {
/**
* 满足入睡条件开始时间
*/
private String startTime; private String startTime;
/**
* 不满足入睡条件的时间
*/
private String endTime; private String endTime;
/** /**
* 起床时间
*/
private String newEndTime;
/**
* 间隔时间(分钟) * 间隔时间(分钟)
*/ */
private Long interval; private Long interval;
......
...@@ -4,6 +4,8 @@ package com.makeit.module.controller.elder; ...@@ -4,6 +4,8 @@ package com.makeit.module.controller.elder;
import com.makeit.common.response.ApiResponseEntity; import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils; import com.makeit.common.response.ApiResponseUtils;
import com.makeit.dto.platform.elder.PlatElderReportDTO; import com.makeit.dto.platform.elder.PlatElderReportDTO;
import com.makeit.global.annotation.AuthIgnore;
import com.makeit.global.aspect.tenant.TenantIdIgnore;
import com.makeit.service.platform.elder.PlatElderDayReportDayService; import com.makeit.service.platform.elder.PlatElderDayReportDayService;
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;
...@@ -42,6 +44,8 @@ public class PlatElderReportDayController { ...@@ -42,6 +44,8 @@ public class PlatElderReportDayController {
@ApiOperation("睡眠图表") @ApiOperation("睡眠图表")
@PostMapping("sleepDiagram") @PostMapping("sleepDiagram")
@AuthIgnore
@TenantIdIgnore
public ApiResponseEntity<List<PlatElderSleepDiagramVO>> sleepDiagram(@RequestBody PlatElderReportDTO platElderIdDTO) { public ApiResponseEntity<List<PlatElderSleepDiagramVO>> sleepDiagram(@RequestBody PlatElderReportDTO platElderIdDTO) {
return ApiResponseUtils.success(platElderDayReportDayService.sleepDiagram(platElderIdDTO)); return ApiResponseUtils.success(platElderDayReportDayService.sleepDiagram(platElderIdDTO));
} }
......
...@@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject;
import com.makeit.common.response.ApiResponseEntity; import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils; import com.makeit.common.response.ApiResponseUtils;
import com.makeit.dto.wechat.device.PlatDeviceAttrWechatDTO; import com.makeit.dto.wechat.device.PlatDeviceAttrWechatDTO;
import com.makeit.entity.platform.elder.ElderSleepAnalysisVO;
import com.makeit.entity.platform.elder.PlatElderBreatheAnalysis; import com.makeit.entity.platform.elder.PlatElderBreatheAnalysis;
import com.makeit.entity.platform.elder.PlatElderSleepAnalysis; import com.makeit.entity.platform.elder.PlatElderSleepAnalysis;
import com.makeit.external.huineng.HuiNengService; import com.makeit.external.huineng.HuiNengService;
...@@ -74,7 +73,7 @@ public class PlatElderSleepController { ...@@ -74,7 +73,7 @@ public class PlatElderSleepController {
@GetMapping("test4") @GetMapping("test4")
@AuthIgnore @AuthIgnore
@TenantIdIgnore @TenantIdIgnore
public ApiResponseEntity<List<ElderSleepAnalysisVO>> elderSleepSleepAnalysisTask(@RequestParam Integer month, public ApiResponseEntity<List<PlatElderSleepAnalysis>> elderSleepSleepAnalysisTask(@RequestParam Integer month,
@RequestParam Integer day) { @RequestParam Integer day) {
return ApiResponseUtils.success(platElderSleepService.elderSleepSleepAnalysisTask(month, day)); return ApiResponseUtils.success(platElderSleepService.elderSleepSleepAnalysisTask(month, day));
} }
......
...@@ -27,6 +27,15 @@ ...@@ -27,6 +27,15 @@
<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;
}
...@@ -18,6 +18,9 @@ public class PlatRegionSettingFixQueryDTO { ...@@ -18,6 +18,9 @@ public class PlatRegionSettingFixQueryDTO {
@ApiModelProperty("房间ID") @ApiModelProperty("房间ID")
private String roomId; private String roomId;
@ApiModelProperty("长者ID")
private String elderId;
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty("日期 yyyy-MM-dd") @ApiModelProperty("日期 yyyy-MM-dd")
private LocalDate now; private LocalDate now;
......
...@@ -2,6 +2,9 @@ package com.makeit.service.platform.elder; ...@@ -2,6 +2,9 @@ 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>
...@@ -15,4 +18,6 @@ public interface PlatElderCoordinateRecordService extends IService<PlatElderCoor ...@@ -15,4 +18,6 @@ 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; 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.ElderSleepAnalysisVO;
import com.makeit.entity.platform.elder.PlatElderSleep; import com.makeit.entity.platform.elder.PlatElderSleep;
import com.makeit.entity.platform.elder.PlatElderSleepAnalysis;
import com.makeit.entity.saas.analysis.SaasSleepEvaluateStandardReport; import com.makeit.entity.saas.analysis.SaasSleepEvaluateStandardReport;
import java.util.List; import java.util.List;
...@@ -17,7 +17,7 @@ import java.util.List; ...@@ -17,7 +17,7 @@ import java.util.List;
*/ */
public interface PlatElderSleepService extends IService<PlatElderSleep> { public interface PlatElderSleepService extends IService<PlatElderSleep> {
List<ElderSleepAnalysisVO> elderSleepSleepAnalysisTask(Integer month, Integer day); List<PlatElderSleepAnalysis> elderSleepSleepAnalysisTask(Integer month, Integer day);
String calculateScores(long daySleepTime, long dayRestTime, long deepTime, long soberTime, long lightTime, String calculateScores(long daySleepTime, long dayRestTime, long deepTime, long soberTime, long lightTime,
SaasSleepEvaluateStandardReport evaluateStandardReport); SaasSleepEvaluateStandardReport evaluateStandardReport);
......
...@@ -3,6 +3,7 @@ package com.makeit.service.platform.elder.impl; ...@@ -3,6 +3,7 @@ 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.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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;
...@@ -46,7 +47,10 @@ import java.time.LocalDateTime; ...@@ -46,7 +47,10 @@ import java.time.LocalDateTime;
import java.time.ZoneOffset; import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -239,7 +243,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -239,7 +243,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
} }
List<PlatElderSleep> wakeUpList = sleepList.stream().filter(f -> f.getElderSleepType().equals(SleepTypeEnum.GETUP.getType())).collect(Collectors.toList()); List<PlatElderSleep> wakeUpList = sleepList.stream().filter(f -> f.getElderSleepType().equals(SleepTypeEnum.GETUP.getType())).collect(Collectors.toList());
sleeps.forEach(s -> { sleeps.forEach(s -> {
List<PlatElderSleep> wakeList = wakeUpList.stream().filter(f -> s.getStartSleep().isAfter(s.getEndSleep())).collect(Collectors.toList()); List<PlatElderSleep> wakeList = wakeUpList.stream().filter(f -> f.getStartSleep().isAfter(s.getEndSleep())).collect(Collectors.toList());
if (CollUtil.isNotEmpty(wakeList)) { if (CollUtil.isNotEmpty(wakeList)) {
final long[] minute = {24 * 60}; final long[] minute = {24 * 60};
wakeList.forEach(w -> { wakeList.forEach(w -> {
...@@ -460,74 +464,66 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -460,74 +464,66 @@ 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) {
LambdaQueryWrapper<PlatElderCoordinateRecord> queryWrapper = new LambdaQueryWrapper<>(); return platElderCoordinateRecordService.coordinateList(elderId, start, end);
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(platDeviceListSpace) && CollectionUtils.isEmpty(platDeviceListFall)) { if (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);
voList.addAll(StreamUtil.map(fallList, i -> { Map<String, Boolean> existMap = new HashMap<>();
for (DeviceInfoContentFall deviceInfoContentFall : fallList) {
PlatElderCoordinateVO vo = new PlatElderCoordinateVO(); DeviceInfoContentFall.Properties properties = deviceInfoContentFall.getProperties();
vo.setTimestamp(i.getTimestamp()); if (properties == null || CollectionUtils.isEmpty(properties.getTrack())) {
vo.setTrack(i.getProperties().getTrack()); continue;
vo.setDeviceId(e.getId()); }
vo.setType(2); String key = deviceInfoContentFall.getDeviceId() + "_" + JSONObject.toJSONString(properties.getTrack());
vo.setPersonState(i.getProperties().getPersonState()); if (!existMap.containsKey(key)) {
vo.setMount(i.getProperties().getMount()); existMap.put(key, true);
vo.setOriDeviceId(e.getOriDeviceId());
PlatElderCoordinateVO vo = new PlatElderCoordinateVO();
return vo; vo.setTimestamp(deviceInfoContentFall.getTimestamp());
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;
......
...@@ -10,6 +10,7 @@ import com.makeit.entity.platform.space.PlatRegionSettingFix; ...@@ -10,6 +10,7 @@ import com.makeit.entity.platform.space.PlatRegionSettingFix;
import com.makeit.mapper.platform.space.PlatRegionSettingFixMapper; import com.makeit.mapper.platform.space.PlatRegionSettingFixMapper;
import com.makeit.service.platform.device.PlatDeviceService; import com.makeit.service.platform.device.PlatDeviceService;
import com.makeit.service.platform.space.PlatRegionSettingFixService; import com.makeit.service.platform.space.PlatRegionSettingFixService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -18,9 +19,7 @@ import org.springframework.stereotype.Service; ...@@ -18,9 +19,7 @@ import org.springframework.stereotype.Service;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function; import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -39,21 +38,29 @@ public class PlatRegionSettingFixServiceImpl extends ServiceImpl<PlatRegionSetti ...@@ -39,21 +38,29 @@ public class PlatRegionSettingFixServiceImpl extends ServiceImpl<PlatRegionSetti
@Override @Override
public List<PlatRegionSettingDTO> list(PlatRegionSettingFixQueryDTO dto) { public List<PlatRegionSettingDTO> list(PlatRegionSettingFixQueryDTO dto) {
if (StringUtils.isAnyBlank(dto.getReportType(), dto.getRoomId())) { if (StringUtils.isAnyBlank(dto.getReportType(), dto.getElderId())) {
return Lists.newArrayList(); return Lists.newArrayList();
} }
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LambdaQueryWrapper<PlatRegionSettingFix> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PlatRegionSettingFix> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PlatRegionSettingFix::getRoomId, dto.getRoomId()); queryWrapper.eq(PlatRegionSettingFix::getElderId, dto.getElderId());
if ("0".equals(dto.getReportType())) { if ("0".equals(dto.getReportType())) {
queryWrapper.eq(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getNow())); queryWrapper.eq(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getNow()));
} else { } else {
queryWrapper.ge(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getStartTime())); queryWrapper.eq(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getEndTime()));
queryWrapper.le(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getEndTime()));
} }
queryWrapper.orderByDesc(PlatRegionSettingFix::getCreateDate);
List<PlatRegionSettingFix> list = this.list(queryWrapper); List<PlatRegionSettingFix> list = this.list(queryWrapper);
list = list.stream().filter(distinctByKey(PlatRegionSettingFix::getDeviceId)).collect(Collectors.toList()); // 兼容部分没有关联长者的数据
if (CollectionUtils.isEmpty(list)) {
LambdaQueryWrapper<PlatRegionSettingFix> queryWrapper1 = new LambdaQueryWrapper<>();
queryWrapper1.eq(PlatRegionSettingFix::getRoomId, dto.getRoomId());
if ("0".equals(dto.getReportType())) {
queryWrapper1.eq(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getNow()));
} else {
queryWrapper1.eq(PlatRegionSettingFix::getHappenDate, dateTimeFormatter.format(dto.getEndTime()));
}
list = this.list(queryWrapper1);
}
List<String> deviceIds = list.stream().map(PlatRegionSettingFix::getDeviceId).collect(Collectors.toList()); List<String> deviceIds = list.stream().map(PlatRegionSettingFix::getDeviceId).collect(Collectors.toList());
Map<String, PlatDevice> deviceMap = platDeviceService.listByIds(deviceIds).stream().collect(Collectors.toMap(PlatDevice::getId, Function.identity())); Map<String, PlatDevice> deviceMap = platDeviceService.listByIds(deviceIds).stream().collect(Collectors.toMap(PlatDevice::getId, Function.identity()));
return list.stream().map(p -> { return list.stream().map(p -> {
...@@ -67,9 +74,4 @@ public class PlatRegionSettingFixServiceImpl extends ServiceImpl<PlatRegionSetti ...@@ -67,9 +74,4 @@ public class PlatRegionSettingFixServiceImpl extends ServiceImpl<PlatRegionSetti
}).collect(Collectors.toList()); }).collect(Collectors.toList());
} }
private static <T> Predicate<T> distinctByKey(Function<? super T, Object> keyExtractor) {
Map<Object, Boolean> seen = new ConcurrentHashMap<>();
return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}
} }
...@@ -173,6 +173,13 @@ aliyun: ...@@ -173,6 +173,13 @@ aliyun:
bucket: kangyang-oss bucket: kangyang-oss
baseDir: kangyang baseDir: kangyang
elasticsearch:
host: 124.71.33.17
port: 9200
user:
password:
scheme: http
......
...@@ -171,4 +171,10 @@ aliyun: ...@@ -171,4 +171,10 @@ 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