Commit c347f1f6 by lzy

Merge branch 'dev' of git.xmmakeit.com:huangjiay/iot-platform-server into dev

parents d3a8dc00 78e48058
Showing with 154 additions and 91 deletions
......@@ -293,13 +293,13 @@ 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 '起床时间',
`current_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 NOT NULL COMMENT '创建时间',
`update_date` datetime NOT 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) NOT NULL COMMENT '创建人',
`update_by` VARCHAR(64) NOT 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
......@@ -316,12 +316,12 @@ 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 '评价',
`current_date` VARCHAR(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`create_date` datetime NOT NULL COMMENT '创建时间',
`update_date` datetime NOT 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) NOT NULL COMMENT '创建人',
`update_by` VARCHAR(64) NOT 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
......@@ -336,11 +336,11 @@ CREATE TABLE `plat_elder_breathe_abnormal` (
`happen_time` datetime NOT NULL COMMENT '发生时间',
`type` varchar(32) DEFAULT NULL COMMENT '异常类型',
`value` varchar(64) DEFAULT NULL COMMENT '值',
`create_date` datetime NOT NULL COMMENT '创建时间',
`update_date` datetime NOT 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) NOT NULL COMMENT '创建人',
`update_by` varchar(64) NOT 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
......@@ -354,12 +354,12 @@ CREATE TABLE `plat_elder_breathe_analysis` (
`breathe_evaluate` varchar(64) DEFAULT NULL COMMENT '评价',
`avg_heart_rate` varchar(64) DEFAULT NULL COMMENT '平均心率',
`avg_breathe_rate` varchar(64) DEFAULT NULL COMMENT '平均呼吸率',
`current_date` varchar(64) DEFAULT NULL COMMENT '当前日期 yyyy-mm-dd',
`create_date` datetime NOT NULL COMMENT '创建时间',
`update_date` datetime NOT 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) NOT NULL COMMENT '创建人',
`update_by` varchar(64) NOT 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
......
......@@ -51,9 +51,10 @@ public class SaasPlatUserController {
}
@Action(module = "saas端-租户账号", name = "列表", code = "saas.plat.user.listTenant")
@ApiOperation("列表")
@ApiOperation("列表-未关联租户")
@PostMapping("listTenant")
public ApiResponseEntity<List<PlatUserDTOVO>> listTenant(@RequestBody PlatUserQueryDTO dto){
dto.setLinkTenant(CommonEnum.NO.getValue());
return ApiResponseUtils.success(platUserService.listTenant(dto));
}
......
......@@ -32,21 +32,6 @@ public class PlatUserQueryDTO extends BaseOrgDTO {
@ApiModelProperty(value = "要排除的角色id roleId和notRoleId只能用一个")
private String notRoleId;
// @ApiModelProperty(value = "关键词 用来搜姓名或者工号")
// private String keyword;
//
// @ApiModelProperty(value = "职级")
// private Integer postLevel;
//
// @ApiModelProperty(value = "是否从酒店开始 0否 1是")
// private String fromHotel;
//
// @ApiModelProperty(value = "是否常用人员 0否 1是")
// private String isFrequent;
//
// @ApiModelProperty(value = "标签id")
// private String labelId;
@ApiModelProperty(value = "用户工号集合")
private List<String> accountList;
......@@ -62,4 +47,7 @@ public class PlatUserQueryDTO extends BaseOrgDTO {
@ApiModelProperty(value = "部门id集合")
private List<String> orgIdList;
@ApiModelProperty(value = "已关联租户 0-未关联 1-已关联")
private String linkTenant;
}
......@@ -28,7 +28,7 @@ public class PlatTenantVO extends BaseIdDTO implements Serializable {
private LocalDate endTime;
@ApiModelProperty(value = "租户管理员id")
private String tntUserId;
private String platUserId;
@ApiModelProperty(value = "租户管理员账号")
private String userAccount;
......
......@@ -5,7 +5,10 @@ import lombok.Data;
@Data
public class AnalysisVO {
private Integer br;
private Integer totalHr;
private Integer avgHr;
private Integer totalBr;
private Integer avgBr;
private Integer actionCount = 0; // 体动次数
private Integer turnedCount = 0; // 翻身次数
......@@ -19,12 +22,27 @@ public class AnalysisVO {
private Boolean awakeMinuteActionFlag; // 清醒每分钟体动是否满足要求
private int brStopThreshold; // 每分钟呼吸阈值
private int brFastThreshold; // 每分钟呼吸阈值
private int brSlowThreshold; // 每分钟呼吸阈值
private int brStopThreshold; // 发生次数阈值
private int brStop; // 当前呼吸率
private String brStopTime; // 发生时间
private int hrFastThreshold; // 每分钟心率阈值
private int hrSlowThreshold; // 每分钟心率阈值
private int brFastThreshold; // 发生次数阈值
private int brFast; // 当前呼吸率
private String brFastTime; // 发生时间
private int brSlowThreshold; // 发生次数阈值
private int brSlow; // 当前呼吸率
private String brSlowTime; // 发生时间
private int hrFastThreshold; // 发生次数阈值
private int hrFast; // 当前心率
private String hrFastTime; // 发生时间
private int hrSlowThreshold; // 发生次数阈值
private int hrSlow; // 当前心率
private String hrSlowTime; // 发生时间
......
package com.makeit.module.iot.vo.analysis;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class BreatheAbnormalVO {
@ApiModelProperty(value = "发生时间")
private LocalDateTime happenTime;
@ApiModelProperty(value = "异常类型")
private String type;
@ApiModelProperty(value = "值")
private String value;
}
......@@ -19,6 +19,8 @@ public class DeviceInfoContentBreathe {
private Properties properties;
@JsonProperty("timestamp")
private Long timestamp;
@JsonProperty("reportTime")
private String reportTime;
@NoArgsConstructor
@Data
......@@ -52,18 +54,25 @@ public class DeviceInfoContentBreathe {
@Data
public static class Properties {
@JsonProperty("br")
// 呼吸率 "最小值":0,"最大值":500,"步进":1,"单位":"rpm"
private Integer br;
@JsonProperty("distance")
// 距离
private Integer distance;
@JsonProperty("bodymove")
// 体动指数 "最小值":0,"最大值":100,"步进":1,"单位":""
private Integer bodymove;
@JsonProperty("personState")
// 运动状态 0:无人1:运动2:呼吸3:进入呼吸
private Integer personState;
@JsonProperty("person")
// 有人无人 0无人,1有人
private Integer person;
@JsonProperty("hr")
// 心率 最小值":0,"最大值":500,"步进:1,"单位":"bpm"
private Integer hr;
@JsonProperty("point")
// 呼吸波形
private List<Integer> point;
}
}
......@@ -68,7 +68,7 @@ public class PlatSpaceWechatController {
}
@ApiOperation("一级空间列表")
@ApiOperation("一级空间列表(参数传组织id)")
@PostMapping("oneLevelList")
public ApiResponseEntity<List<PlatSpaceAddDTO>> oneLevelList(@RequestBody BaseIdDTO dto) {
List<PlatSpaceAddDTO> data = spaceService.oneLevelList(dto);
......
......@@ -24,10 +24,10 @@ public class PlatElderBreatheAnalysis extends BaseBusEntity {
@ApiModelProperty(value = "长者id")
private String elderId;
@ApiModelProperty(value = "睡眠评分")
@ApiModelProperty(value = "呼吸评分")
private String breatheScore;
@ApiModelProperty(value = "睡眠结果")
@ApiModelProperty(value = "呼吸结果")
private String breatheResult;
@ApiModelProperty(value = "评价")
......@@ -40,7 +40,7 @@ public class PlatElderBreatheAnalysis extends BaseBusEntity {
private String avgBreatheRate;
@ApiModelProperty(value = "当前日期 yyyy-mm-dd")
private String currentDate;
private String happenDate;
}
......@@ -2,7 +2,6 @@ package com.makeit.entity.platform.elder;
import com.baomidou.mybatisplus.annotation.TableField;
import com.makeit.common.entity.BaseBusEntity;
import com.makeit.common.typehandler.ListStringJsonTypeHandler;
import com.makeit.typehandler.ElderListStringJsonTypeHandler;
import com.makeit.vo.platform.elder.report.day.PlatSleepRangeVO;
import io.swagger.annotations.ApiModel;
......@@ -38,7 +37,7 @@ public class PlatElderSleep extends BaseBusEntity {
private LocalDateTime endSleep;
@ApiModelProperty(value = "当前日期 yyyy-mm-dd")
private String currentDate;
private String happenDate;
@ApiModelProperty(value = "睡眠记录 区分时间段记录 [{\"sleepType\":\"\",\"startTime\":\"\",\"endTime\":\"\"},{}]")
@TableField(typeHandler = ElderListStringJsonTypeHandler.class)
......
......@@ -40,7 +40,7 @@ public class PlatElderSleepAnalysis extends BaseBusEntity {
private String sleepEvaluate;
@ApiModelProperty(value = "当前日期 yyyy-mm-dd")
private String currentDate;
private String happenDate;
}
......@@ -9,7 +9,7 @@ public enum BreatheTypeEnum {
APNEA("apnea","呼吸暂停"),
TACHYPNEA("tachypnea","呼吸暂停"),
TACHYPNEA("tachypnea","呼吸过速"),
BRADYPNEA("bradypnea","呼吸过缓");
private String code;
......
......@@ -88,7 +88,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
PlatElderSleepAnalysis platElderSleepAnalysis = platElderSleepAnalysisService.getOne(new QueryWrapper<PlatElderSleepAnalysis>().lambda()
.eq(PlatElderSleepAnalysis::getElderId, platElderIdDTO.getElderId())
.eq(PlatElderSleepAnalysis::getCurrentDate, nowString)
.eq(PlatElderSleepAnalysis::getHappenDate, nowString)
);
if (platElderSleepAnalysis == null) {
......@@ -118,7 +118,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
List<PlatElderSleep> sleepList = platElderSleepService.list(new QueryWrapper<PlatElderSleep>().lambda()
.eq(PlatElderSleep::getElderId, platElderIdDTO.getElderId())
.eq(PlatElderSleep::getCurrentDate, nowString)
.eq(PlatElderSleep::getHappenDate, nowString)
.orderByAsc(PlatElderSleep::getStartSleep)
);
......@@ -159,7 +159,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
PlatElderBreatheAnalysis platElderSleepAnalysis = platElderBreatheAnalysisService.getOne(new QueryWrapper<PlatElderBreatheAnalysis>().lambda()
.eq(PlatElderBreatheAnalysis::getElderId, platElderIdDTO.getElderId())
.eq(PlatElderBreatheAnalysis::getCurrentDate, nowString)
.eq(PlatElderBreatheAnalysis::getHappenDate, nowString)
);
if (platElderSleepAnalysis == null) {
......
......@@ -75,7 +75,7 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace
check(dto);
PlatSpace space = BeanDtoVoUtils.convert(dto, PlatSpace.class);
if(StringUtil.isEmpty(dto.getParentId())){
PlatUserVO userVO = PlatUserUtil.getUserVO();
PlatUserVO userVO = PlatUserUtil.getUserVOCanNull();
space.setOrgId(userVO.getOrgId());
PlatOrg org = platOrgService.getById(space.getOrgId());
if(org!=null){
......
......@@ -132,11 +132,12 @@ implements PlatTenantService {
List<PlatTenantVO> voList = BeanDtoVoUtils.listVo(pageList.getRecords(), PlatTenantVO.class);
TntUserJoinUtil.join(platUserService,voList,qw->qw.eq(PlatUser::getIsTenant, IsTenantAccountEnum.YES.getValue()),
PlatTenantVO::getTntUserId,(t, u) -> {
t.setUserAccount(u.getMobile());
PlatTenantVO::getPlatUserId,(t, u) -> {
t.setUserAccount(u.getAccount());
t.setUserName(u.getUsername());
}, BaseEntity::getId);
return PageUtil.toPageVO(voList, pageList);
}
......@@ -245,11 +246,11 @@ implements PlatTenantService {
}
platUserService.updatePlatUserTenantId(tntTenant.getId(),dto.getPlatUserId());
PlatOrg platOrg = convertToPlatOrg(platTenant);
PlatOrg platOrg = convertToPlatOrg(tntTenant);
//更新组织表
platOrgService.edit(platOrg);
//分配菜单
//分配菜单 todo 慢
assignMenuList(tntTenant.getId(),dto.getMenuIdList());
}
......
package com.makeit.service.saas.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.makeit.common.entity.BaseEntity;
import com.makeit.dto.saas.analysis.SaasSleepEvaluateReportDTO;
import com.makeit.entity.saas.analysis.SaasDiseaseReport;
import com.makeit.mapper.saas.analysis.SaasDiseaseReportMapper;
......@@ -10,6 +12,8 @@ import com.makeit.service.saas.SaasDiseaseReportService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class SaasDiseaseReportServiceImpl extends ServiceImpl<SaasDiseaseReportMapper, SaasDiseaseReport> implements SaasDiseaseReportService {
......@@ -36,6 +40,20 @@ public class SaasDiseaseReportServiceImpl extends ServiceImpl<SaasDiseaseReportM
@Override
public EvaluateReportVO getByScore(long totalScore) {
return null;
SaasDiseaseReport diseaseReport = getOne(new QueryWrapper<SaasDiseaseReport>().lambda()
.orderByDesc(BaseEntity::getCreateBy)
.last("limit 1"));
String diseaseReportResultContent = diseaseReport.getResultContent();
List<EvaluateReportVO> diseaseReportResultList = JSON.parseArray(diseaseReportResultContent, EvaluateReportVO.class);
EvaluateReportVO elderReport = null;
for (EvaluateReportVO evaluateReportVO : diseaseReportResultList) {
String[] scoreRange = evaluateReportVO.getScoreRange().split("-");
long scoreRangeStart = Long.parseLong(scoreRange[0]);
long scoreRangeEnd = Long.parseLong(scoreRange[1]);
if (scoreRangeStart <= totalScore && scoreRangeEnd >= totalScore) {
elderReport = evaluateReportVO;
}
}
return elderReport;
}
}
......@@ -55,7 +55,7 @@ public class SaasElderReportConfigServiceImpl extends ServiceImpl<SaasElderRepor
List<EvaluateReportVO> elderEvaluateReportList = JSON.parseArray(elderReportConfig.getResultContent(), EvaluateReportVO.class);
EvaluateReportVO elderReport = null;
for (EvaluateReportVO evaluateReportVO : elderEvaluateReportList) {
String[] scoreRange = evaluateReportVO.getScoreRange().split("~");
String[] scoreRange = evaluateReportVO.getScoreRange().split("-");
long scoreRangeStart = Long.parseLong(scoreRange[0]);
long scoreRangeEnd = Long.parseLong(scoreRange[1]);
if (scoreRangeStart <= totalScore && scoreRangeEnd >= totalScore) {
......
......@@ -58,7 +58,7 @@ public class SaasSleepEvaluateReportServiceImpl extends ServiceImpl<SaasSleepEva
// 根据睡眠报告结果配置得出最后的睡眠评分
EvaluateReportVO finalReport = new EvaluateReportVO();
for (EvaluateReportVO evaluateReportVO : evaluateReportList) {
String[] scoreRange = evaluateReportVO.getScoreRange().split("~");
String[] scoreRange = evaluateReportVO.getScoreRange().split("-");
long scoreRangeStart = Long.parseLong(scoreRange[0]);
long scoreRangeEnd = Long.parseLong(scoreRange[1]);
if (scoreRangeStart <= totalScore && scoreRangeEnd >= totalScore) {
......
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