Commit 10ec209d by huangjy

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

parents 2977c6c8 115de5dd
......@@ -152,7 +152,7 @@ CREATE TABLE `plat_elder_medical_examination_info`
CREATE TABLE `plat_elder_children_info`
(
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` varchar(600) NULL COMMENT '长者id',
`elder_id` varchar(600) NULL COMMENT '长者id',
`openid` varchar(64) NOT NULL COMMENT 'openid',
`name` varchar(64) DEFAULT NULL COMMENT '姓名',
`phone` varchar(64) DEFAULT NULL COMMENT '手机号码',
......@@ -293,7 +293,7 @@ CREATE TABLE `plat_elder_sleep`
`elder_id` VARCHAR(64) NOT NULL COMMENT '长者id',
`start_sleep` datetime DEFAULT NULL COMMENT '入睡时间',
`end_sleep` datetime DEFAULT NULL COMMENT '起床时间',
`happen_date` VARCHAR(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`happen_date` VARCHAR(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`sleep_record` text DEFAULT NULL COMMENT '睡眠记录 区分时间段记录 [{"sleepType":"","startTime":"","endTime":""},{}]',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
......@@ -316,7 +316,7 @@ CREATE TABLE `plat_elder_sleep_analysis`
`sleep_time` VARCHAR(64) DEFAULT NULL COMMENT '睡眠时长',
`rest_time` VARCHAR(64) DEFAULT NULL COMMENT '休息时长',
`sleep_evaluate` VARCHAR(64) DEFAULT NULL COMMENT '评价',
`happen_date` VARCHAR(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`happen_date` VARCHAR(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
`del_flag` CHAR(1) DEFAULT NULL COMMENT '删除标识',
......@@ -329,46 +329,54 @@ CREATE TABLE `plat_elder_sleep_analysis`
DEFAULT CHARSET = utf8mb4
ROW_FORMAT = COMPACT COMMENT = '长者每天睡觉分析';
CREATE TABLE `plat_elder_breathe_abnormal` (
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` varchar(64) NOT NULL COMMENT '长者id',
`breathe_analysis_id` varchar(64) NOT NULL COMMENT '呼吸分析id',
`happen_time` datetime NOT NULL COMMENT '发生时间',
`type` varchar(32) DEFAULT NULL COMMENT '异常类型',
`value` varchar(64) DEFAULT NULL COMMENT '值',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
`del_flag` char(1) DEFAULT NULL COMMENT '删除标识',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
`tenant_id` varchar(64) DEFAULT NULL COMMENT '租户id',
PRIMARY KEY (`id`),
KEY `index_elder_id` (`elder_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='长者每天呼吸异常';
CREATE TABLE `plat_elder_breathe_abnormal`
(
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` varchar(64) NOT NULL COMMENT '长者id',
`breathe_analysis_id` varchar(64) NOT NULL COMMENT '呼吸分析id',
`happen_time` datetime NOT NULL COMMENT '发生时间',
`type` varchar(32) DEFAULT NULL COMMENT '异常类型',
`value` varchar(64) DEFAULT NULL COMMENT '值',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
`del_flag` char(1) DEFAULT NULL COMMENT '删除标识',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
`tenant_id` varchar(64) DEFAULT NULL COMMENT '租户id',
PRIMARY KEY (`id`),
KEY `index_elder_id` (`elder_id`) USING BTREE
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
ROW_FORMAT = COMPACT COMMENT ='长者每天呼吸异常';
CREATE TABLE `plat_elder_breathe_analysis` (
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` varchar(64) NOT NULL COMMENT '长者id',
`breathe_score` varchar(64) DEFAULT NULL COMMENT '睡眠评分',
`breathe_result` varchar(64) DEFAULT NULL COMMENT '睡眠结果',
`breathe_evaluate` varchar(64) DEFAULT NULL COMMENT '评价',
`avg_heart_rate` varchar(64) DEFAULT NULL COMMENT '平均心率',
`avg_breathe_rate` varchar(64) DEFAULT NULL COMMENT '平均呼吸率',
`happen_date` varchar(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
`del_flag` char(1) DEFAULT NULL COMMENT '删除标识',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
`tenant_id` varchar(64) DEFAULT NULL COMMENT '租户id',
PRIMARY KEY (`id`),
KEY `index_elder_id` (`elder_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='长者每天呼吸分析';
CREATE TABLE `plat_elder_breathe_analysis`
(
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` varchar(64) NOT NULL COMMENT '长者id',
`breathe_score` varchar(64) DEFAULT NULL COMMENT '睡眠评分',
`breathe_result` varchar(64) DEFAULT NULL COMMENT '睡眠结果',
`breathe_evaluate` varchar(64) DEFAULT NULL COMMENT '评价',
`avg_heart_rate` varchar(64) DEFAULT NULL COMMENT '平均心率',
`avg_breathe_rate` varchar(64) DEFAULT NULL COMMENT '平均呼吸率',
`happen_date` varchar(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`create_date` datetime DEFAULT NULL COMMENT '创建时间',
`update_date` datetime DEFAULT NULL COMMENT '更新时间',
`del_flag` char(1) DEFAULT NULL COMMENT '删除标识',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
`tenant_id` varchar(64) DEFAULT NULL COMMENT '租户id',
PRIMARY KEY (`id`),
KEY `index_elder_id` (`elder_id`) USING BTREE
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
ROW_FORMAT = COMPACT COMMENT ='长者每天呼吸分析';
CREATE TABLE `plat_elder_report_month`
(
`id` varchar(64) NOT NULL COMMENT 'id',
`elder_id` VARCHAR(64) NOT NULL COMMENT '长者id',
breathe_device_id VARCHAR(64) NULL COMMENT '呼吸心率设备id',
breathe_ori_device_id VARCHAR(64) NULL COMMENT '呼吸心率设备原始id',
day date NOT NULL COMMENT '日期',
sleep_result varchar(64) NOT NULL COMMENT '睡眠结果',
heart_rate int NOT NULL COMMENT '心率',
......@@ -389,7 +397,7 @@ CREATE TABLE `plat_elder_report_month`
ALTER TABLE `dev_iot_yanglao_platform`.`plat_elder_sleep_analysis`
ADD COLUMN `action_count` int(4) COMMENT '体动次数' AFTER `happen_date`,
ADD COLUMN `turned_count` int(4) COMMENT '翻身次数' AFTER `action_count`;
ADD COLUMN `turned_count` int(4) COMMENT '翻身次数' AFTER `action_count`;
ALTER TABLE `dev_iot_yanglao_platform`.`plat_elder_sleep`
ADD COLUMN `elder_sleep_type` int(4) COMMENT '睡眠类型 1 睡眠 2 小憩' AFTER `happen_date`;
......
......@@ -48,6 +48,13 @@ public class PlatAlarmRecordController {
return ApiResponseUtils.success();
}
@ApiOperation("未读条数")
@PostMapping("unreadCount")
public ApiResponseEntity<Integer> unreadCount(@RequestBody PlatAlarmRecordQueryDTO dto) {
Integer count = platAlarmRecordService.unreadCount(dto);
return ApiResponseUtils.success(count);
}
// @Autowired
// private MailMsgSender mailMsgSender;
// @Autowired
......
......@@ -43,5 +43,12 @@ public class PlatAlarmRecordChildrenController {
platAlarmRecordService.read(dto.getId());
return ApiResponseUtils.success();
}
@ApiOperation("未读条数")
@PostMapping("unreadCount")
public ApiResponseEntity<Integer> unreadCount(@RequestBody PlatAlarmRecordQueryDTO dto) {
Integer count = platAlarmRecordService.unreadCount(dto);
return ApiResponseUtils.success(count);
}
}
......@@ -63,6 +63,8 @@ public class PlatAlarmRecordQueryDTO extends BaseTenantDTO {
*/
private String noticeStatus;
private String readFlag;
}
......@@ -40,4 +40,5 @@ public class PlatElderReportDTO extends PlatElderIdDTO {
@ApiModelProperty("结束时间")
private LocalDateTime endTime;
private String tenantId;
}
......@@ -27,6 +27,12 @@ public class PlatElderReportMonth extends BaseBusEntity {
@ApiModelProperty(value = "长者id")
private String elderId;
@ApiModelProperty(value = "呼吸心率设备id")
private String breatheDeviceId;
@ApiModelProperty(value = "呼吸心率设备原始id")
private String breatheOriDeviceId;
@ApiModelProperty(value = "日期")
private LocalDate day;
......
......@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.makeit.dto.platform.space.PlatBedPanoramaDTO;
import com.makeit.dto.platform.space.PlatBedQueryDTO;
import com.makeit.dto.platform.workstation.WorkStationQueryDTO;
import com.makeit.dto.saas.SaasOperationLogDTO;
import com.makeit.entity.platform.space.PlatBed;
import com.makeit.vo.platform.space.PlatBedPanoramaVO;
import com.makeit.vo.platform.space.PlatBedVo;
......
......@@ -63,4 +63,6 @@ public interface PlatAlarmRecordService extends IService<PlatAlarmRecord> {
void dealAlarm(BaseIdDTO dto);
void read(String id);
Integer unreadCount(PlatAlarmRecordQueryDTO dto);
}
......@@ -151,6 +151,7 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
}
})
.eq(StringUtils.isNotBlank(param.getNoticeStatus()),PlatAlarmRecord::getNoticeStatus,param.getNoticeStatus())
.eq(StringUtils.isNotBlank(param.getReadFlag()),PlatAlarmRecord::getReadFlag,param.getReadFlag())
.orderByDesc(BaseEntity::getCreateDate)
;
}
......@@ -509,4 +510,23 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
.set(PlatAlarmRecord::getReadFlag, CommonEnum.YES.getValue());
update(recordLambdaUpdateWrapper);
}
@Override
public Integer unreadCount(PlatAlarmRecordQueryDTO dto) {
PlatElderChildrenInfo platElderChildrenInfo = platElderChildrenInfoService.getById(WechatUserUtil.getUserId());
log.info("子女端账号:"+platElderChildrenInfo.toString());
if (platElderChildrenInfo == null) {
return 0;
}
String elderId = platElderChildrenInfo.getElderId();
if(StringUtils.isBlank(elderId)){
return 0;
}
String[] split = elderId.split(",");
dto.setElderIdList(Arrays.asList(split));
dto.setNoticeStatus(CommonEnum.YES.getValue());
dto.setReadFlag(CommonEnum.NO.getValue());
LambdaQueryWrapper<PlatAlarmRecord> lambdaQueryWrapper = getLambdaQueryWrapper(dto);
return Math.toIntExact(count(lambdaQueryWrapper));
}
}
......@@ -2,6 +2,7 @@ package com.makeit.service.platform.elder.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.makeit.common.entity.BaseBusEntity;
import com.makeit.dto.platform.elder.PlatElderReportDTO;
import com.makeit.entity.platform.device.PlatDevice;
import com.makeit.entity.platform.elder.*;
......@@ -412,7 +413,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
}
});
lambdaQueryWrapper.eq(StringUtils.isNotBlank(platElderIdDTO.getTenantId()), BaseBusEntity::getTenantId,platElderIdDTO.getTenantId());
lambdaQueryWrapper.orderByAsc(PlatElderBreatheDayStat::getDay);
List<PlatElderBreatheDayStat> breatheDayStatList = platElderBreatheDayStatService.list(lambdaQueryWrapper);
......
......@@ -127,9 +127,11 @@ public class PlatElderReportMonthServiceImpl extends ServiceImpl<PlatElderReport
LocalDate end = LocalDateTimeUtils.getMonthMax(start);
List<PlatElderReportMonth> monthList = list(new QueryWrapper<PlatElderReportMonth>().lambda()
.eq(PlatElderReportMonth::getElderId, platElderIdDTO.getElderId())
.eq(StringUtils.isNotBlank(platElderIdDTO.getElderId()), PlatElderReportMonth::getElderId, platElderIdDTO.getElderId())
.eq(StringUtils.isNotBlank(platElderIdDTO.getDeviceId()), PlatElderReportMonth::getBreatheDeviceId, platElderIdDTO.getDeviceId())
.ge(PlatElderReportMonth::getDay, start)
.le(PlatElderReportMonth::getDay, end)
.orderByAsc(PlatElderReportMonth::getDay)
);
List<PlatElderReportMonthVO> voList = BeanDtoVoUtils.listVo(monthList, PlatElderReportMonthVO.class);
......@@ -179,6 +181,10 @@ public class PlatElderReportMonthServiceImpl extends ServiceImpl<PlatElderReport
List<DeviceInfoContentBreathe> breatheList = iotProductDeviceService.getDeviceLogByTimeRangeBreathe(platDevice.getOriDeviceId(), 2 * 24 * 3600, yesStart, yesEnd);
if (CollectionUtils.isNotEmpty(breatheList)) {
reportMonth.setBreatheDeviceId(platDevice.getId());
reportMonth.setBreatheOriDeviceId(platDevice.getOriDeviceId());
reportMonth.setHeartRate((int) (StreamUtil.reduce(breatheList, i -> (long) i.getProperties().getHr(), 0L, Long::sum) / breatheList.size()));
reportMonth.setRespiratoryRate((int) (StreamUtil.reduce(breatheList, i -> (long) i.getProperties().getBr(), 0L, Long::sum) / breatheList.size()));
}
......
......@@ -209,7 +209,9 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
@Override
public PlatDevice getBreathDevice(String bedId) {
PlatRoomBedDevice device = getOne(new QueryWrapper<PlatRoomBedDevice>().lambda()
.eq(PlatRoomBedDevice::getBedId, bedId));
.eq(PlatRoomBedDevice::getBedId, bedId)
.last("limit 1")
);
if (device == null) {
return null;
......
......@@ -178,10 +178,18 @@ public class WorkStationServiceImpl implements WorkStationService {
}
List<String> orgIds = orgs.stream().map(PlatOrg::getId).collect(Collectors.toList());
dto.setOrgIds(orgIds);
}else {
List<PlatOrg> orgs = platOrgService.list(new QueryWrapper<PlatOrg>().lambda()
.eq(PlatOrg::getId, dto.getOrgIds()));
List<String> orgIds = orgs.stream().filter(t->PlatOrgEnum.OrgTypeEnum.INSTITUTION.getValue().equals(t.getType()))
.map(PlatOrg::getId).collect(Collectors.toList());
if(orgIds.isEmpty()){
return new PageVO<>();
}
dto.setOrgIds(orgIds);
}
if (dto.getSpaceIds().isEmpty()) {
spaces = platSpaceService.list(new QueryWrapper<PlatSpace>().lambda()
.in(PlatSpace::getOrgId, dto.getOrgIds()));
if (spaces.isEmpty()) {
......@@ -475,6 +483,15 @@ public class WorkStationServiceImpl implements WorkStationService {
}
List<String> orgIds = orgs.stream().map(PlatOrg::getId).collect(Collectors.toList());
dto.setOrgIds(orgIds);
}else {
List<PlatOrg> orgs = platOrgService.list(new QueryWrapper<PlatOrg>().lambda()
.eq(PlatOrg::getId, dto.getOrgIds()));
List<String> orgIds = orgs.stream().filter(t->PlatOrgEnum.OrgTypeEnum.HOME.getValue().equals(t.getType()))
.map(PlatOrg::getId).collect(Collectors.toList());
if(orgIds.isEmpty()){
return new PageVO<>();
}
dto.setOrgIds(orgIds);
}
if (dto.getSpaceIds().isEmpty()) {
......
......@@ -94,7 +94,6 @@ public class PlatElderChildrenInfoUserLoginWechatServiceImpl implements PlatElde
TokenUtil.wechatLogin(token, wechatUserVo);
return wechatUserVo;
}
......
......@@ -3,24 +3,10 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.makeit.mapper.platform.space.PlatBedMapper">
<resultMap id="BaseResultMap" type="com.makeit.entity.platform.space.PlatBed">
<id property="id" column="id" jdbcType="VARCHAR"/>
<result property="tenantId" column="tenant_id" jdbcType="VARCHAR"/>
<result property="name" column="name" jdbcType="VARCHAR"/>
<result property="roomId" column="room_id" jdbcType="VARCHAR"/>
<result property="spaceId" column="space_id" jdbcType="VARCHAR"/>
<result property="status" column="status" jdbcType="VARCHAR"/>
<result property="sort" column="sort" jdbcType="VARCHAR"/>
<result property="createDate" column="create_date" jdbcType="TIMESTAMP"/>
<result property="updateDate" column="update_date" jdbcType="TIMESTAMP"/>
<result property="update_by" column="update_by" jdbcType="VARCHAR"/>
<result property="sort" column="sort" jdbcType="VARCHAR"/>
<result property="delFlag" column="del_flag" jdbcType="CHAR"/>
</resultMap>
<select id="selectBySpaceIdAndStatus" resultType="com.makeit.vo.platform.space.PlatBedPanoramaVO">
SELECT pb.id,pb.`status`,pb.name as bedName ,pm.`name` as roomName,pm.space_path as spacePath,pe.name as elderName,pe.id as elderId,pm.id as roomId
FROM `plat_bed` pb
SELECT pb.id,pb.status,pb.name as bedName ,pm.name as roomName,pm.space_path as spacePath,pe.name as elderName,pe.id as elderId,pm.id as roomId
FROM plat_bed pb
LEFT JOIN plat_room pm on pb.room_id = pm.id
LEFT JOIN plat_elder pe on pe.bed_id = pb.id
<where>
......@@ -35,8 +21,8 @@
</select>
<select id="selectByRoomIdAndStatus" resultType="com.makeit.vo.platform.space.PlatBedPanoramaVO">
SELECT pb.id,pb.`status`,pb.name as bedName ,pm.`name` as roomName,pm.space_path as spacePath,pe.name as elderName,pe.id as elderId,pm.id as roomId
FROM `plat_bed` pb
SELECT pb.id,pb.status,pb.name as bedName ,pm.name as roomName,pm.space_path as spacePath,pe.name as elderName,pe.id as elderId,pm.id as roomId
FROM plat_bed pb
LEFT JOIN plat_room pm on pb.room_id = pm.id
LEFT JOIN plat_elder pe on pe.bed_id = pb.id and pe.del_flag = 0
<where>
......
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