Commit aeb05456 by huangjy

Merge remote-tracking branch 'origin/dev' into dev

parents fe64a939 eb988098
...@@ -27,4 +27,7 @@ public class PlatRoomBedDevice extends BaseBusEntity { ...@@ -27,4 +27,7 @@ public class PlatRoomBedDevice extends BaseBusEntity {
@TableField(updateStrategy = FieldStrategy.IGNORED) @TableField(updateStrategy = FieldStrategy.IGNORED)
@ApiModelProperty(value = "床位Id") @ApiModelProperty(value = "床位Id")
private String bedId; private String bedId;
@TableField(exist = false)
private String path;
} }
...@@ -2,6 +2,7 @@ package com.makeit.mapper.platform.device; ...@@ -2,6 +2,7 @@ package com.makeit.mapper.platform.device;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO;
import com.makeit.dto.platform.device.PlatDeviceQueryDTO; import com.makeit.dto.platform.device.PlatDeviceQueryDTO;
import com.makeit.entity.platform.device.PlatDevice; import com.makeit.entity.platform.device.PlatDevice;
import com.makeit.vo.platform.device.PlatDeviceListVO; import com.makeit.vo.platform.device.PlatDeviceListVO;
...@@ -20,4 +21,5 @@ public interface PlatDeviceMapper extends BaseMapper<PlatDevice> { ...@@ -20,4 +21,5 @@ public interface PlatDeviceMapper extends BaseMapper<PlatDevice> {
Page<PlatDeviceListVO> getDeviceIdsBySpaceId(@Param("param")PlatDeviceQueryDTO param, Page page); Page<PlatDeviceListVO> getDeviceIdsBySpaceId(@Param("param")PlatDeviceQueryDTO param, Page page);
Page<PlatDeviceListVO> getDevices(@Param("param")PlatDataScreenQueryDTO param, Page<PlatDevice> page);
} }
...@@ -15,6 +15,7 @@ import com.makeit.entity.platform.device.PlatDevice; ...@@ -15,6 +15,7 @@ import com.makeit.entity.platform.device.PlatDevice;
import com.makeit.entity.platform.elder.PlatElder; import com.makeit.entity.platform.elder.PlatElder;
import com.makeit.entity.platform.space.PlatBed; import com.makeit.entity.platform.space.PlatBed;
import com.makeit.entity.platform.space.PlatRoom; import com.makeit.entity.platform.space.PlatRoom;
import com.makeit.entity.platform.space.PlatRoomBedDevice;
import com.makeit.entity.platform.space.PlatSpace; import com.makeit.entity.platform.space.PlatSpace;
import com.makeit.enums.CommonEnum; import com.makeit.enums.CommonEnum;
import com.makeit.enums.platform.alarm.PlatAlarmConfigEnum; import com.makeit.enums.platform.alarm.PlatAlarmConfigEnum;
...@@ -29,6 +30,7 @@ import com.makeit.service.platform.dataScreen.DataScreenService; ...@@ -29,6 +30,7 @@ import com.makeit.service.platform.dataScreen.DataScreenService;
import com.makeit.service.platform.device.PlatDeviceService; import com.makeit.service.platform.device.PlatDeviceService;
import com.makeit.service.platform.elder.PlatElderService; import com.makeit.service.platform.elder.PlatElderService;
import com.makeit.service.platform.space.PlatBedService; import com.makeit.service.platform.space.PlatBedService;
import com.makeit.service.platform.space.PlatRoomBedDeviceService;
import com.makeit.service.platform.space.PlatSpaceService; import com.makeit.service.platform.space.PlatSpaceService;
import com.makeit.utils.area.AreaUtil; import com.makeit.utils.area.AreaUtil;
import com.makeit.utils.area.ChinaAreaVO; import com.makeit.utils.area.ChinaAreaVO;
...@@ -41,6 +43,7 @@ import com.makeit.vo.platform.dataScreen.*; ...@@ -41,6 +43,7 @@ import com.makeit.vo.platform.dataScreen.*;
import com.makeit.vo.platform.device.PlatDeviceListVO; import com.makeit.vo.platform.device.PlatDeviceListVO;
import com.makeit.vo.platform.elder.PlatElderListVO; import com.makeit.vo.platform.elder.PlatElderListVO;
import jodd.util.StringUtil; import jodd.util.StringUtil;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -53,6 +56,7 @@ import java.time.format.DateTimeFormatter; ...@@ -53,6 +56,7 @@ import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* Controller * Controller
...@@ -76,6 +80,8 @@ public class DataScreenServiceImpl implements DataScreenService { ...@@ -76,6 +80,8 @@ public class DataScreenServiceImpl implements DataScreenService {
private PlatSpaceService platSpaceService; private PlatSpaceService platSpaceService;
@Autowired @Autowired
private PlatOrgService platOrgService; private PlatOrgService platOrgService;
@Autowired
private PlatRoomBedDeviceService platRoomBedDeviceService;
@Override @Override
public PlatAgeStatisticsVO ageStatistics(PlatDataScreenQueryDTO dto) { public PlatAgeStatisticsVO ageStatistics(PlatDataScreenQueryDTO dto) {
...@@ -508,14 +514,42 @@ public class DataScreenServiceImpl implements DataScreenService { ...@@ -508,14 +514,42 @@ public class DataScreenServiceImpl implements DataScreenService {
} }
Page<PlatDevice> p = PageUtil.toMpPage(pageReqDTO); Page<PlatDevice> p = PageUtil.toMpPage(pageReqDTO);
LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<PlatDevice>() // LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<PlatDevice>()
.eq(StringUtils.isNotBlank(dto.getDeviceStatus()), PlatDevice::getStatus, dto.getDeviceStatus()) // .eq(StringUtils.isNotBlank(dto.getDeviceStatus()), PlatDevice::getStatus, dto.getDeviceStatus())
.in(PlatDevice::getOrgId, dto.getOrgIds()) // .in(PlatDevice::getOrgId, dto.getOrgIds())
.orderByDesc(BaseEntity::getUpdateDate); // .orderByDesc(BaseEntity::getUpdateDate);
//
// Page<PlatDevice> page = platDeviceService.page(p, queryWrapper);
Page<PlatDeviceListVO> page = platDeviceService.getDevices(dto, p);
List<PlatDeviceListVO> voList = page.getRecords();
if(CollectionUtils.isEmpty(voList)){
return new PageVO<>();
}
List<String> spaceIdList = voList.stream().flatMap(vo -> {
String spaceParentPath = vo.getSpaceParentPath();
String spp = Optional.ofNullable(spaceParentPath).orElse("");
return Stream.of(spp.split(","));
}).collect(Collectors.toList());
spaceIdList.add("-1");
List<PlatSpace> platSpaces = platSpaceService.listByIds(spaceIdList);
Page<PlatDevice> page = platDeviceService.page(p, queryWrapper); Map<String, String> spaceIdNameMap = platSpaces.stream().collect(Collectors.toMap(BaseEntity::getId, vo -> vo.getName(), (v1, v2) -> v1));
List<PlatDeviceListVO> voList = BeanDtoVoUtils.listVo(page.getRecords(), PlatDeviceListVO.class); for (PlatDeviceListVO record : voList) {
String spaceParentPath = record.getSpaceParentPath();
if(StringUtils.isNotBlank(spaceParentPath)){
String spaceNameJoin = Stream.of(spaceParentPath.split(",")).map(vo -> spaceIdNameMap.get(vo)).collect(Collectors.joining("-"));
String spaceName = spaceNameJoin + "-" + record.getSpaceName() + "-" + record.getRoomName();
if(StringUtils.isNotBlank(record.getBedName())){
spaceName = spaceName +"-"+record.getBedName();
}
record.setSpaceName(spaceName);
}
}
JoinUtil.join(voList, platOrgService, PlatDeviceListVO::getOrgId, PlatOrg::getId, (d, o) -> { JoinUtil.join(voList, platOrgService, PlatDeviceListVO::getOrgId, PlatOrg::getId, (d, o) -> {
d.setOrgName(o.getName()); d.setOrgName(o.getName());
......
package com.makeit.service.platform.device; package com.makeit.service.platform.device;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.makeit.common.page.PageReqDTO; import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO; import com.makeit.common.page.PageVO;
import com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO;
import com.makeit.dto.platform.device.PlatDeviceDetailDTO; import com.makeit.dto.platform.device.PlatDeviceDetailDTO;
import com.makeit.dto.platform.device.PlatDeviceEditDTO; import com.makeit.dto.platform.device.PlatDeviceEditDTO;
import com.makeit.dto.platform.device.PlatDeviceQueryDTO; import com.makeit.dto.platform.device.PlatDeviceQueryDTO;
...@@ -62,4 +64,6 @@ public interface PlatDeviceService extends IService<PlatDevice> { ...@@ -62,4 +64,6 @@ public interface PlatDeviceService extends IService<PlatDevice> {
List<DeviceProperties> readDeviceProperties(PlatDeviceAttrWechatDTO dto); List<DeviceProperties> readDeviceProperties(PlatDeviceAttrWechatDTO dto);
List<PlatDevice> productList(PlatDeviceQueryDTO dto); List<PlatDevice> productList(PlatDeviceQueryDTO dto);
Page<PlatDeviceListVO> getDevices(PlatDataScreenQueryDTO dto, Page<PlatDevice> p);
} }
...@@ -11,6 +11,7 @@ import com.makeit.common.entity.BaseBusEntity; ...@@ -11,6 +11,7 @@ import com.makeit.common.entity.BaseBusEntity;
import com.makeit.common.entity.BaseEntity; import com.makeit.common.entity.BaseEntity;
import com.makeit.common.page.PageReqDTO; import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO; import com.makeit.common.page.PageVO;
import com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO;
import com.makeit.dto.platform.device.PlatDeviceDetailDTO; import com.makeit.dto.platform.device.PlatDeviceDetailDTO;
import com.makeit.dto.platform.device.PlatDeviceEditDTO; import com.makeit.dto.platform.device.PlatDeviceEditDTO;
import com.makeit.dto.platform.device.PlatDeviceQueryDTO; import com.makeit.dto.platform.device.PlatDeviceQueryDTO;
...@@ -371,4 +372,9 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev ...@@ -371,4 +372,9 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev
.groupBy(PlatDevice::getProductId)); .groupBy(PlatDevice::getProductId));
return platDevices; return platDevices;
} }
@Override
public Page<PlatDeviceListVO> getDevices(PlatDataScreenQueryDTO dto, Page<PlatDevice> page) {
return baseMapper.getDevices(dto,page);
}
} }
...@@ -385,13 +385,13 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -385,13 +385,13 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
List<LocalDate> dateList = LocalDateTimeUtils.getDateSeries(weekStartDate, weekEndDate); List<LocalDate> dateList = LocalDateTimeUtils.getDateSeries(weekStartDate, weekEndDate);
String deviceId = null; String deviceId = null;
String oriDeviceId = null; //String oriDeviceId = null;
PlatDevice platDevice = platElderRealTimeService.getBreathDevice(platElderIdDTO.getElderId(), platElderIdDTO.getDeviceId()); PlatDevice platDevice = platElderRealTimeService.getBreathDevice(platElderIdDTO.getElderId(), platElderIdDTO.getDeviceId());
if (platDevice != null) { if (platDevice != null) {
deviceId = platDevice.getId(); deviceId = platDevice.getId();
oriDeviceId = platDevice.getOriDeviceId(); //oriDeviceId = platDevice.getOriDeviceId();
} }
LambdaQueryWrapper<PlatElderBreatheDayStat> lambdaQueryWrapper = new QueryWrapper<PlatElderBreatheDayStat>().lambda(); LambdaQueryWrapper<PlatElderBreatheDayStat> lambdaQueryWrapper = new QueryWrapper<PlatElderBreatheDayStat>().lambda();
...@@ -400,17 +400,17 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -400,17 +400,17 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
lambdaQueryWrapper.le(PlatElderBreatheDayStat::getDay, weekEndDate); lambdaQueryWrapper.le(PlatElderBreatheDayStat::getDay, weekEndDate);
String finalDeviceId = deviceId; String finalDeviceId = deviceId;
String finalOriDeviceId = oriDeviceId; //String finalOriDeviceId = oriDeviceId;
lambdaQueryWrapper.and(StringUtils.isNotBlank(platElderIdDTO.getElderId()) || StringUtils.isNotBlank(finalDeviceId) || StringUtils.isNotBlank(finalOriDeviceId), qw -> { lambdaQueryWrapper.and(StringUtils.isNotBlank(platElderIdDTO.getElderId()) || StringUtils.isNotBlank(finalDeviceId) /*|| StringUtils.isNotBlank(finalOriDeviceId)*/, qw -> {
if (StringUtils.isNotBlank(platElderIdDTO.getElderId())) { if (StringUtils.isNotBlank(platElderIdDTO.getElderId())) {
qw.eq(PlatElderBreatheDayStat::getElderId, platElderIdDTO.getElderId()); qw.eq(PlatElderBreatheDayStat::getElderId, platElderIdDTO.getElderId());
} }
if (StringUtils.isNotBlank(finalDeviceId)) { if (StringUtils.isNotBlank(finalDeviceId)) {
qw.or().eq(PlatElderBreatheDayStat::getDeviceId, finalDeviceId); qw.or().eq(PlatElderBreatheDayStat::getDeviceId, finalDeviceId);
} }
if (StringUtils.isNotBlank(finalOriDeviceId)) { // if (StringUtils.isNotBlank(finalOriDeviceId)) {
qw.or().eq(PlatElderBreatheDayStat::getOriDeviceId, finalOriDeviceId); // qw.or().eq(PlatElderBreatheDayStat::getOriDeviceId, finalOriDeviceId);
} // }
}); });
lambdaQueryWrapper.eq(StringUtils.isNotBlank(platElderIdDTO.getTenantId()), BaseBusEntity::getTenantId,platElderIdDTO.getTenantId()); lambdaQueryWrapper.eq(StringUtils.isNotBlank(platElderIdDTO.getTenantId()), BaseBusEntity::getTenantId,platElderIdDTO.getTenantId());
...@@ -418,7 +418,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -418,7 +418,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
List<PlatElderBreatheDayStat> breatheDayStatList = platElderBreatheDayStatService.list(lambdaQueryWrapper); List<PlatElderBreatheDayStat> breatheDayStatList = platElderBreatheDayStatService.list(lambdaQueryWrapper);
Map<LocalDate, PlatElderBreatheDayStat> map = StreamUtil.toMap(breatheDayStatList, PlatElderBreatheDayStat::getDay); Map<LocalDate, PlatElderBreatheDayStat> map = StreamUtil.toMapDep(breatheDayStatList, PlatElderBreatheDayStat::getDay);
List<PlatElderRealTimeHeartRespiratoryWeekVO> voList = new ArrayList<>(10); List<PlatElderRealTimeHeartRespiratoryWeekVO> voList = new ArrayList<>(10);
......
...@@ -114,7 +114,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -114,7 +114,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
.orderByDesc(PlatElder::getId); .orderByDesc(PlatElder::getId);
} }
private void fill(List<PlatElderListVO> list){ private void fill(List<PlatElderListVO> list) {
JoinUtil.join(list, platOrgService, PlatElderListVO::getOrgId, PlatOrg::getId, (d, o) -> { JoinUtil.join(list, platOrgService, PlatElderListVO::getOrgId, PlatOrg::getId, (d, o) -> {
d.setOrgName(o.getName()); d.setOrgName(o.getName());
}); });
...@@ -191,6 +192,15 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -191,6 +192,15 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
List<PlatElder> dbList = list(lambdaQueryWrapper(dto)); List<PlatElder> dbList = list(lambdaQueryWrapper(dto));
dbList.forEach(e->{
if (StringUtils.isNotBlank(e.getHomeAddressDetail())) {
e.setHomeAddressDetail(e.getHomeAddress());
}
if (StringUtils.isNotBlank(e.getRegisterAddressDetail())) {
e.setRegisterAddressDetail(e.getRegisterAddress());
}
});
List<PlatElderHealthInfo> healthInfoList = platElderHealthInfoService.list(new QueryWrapper<PlatElderHealthInfo>().lambda() List<PlatElderHealthInfo> healthInfoList = platElderHealthInfoService.list(new QueryWrapper<PlatElderHealthInfo>().lambda()
.in(PlatElderHealthInfo::getElderId, StreamUtil.mapId(dbList, PlatElder::getId))); .in(PlatElderHealthInfo::getElderId, StreamUtil.mapId(dbList, PlatElder::getId)));
Map<String, PlatElderHealthInfo> healthInfoMap = StreamUtil.toMap(healthInfoList, PlatElderHealthInfo::getElderId); Map<String, PlatElderHealthInfo> healthInfoMap = StreamUtil.toMap(healthInfoList, PlatElderHealthInfo::getElderId);
...@@ -576,9 +586,23 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -576,9 +586,23 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
} }
private void addressToDetail(PlatElderDTOVO dto) {
if (StringUtils.isNotBlank(dto.getHomeAddressDetail())) {
dto.setHomeAddressDetail(dto.getHomeAddress());
}
if (StringUtils.isNotBlank(dto.getRegisterAddressDetail())) {
dto.setRegisterAddressDetail(dto.getRegisterAddress());
}
}
@Transactional @Transactional
@Override @Override
public void addAll(PlatElderDTOVO dto) { public void addAll(PlatElderDTOVO dto) {
addressToDetail(dto);
check(BeanDtoVoUtils.convert(dto, PlatElderAddDTO.class)); check(BeanDtoVoUtils.convert(dto, PlatElderAddDTO.class));
PlatElder platElder = BeanDtoVoUtils.convert(dto, PlatElder.class); PlatElder platElder = BeanDtoVoUtils.convert(dto, PlatElder.class);
...@@ -665,6 +689,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -665,6 +689,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
@Transactional @Transactional
public void edit(PlatElderDTOVO dto) { public void edit(PlatElderDTOVO dto) {
addressToDetail(dto);
check(BeanDtoVoUtils.convert(dto, PlatElderAddDTO.class)); check(BeanDtoVoUtils.convert(dto, PlatElderAddDTO.class));
PlatElder db = getById(dto.getId()); PlatElder db = getById(dto.getId());
...@@ -700,6 +726,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -700,6 +726,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
PlatElder platElder = getById(id); PlatElder platElder = getById(id);
PlatElderDTOVO vo = BeanDtoVoUtils.convert(platElder, PlatElderDTOVO.class); PlatElderDTOVO vo = BeanDtoVoUtils.convert(platElder, PlatElderDTOVO.class);
addressToDetail(vo);
FileUtil.convert(Arrays.asList(vo), PlatElderDTOVO::getAvatar, (e, f) -> { FileUtil.convert(Arrays.asList(vo), PlatElderDTOVO::getAvatar, (e, f) -> {
e.setAvatar(f.getFullUrl()); e.setAvatar(f.getFullUrl());
}); });
......
...@@ -43,4 +43,33 @@ ...@@ -43,4 +43,33 @@
</where> </where>
order by pd.update_date desc,prbd.update_date desc order by pd.update_date desc,prbd.update_date desc
</select> </select>
<select id="getDevices" resultType="com.makeit.vo.platform.device.PlatDeviceListVO">
select
distinct
pd.*,
ps.parent_path as spaceParentPath,
ps.name as spaceName,
pr.name as roomName,
pb.name as bedName
from plat_device pd
left join plat_room_bed_device prbd on (pd.id = prbd.device_id and prbd.del_flag = 0)
left join plat_room pr on (pr.id = prbd.room_id and pr.del_flag = 0 )
left join plat_bed pb on ( pb.id = prbd.bed_id and pb.del_flag = 0)
left join plat_space ps on (ps.id = pr.space_id and ps.del_flag = 0)
<where>
pd.del_flag = 0
<if test="param.deviceStatus != null and param.deviceStatus != '' ">
and pd.status = #{param.deviceStatus}
</if>
<if test="param.orgIds != null and param.orgIds.size() > 0 ">
AND ps.org_id in
<foreach collection="param.orgIds" item="item" separator="," open="(" close=")" index="">
#{item}
</foreach>
</if>
</where>
order by pd.update_date desc,prbd.update_date desc
</select>
</mapper> </mapper>
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