Commit 2ad0c5ce by 朱淼
parents ea37bf56 2ac43742
Showing with 971 additions and 98 deletions
package com.makeit.controller.children.sys;
import com.makeit.common.dto.BaseIdDTO;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.dto.SysConfigCategoryDTOVO;
import com.makeit.module.system.service.SysConfigCategoryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "子女端小程序-配置分类")
@RestController
@RequestMapping("/children/sys/configCategory")
public class SysConfigCategoryChildrenController {
@Autowired
private SysConfigCategoryService sysConfigCategoryService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysConfigCategoryDTOVO>> list(@RequestBody SysConfigCategoryDTOVO sysConfigCategory) {
return ApiResponseUtils.success(sysConfigCategoryService.list(sysConfigCategory));
}
@ApiOperation(value = "列表(AuthIgnore)", notes = "")
@PostMapping("/listAuthIgnore")
public ApiResponseEntity<List<SysConfigCategoryDTOVO>> listAuthIgnore(@RequestBody SysConfigCategoryDTOVO sysConfigCategory) {
return ApiResponseUtils.success(sysConfigCategoryService.list(sysConfigCategory));
}
@ApiOperation(value = "详情", notes = "")
@PostMapping("/view")
public ApiResponseEntity<SysConfigCategoryDTOVO> view(@RequestBody BaseIdDTO baseIdDTO) {
return ApiResponseUtils.success(sysConfigCategoryService.view(baseIdDTO.getId()));
}
}
package com.makeit.controller.children.sys;
import com.makeit.common.dto.BaseIdDTO;
import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysConfig;
import com.makeit.module.system.entity.SysConfigCategory;
import com.makeit.module.system.service.SysConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "子女端小程序-配置")
@RestController
@RequestMapping("/children/sys/config")
public class SysConfigChildrenController {
@Autowired
private SysConfigService sysConfigService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysConfig>> list(@RequestBody SysConfig sysConfig) {
return ApiResponseUtils.success(sysConfigService.list(sysConfig));
}
@ApiOperation(value = "分页列表", notes = "")
@PostMapping("/page")
public ApiResponseEntity<PageVO<SysConfig>> page(@RequestBody PageReqDTO<SysConfig> page) {
return ApiResponseUtils.success(sysConfigService.page(page));
}
@ApiOperation(value = "列表(AuthIgnore)", notes = "")
@PostMapping("/listAuthIgnore")
public ApiResponseEntity<List<SysConfig>> listAuthIgnore(@RequestBody SysConfig sysConfig) {
return ApiResponseUtils.success(sysConfigService.list(sysConfig));
}
@ApiOperation(value = "分页列表(AuthIgnore)", notes = "")
@PostMapping("/pageAuthIgnore")
public ApiResponseEntity<PageVO<SysConfig>> pageAuthIgnore(@RequestBody PageReqDTO<SysConfig> page) {
return ApiResponseUtils.success(sysConfigService.page(page));
}
@ApiOperation(value = "详情", notes = "")
@PostMapping("/view")
public ApiResponseEntity<SysConfig> view(@RequestBody BaseIdDTO baseIdDTO) {
return ApiResponseUtils.success(sysConfigService.view(baseIdDTO.getId()));
}
@ApiOperation(value = "根据分类code获取详情", notes = "")
@PostMapping("/viewByCategoryCode")
public ApiResponseEntity<SysConfigCategory> viewByCategoryCode(@RequestBody SysConfigCategory sysConfigCategory) {
return ApiResponseUtils.success(sysConfigService.viewByCategoryCode(sysConfigCategory.getCode()));
}
}
package com.makeit.controller.children.sys;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysDictionaryCategory;
import com.makeit.module.system.service.SysDictionaryCategoryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 数据字典类型
*
*/
@Api(tags = "子女端小程序-数据字典分类(用户不可见)")
@RestController
@RequestMapping("/children/sys/dictionaryCategory")
public class SysDictionaryCategoryChildrenController {
@Autowired
private SysDictionaryCategoryService dictionaryCategoryService;
@ApiOperation(value = "列表-带字典", notes = "")
@PostMapping("/getDictionaryCategoryByList")
public ApiResponseEntity<List<SysDictionaryCategory>> getDictionaryCategoryByList() {
List<SysDictionaryCategory> dictionaryCategoryList = dictionaryCategoryService.getEpDictionaryCategoryByList();
return ApiResponseUtils.success(dictionaryCategoryList);
}
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysDictionaryCategory>> list(@RequestBody SysDictionaryCategory platConfigCategory) {
return ApiResponseUtils.success(dictionaryCategoryService.list(platConfigCategory));
}
}
package com.makeit.controller.children.sys;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysDictionary;
import com.makeit.module.system.service.SysDictionaryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "子女端小程序-数据字典(用户不可见)")
@RestController
@RequestMapping("/children/sys/dictionary")
public class SysDictionaryChildrenController {
@Autowired
private SysDictionaryService sysDictionaryService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysDictionary>> list(@RequestBody SysDictionary sysDictionary) {
return ApiResponseUtils.success(sysDictionaryService.list(sysDictionary));
}
}
package com.makeit.controller.wechat.sys;
import com.makeit.common.dto.BaseIdDTO;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.dto.SysConfigCategoryDTOVO;
import com.makeit.module.system.service.SysConfigCategoryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "平台端小程序-配置分类")
@RestController
@RequestMapping("/wechat/sys/configCategory")
public class SysConfigCategoryWechatController {
@Autowired
private SysConfigCategoryService sysConfigCategoryService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysConfigCategoryDTOVO>> list(@RequestBody SysConfigCategoryDTOVO sysConfigCategory) {
return ApiResponseUtils.success(sysConfigCategoryService.list(sysConfigCategory));
}
@ApiOperation(value = "列表(AuthIgnore)", notes = "")
@PostMapping("/listAuthIgnore")
public ApiResponseEntity<List<SysConfigCategoryDTOVO>> listAuthIgnore(@RequestBody SysConfigCategoryDTOVO sysConfigCategory) {
return ApiResponseUtils.success(sysConfigCategoryService.list(sysConfigCategory));
}
@ApiOperation(value = "详情", notes = "")
@PostMapping("/view")
public ApiResponseEntity<SysConfigCategoryDTOVO> view(@RequestBody BaseIdDTO baseIdDTO) {
return ApiResponseUtils.success(sysConfigCategoryService.view(baseIdDTO.getId()));
}
}
package com.makeit.controller.wechat.sys;
import com.makeit.common.dto.BaseIdDTO;
import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysConfig;
import com.makeit.module.system.entity.SysConfigCategory;
import com.makeit.module.system.service.SysConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "平台端小程序-配置")
@RestController
@RequestMapping("/wechat/sys/config")
public class SysConfigWechatController {
@Autowired
private SysConfigService sysConfigService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysConfig>> list(@RequestBody SysConfig sysConfig) {
return ApiResponseUtils.success(sysConfigService.list(sysConfig));
}
@ApiOperation(value = "分页列表", notes = "")
@PostMapping("/page")
public ApiResponseEntity<PageVO<SysConfig>> page(@RequestBody PageReqDTO<SysConfig> page) {
return ApiResponseUtils.success(sysConfigService.page(page));
}
@ApiOperation(value = "列表(AuthIgnore)", notes = "")
@PostMapping("/listAuthIgnore")
public ApiResponseEntity<List<SysConfig>> listAuthIgnore(@RequestBody SysConfig sysConfig) {
return ApiResponseUtils.success(sysConfigService.list(sysConfig));
}
@ApiOperation(value = "分页列表(AuthIgnore)", notes = "")
@PostMapping("/pageAuthIgnore")
public ApiResponseEntity<PageVO<SysConfig>> pageAuthIgnore(@RequestBody PageReqDTO<SysConfig> page) {
return ApiResponseUtils.success(sysConfigService.page(page));
}
@ApiOperation(value = "详情", notes = "")
@PostMapping("/view")
public ApiResponseEntity<SysConfig> view(@RequestBody BaseIdDTO baseIdDTO) {
return ApiResponseUtils.success(sysConfigService.view(baseIdDTO.getId()));
}
@ApiOperation(value = "根据分类code获取详情", notes = "")
@PostMapping("/viewByCategoryCode")
public ApiResponseEntity<SysConfigCategory> viewByCategoryCode(@RequestBody SysConfigCategory sysConfigCategory) {
return ApiResponseUtils.success(sysConfigService.viewByCategoryCode(sysConfigCategory.getCode()));
}
}
package com.makeit.controller.wechat.sys;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysDictionaryCategory;
import com.makeit.module.system.service.SysDictionaryCategoryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 数据字典类型
*
*/
@Api(tags = "平台端小程序-数据字典分类(用户不可见)")
@RestController
@RequestMapping("/wechat/sys/dictionaryCategory")
public class SysDictionaryCategoryWechatController {
@Autowired
private SysDictionaryCategoryService dictionaryCategoryService;
@ApiOperation(value = "列表-带字典", notes = "")
@PostMapping("/getDictionaryCategoryByList")
public ApiResponseEntity<List<SysDictionaryCategory>> getDictionaryCategoryByList() {
List<SysDictionaryCategory> dictionaryCategoryList = dictionaryCategoryService.getEpDictionaryCategoryByList();
return ApiResponseUtils.success(dictionaryCategoryList);
}
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysDictionaryCategory>> list(@RequestBody SysDictionaryCategory platConfigCategory) {
return ApiResponseUtils.success(dictionaryCategoryService.list(platConfigCategory));
}
}
package com.makeit.controller.wechat.sys;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.module.system.entity.SysDictionary;
import com.makeit.module.system.service.SysDictionaryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "平台端小程序-数据字典(用户不可见)")
@RestController
@RequestMapping("/wechat/sys/dictionary")
public class SysDictionaryWechatController {
@Autowired
private SysDictionaryService sysDictionaryService;
@ApiOperation(value = "列表", notes = "")
@PostMapping("/list")
public ApiResponseEntity<List<SysDictionary>> list(@RequestBody SysDictionary sysDictionary) {
return ApiResponseUtils.success(sysDictionaryService.list(sysDictionary));
}
}
...@@ -172,7 +172,7 @@ ...@@ -172,7 +172,7 @@
<orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" /> <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" />
<orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.5" level="project" /> <orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" /> <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" />
......
...@@ -107,13 +107,14 @@ public enum CodeMessageEnum { ...@@ -107,13 +107,14 @@ public enum CodeMessageEnum {
PLATFORM_ERROR_SPACE_NOT_DEL(500, "PLATFORM.ERROR.SPACE.NOT.DEL"), PLATFORM_ERROR_SPACE_NOT_DEL(500, "PLATFORM.ERROR.SPACE.NOT.DEL"),
PLATFORM_ERROR_SPACE_NOT_AUTH_PARENT(500, "PLATFORM.ERROR.SPACE.NOT.AUTH.PARENT"), PLATFORM_ERROR_SPACE_NOT_AUTH_PARENT(500, "PLATFORM.ERROR.SPACE.NOT.AUTH.PARENT"),
PLATFORM_ERROR_SPACE_USER_NOT_ADD(500, "PLATFORM.ERROR.SPACE.USER.NOT.ADD"), PLATFORM_ERROR_SPACE_USER_NOT_ADD(500, "PLATFORM.ERROR.SPACE.USER.NOT.ADD"),
PLATFORM_ERROR_ROOM_EXIT_BAD(500, "PLATFORM.ERROR.ROOM.EXIT.BAD"), PLATFORM_ERROR_ROOM_EXIT_BAD(500, "PLATFORM.ERROR.ROOM.EXIT.BED"),
PLATFORM_ERROR_ROOM_BAD_NUMBER_NOT_AUTH(500, "PLATFORM.ERROR.ROOM.BAD.NUMBER.NOT.AUTH"), PLATFORM_ERROR_ROOM_BAD_NUMBER_NOT_AUTH(500, "PLATFORM.ERROR.ROOM.BED.NUMBER.NOT.AUTH"),
PLATFORM_ERROR_ROOM_NAME_EXIT(500, "PLATFORM.ERROR.ROOM.NAME.EXIT"), PLATFORM_ERROR_ROOM_NAME_EXIT(500, "PLATFORM.ERROR.ROOM.NAME.EXIT"),
PLATFORM_ERROR_BAD_NAME_EXIT(500, "PLATFORM.ERROR.BAD.NAME.EXIT"), PLATFORM_ERROR_BAD_NAME_EXIT(500, "PLATFORM.ERROR.BED.NAME.EXIT"),
PLATFORM_ERROR_BAD_NOT_DEL(500, "PLATFORM.ERROR.BAD.NOT.DEL"), PLATFORM_ERROR_BAD_NOT_DEL(500, "PLATFORM.ERROR.BED.NOT.DEL"),
PLATFORM_ERROR_BED_NOT_BIND_ELDER(500,"PLATFORM.ERROR.BED.NOT.BIND.ELDER"),
PLATFORM_ERROR_ROOM_OTHER_USED_NOT_DEL(500, "PLATFORM.ERROR.ROOM.OTHER.USED.NOT.DEL"), PLATFORM_ERROR_ROOM_OTHER_USED_NOT_DEL(500, "PLATFORM.ERROR.ROOM.OTHER.USED.NOT.DEL"),
PLATFORM_ERROR_BED_BIND_DEVICE_NOT_AUTH(500, "PLATFORM.ERROR.BED.BIND_DEVICE_NOT_AUTH"), PLATFORM_ERROR_BED_BIND_DEVICE_NOT_AUTH(500, "PLATFORM.ERROR.BED.BIND.DEVICE.NOT.AUTH"),
PLATFORM_ERROR_ELDER_BED_CANT_DEL(500, "PLATFORM.ERROR.ELDER.BED.CANT.DEL"), PLATFORM_ERROR_ELDER_BED_CANT_DEL(500, "PLATFORM.ERROR.ELDER.BED.CANT.DEL"),
......
...@@ -83,9 +83,20 @@ public class IotCommonService { ...@@ -83,9 +83,20 @@ public class IotCommonService {
* ] * ]
* @return * @return
*/ */
public static IotQueryParam buildQueryParam(int pageSize) { public static IotQueryParam buildQueryParam(int pageIndex,int pageSize) {
IotQueryParam iotQueryParam = new IotQueryParam(); IotQueryParam iotQueryParam = new IotQueryParam();
iotQueryParam.setPageIndex(0); iotQueryParam.setPageIndex(pageIndex);
iotQueryParam.setPageSize(pageSize);
iotQueryParam.setSorts(buildSort("timestamp"));
iotQueryParam.setTerms(Lists.newArrayList());
return iotQueryParam;
}
public static IotQueryParam buildQueryParamByPageIndex(int pageIndex,int pageSize) {
IotQueryParam iotQueryParam = new IotQueryParam();
iotQueryParam.setPageIndex(pageIndex);
iotQueryParam.setPageSize(pageSize); iotQueryParam.setPageSize(pageSize);
iotQueryParam.setSorts(buildSort("timestamp")); iotQueryParam.setSorts(buildSort("timestamp"));
......
package com.makeit.module.iot.service; package com.makeit.module.iot.service;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
...@@ -20,14 +22,13 @@ import com.makeit.utils.data.convert.StreamUtil; ...@@ -20,14 +22,13 @@ import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.old.StringUtils; import com.makeit.utils.old.StringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.RandomUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.io.IOException; import java.io.IOException;
import java.time.Duration; import java.time.*;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* iot产品设备相关接口 * iot产品设备相关接口
...@@ -40,6 +41,7 @@ public class IotProductDeviceService extends IotCommonService { ...@@ -40,6 +41,7 @@ public class IotProductDeviceService extends IotCommonService {
public static final String REPORT_PROPERTY = "reportProperty"; public static final String REPORT_PROPERTY = "reportProperty";
private static final DateTimeFormatter DEFAULT_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
/** /**
* 获取设备信息 * 获取设备信息
*/ */
...@@ -47,7 +49,7 @@ public class IotProductDeviceService extends IotCommonService { ...@@ -47,7 +49,7 @@ public class IotProductDeviceService extends IotCommonService {
String url = iotUrl + DEVICE_PREFIX_URL + "_query"; String url = iotUrl + DEVICE_PREFIX_URL + "_query";
// 条件可以自己改 // 条件可以自己改
IotQueryParam iotQueryParam = buildQueryParam(10); IotQueryParam iotQueryParam = buildQueryParam(0,10);
String body = JsonUtil.toJson(iotQueryParam); String body = JsonUtil.toJson(iotQueryParam);
...@@ -129,14 +131,78 @@ public class IotProductDeviceService extends IotCommonService { ...@@ -129,14 +131,78 @@ public class IotProductDeviceService extends IotCommonService {
} }
public List<String> getLastDayHourRange(LocalDateTime startDateTime) {
int count = 24;
List<String> list = Lists.newArrayList();
String startTime;
String endTime;
for (int i = count; i > 0; i--) {
startTime = DateUtil.format(startDateTime.minusHours(i), DatePattern.NORM_DATETIME_PATTERN);
endTime = DateUtil.format(startDateTime.minusHours(i - 1), DatePattern.NORM_DATETIME_PATTERN);
list.add(startTime + "~" + endTime);
}
return list;
}
public List<DeviceInfoContentBreathe> getDeviceLogByTimeRangeBreathe(String deviceId, int pageSize, LocalDateTime startTime, LocalDateTime endTime) { public List<DeviceInfoContentBreathe> getDeviceLogByTimeRangeBreathe(String deviceId, int pageSize, LocalDateTime startTime, LocalDateTime endTime) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); List<String> lastDayHourRange = getLastDayHourRange(startTime);
for (String hour : lastDayHourRange) {
String[] hourRangeArray = hour.split("~");
List<DeviceOperationLogEntity> deviceOperationLogEntities = getDeviceLogByTimeRange(deviceId, REPORT_PROPERTY, 5000, hourRangeArray[0], hourRangeArray[1]);
List<DeviceInfoContentBreathe> deviceInfoContentBreatheList = StreamUtil.map(deviceOperationLogEntities, e -> JsonUtil.toObj((String) e.getContent(), DeviceInfoContentBreathe.class));
}
long minute = 1440;
List<DeviceInfoContentBreathe> breatheList = Lists.newArrayList();
DeviceInfoContentBreathe deviceInfoContentBreathe;
for (long i = 1; i <= minute; i++) {
int brRandomLong = RandomUtils.nextInt(11,28);
int hrRandomLong = RandomUtils.nextInt(55,125);
int movebodyRandomLong = RandomUtils.nextInt(40,90);
deviceInfoContentBreathe = new DeviceInfoContentBreathe();
LocalDateTime localDateTime = startTime.plusMinutes(i);
long timeStamp = localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
deviceInfoContentBreathe.setTimestamp(timeStamp);
DeviceInfoContentBreathe.Properties properties = new DeviceInfoContentBreathe.Properties();
properties.setBr(brRandomLong);
properties.setHr(hrRandomLong);
properties.setBodymove(movebodyRandomLong);
deviceInfoContentBreathe.setProperties(properties);
breatheList.add(deviceInfoContentBreathe);
}
/*
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
List<DeviceOperationLogEntity> deviceOperationLogEntityList = getDeviceLogByTimeRange(deviceId, REPORT_PROPERTY, pageSize, dateTimeFormatter.format(startTime), dateTimeFormatter.format(endTime)); List<DeviceOperationLogEntity> deviceOperationLogEntityList = getDeviceLogByTimeRange(deviceId, REPORT_PROPERTY, pageSize, dateTimeFormatter.format(startTime), dateTimeFormatter.format(endTime));
List<DeviceInfoContentBreathe> deviceInfoContentBreatheList = StreamUtil.map(deviceOperationLogEntityList, e -> JsonUtil.toObj((String) e.getContent(), DeviceInfoContentBreathe.class)); List<DeviceInfoContentBreathe> deviceInfoContentBreatheList = deviceOperationLogEntityList.stream()
.filter(deviceOperationLogEntity -> deviceOperationLogEntity.getType().contains(REPORT_PROPERTY))
.map(deviceOperationLogEntity -> {
DeviceInfoContentBreathe deviceInfoContentBreathe = JsonUtil.toObj((String) deviceOperationLogEntity.getContent(), DeviceInfoContentBreathe.class);
deviceInfoContentBreathe.setReportTime(formatLongTime(deviceInfoContentBreathe.getTimestamp()));
return deviceInfoContentBreathe;
})
.collect(Collectors.toList());
Map<String, List<DeviceInfoContentBreathe>> minuteMap = StreamUtil.groupBy(deviceInfoContentBreatheList, DeviceInfoContentBreathe::getReportTime);
for (Map.Entry<String, List<DeviceInfoContentBreathe>> entry : minuteMap.entrySet()) {
}*/
return breatheList;
}
public static void main(String[] args) {
LocalDateTime localDateTime = LocalDateTime.now();
long timeStamp = localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
System.out.println(timeStamp);
long timestamp = localDateTime.toInstant(ZoneOffset.of("+8")).toEpochMilli();
System.out.println("LocalDateTime to Timestamp: " + timestamp);
}
return deviceInfoContentBreatheList; public static String formatLongTime(long time) {
return DEFAULT_FORMATTER.format(LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault()));
} }
public List<DeviceInfoContentSpace> getDeviceLogByTimeRangeSpace(String deviceId, int pageSize, LocalDateTime startTime, LocalDateTime endTime) { public List<DeviceInfoContentSpace> getDeviceLogByTimeRangeSpace(String deviceId, int pageSize, LocalDateTime startTime, LocalDateTime endTime) {
...@@ -217,7 +283,7 @@ public class IotProductDeviceService extends IotCommonService { ...@@ -217,7 +283,7 @@ public class IotProductDeviceService extends IotCommonService {
* @return * @return
*/ */
public List<DeviceOperationLogEntity> getDeviceLogByTimeRange(String deviceId, String typeValue, int pageSize, String startTime, String endTime) { public List<DeviceOperationLogEntity> getDeviceLogByTimeRange(String deviceId, String typeValue, int pageSize, String startTime, String endTime) {
IotQueryParam iotQueryParam = buildQueryParam(pageSize); IotQueryParam iotQueryParam = buildQueryParam(0,pageSize);
List<Term> terms = Lists.newArrayList(); List<Term> terms = Lists.newArrayList();
Term term1 = Term.builder() Term term1 = Term.builder()
...@@ -283,7 +349,7 @@ public class IotProductDeviceService extends IotCommonService { ...@@ -283,7 +349,7 @@ public class IotProductDeviceService extends IotCommonService {
*/ */
public List<DeviceOperationLogEntity> getDeviceLog(String deviceId, int pageSize, String typeValue) { public List<DeviceOperationLogEntity> getDeviceLog(String deviceId, int pageSize, String typeValue) {
String url = iotUrl + DEVICE_PREFIX_URL + deviceId + "/logs"; String url = iotUrl + DEVICE_PREFIX_URL + deviceId + "/logs";
IotQueryParam iotQueryParam = buildQueryParam(pageSize); IotQueryParam iotQueryParam = buildQueryParam(0,pageSize);
if (StringUtils.isNotEmpty(typeValue)) { if (StringUtils.isNotEmpty(typeValue)) {
List<Term> terms = Lists.newArrayList(); List<Term> terms = Lists.newArrayList();
Term term = Term.builder() Term term = Term.builder()
......
...@@ -7,8 +7,12 @@ public class AnalysisVO { ...@@ -7,8 +7,12 @@ public class AnalysisVO {
private Integer totalHr; private Integer totalHr;
private Integer avgHr; private Integer avgHr;
private Integer maxHr;
private Integer minHr;
private Integer totalBr; private Integer totalBr;
private Integer avgBr; private Integer avgBr;
private Integer maxBr;
private Integer minBr;
private Integer actionCount = 0; // 体动次数 private Integer actionCount = 0; // 体动次数
private Integer turnedCount = 0; // 翻身次数 private Integer turnedCount = 0; // 翻身次数
......
package com.makeit.utils.data.convert; package com.makeit.utils.data.convert;
import com.makeit.utils.old.StringUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
public class MathUtil { public class MathUtil {
public static Integer stringToInteger(Object s) {
if (s instanceof String && StringUtils.isBlank((String) s)) {
return null;
}
if (s == null) {
return null;
}
return Integer.valueOf(s + "");
}
public static int divideZero(int a, int b) { public static int divideZero(int a, int b) {
if (b == 0) { if (b == 0) {
return 0; return 0;
......
...@@ -33,5 +33,7 @@ public class MsgSendDTO { ...@@ -33,5 +33,7 @@ public class MsgSendDTO {
this.param = param; this.param = param;
} }
private String alarmType;
} }
...@@ -3,6 +3,7 @@ package com.makeit.utils.msg.sender; ...@@ -3,6 +3,7 @@ package com.makeit.utils.msg.sender;
import com.makeit.utils.msg.SendTypeEnum; import com.makeit.utils.msg.SendTypeEnum;
import com.makeit.utils.msg.dto.MsgSendDTO; import com.makeit.utils.msg.dto.MsgSendDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.JavaMailSender;
...@@ -10,6 +11,8 @@ import org.springframework.mail.javamail.MimeMessageHelper; ...@@ -10,6 +11,8 @@ import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMessage;
import java.util.Collection;
import java.util.Objects;
@Component @Component
@Slf4j @Slf4j
...@@ -35,7 +38,12 @@ public class MailMsgSender implements IMsgSender { ...@@ -35,7 +38,12 @@ public class MailMsgSender implements IMsgSender {
MimeMessage message = mailSender.createMimeMessage(); MimeMessage message = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true); MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from); helper.setFrom(from);
helper.setTo(msgDTO.getEmailSet().toArray(new String[msgDTO.getReceiverList().size()])); Collection<String> emailSet = msgDTO.getEmailSet();
emailSet.removeIf(Objects::isNull);
if(CollectionUtils.isEmpty(emailSet)){
return;
}
helper.setTo(emailSet.toArray(new String[emailSet.size()]));
helper.setSubject(msgDTO.getSubject()); helper.setSubject(msgDTO.getSubject());
helper.setText(msgDTO.getOriContent(), false); helper.setText(msgDTO.getOriContent(), false);
mailSender.send(message); mailSender.send(message);
......
...@@ -21,7 +21,6 @@ import java.util.Date; ...@@ -21,7 +21,6 @@ import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.function.BiConsumer; import java.util.function.BiConsumer;
import java.util.stream.Collectors;
@Component @Component
@Slf4j @Slf4j
...@@ -48,35 +47,62 @@ public class SmsVoiceSender implements IMsgSender{ ...@@ -48,35 +47,62 @@ public class SmsVoiceSender implements IMsgSender{
if(CollectionUtils.isEmpty(msgDTO.getReceiverList())){ if(CollectionUtils.isEmpty(msgDTO.getReceiverList())){
log.info("发送语音短信时,没有接收人,短信内容:"+msgDTO.getOriContent()); log.info("发送语音短信时,没有接收人,短信内容:"+msgDTO.getOriContent());
} }
String alarmType = msgDTO.getAlarmType();
Date now = new Date(); Date now = new Date();
//todo 支持同时发送多个老人
String time = String.valueOf(now.getTime()); String time = String.valueOf(now.getTime());
Collection<String> receiverList = msgDTO.getReceiverList(); Collection<String> receiverList = msgDTO.getReceiverList();
String receiverJoin = receiverList.stream().collect(Collectors.joining(",")); receiverList.forEach(
HashMap<String, String> paramMap = new HashMap<>(); vo->{
paramMap.put("uid", smsVoiceConfig.getUid()); try {
//md5-32位( md5-16位(登录密码)+ time ) HashMap<String, String> paramMap = new HashMap<>();
String md16 = CryptoUtil.md5_16(smsVoiceConfig.getPwd()); paramMap.put("uid", smsVoiceConfig.getUid());
String md32 = CryptoUtil.md5(md16 + time); //md5-32位( md5-16位(登录密码)+ time )
paramMap.put("pwd", md32); String md16 = null;
paramMap.put("time", time); md16 = CryptoUtil.md5_16(smsVoiceConfig.getPwd());
paramMap.put("mobile", receiverJoin); String md32 = CryptoUtil.md5(md16 + time);
String[] param = msgDTO.getParam(); paramMap.put("pwd", md32);
List<BiConsumer<HashMap<String,String>,String>> consumerList = Arrays.asList( paramMap.put("time", time);
(t,v)->t.put("one",v), paramMap.put("mobile", vo);
(t,v)->t.put("two",v) //告警类型 数据字典 1 长者跌倒 2 呼吸异常 3 心率异常 4 行为异常
if (StringUtils.equals(alarmType, "1")) {
paramMap.put("vid", "141");
}
if (StringUtils.equals(alarmType, "2")) {
paramMap.put("vid", "");
}
if (StringUtils.equals(alarmType, "3")) {
paramMap.put("vid", "");
}
if (StringUtils.equals(alarmType, "4")) {
paramMap.put("vid", "");
}
String[] param = msgDTO.getParam();
List<BiConsumer<HashMap<String, String>, String>> consumerList = Arrays.asList(
(t, v) -> t.put("one", v),
(t, v) -> t.put("two", v)
);
for (int i = 0; i < param.length; i++) {
BiConsumer<HashMap<String, String>, String> biConsumer = consumerList.get(i);
biConsumer.accept(paramMap, param[i]);
}
String resStr = HttpClient.sendJSONPostRequest(smsVoiceConfig.getUrl(), paramMap, new HttpHeaders(), String.class);
JSONObject jsonObject = JSON.parseObject(resStr);
String status = String.valueOf(jsonObject.get("status"));
if (!StringUtils.equals(status, "0")) {
log.error("发送语音短信失败:" + jsonObject.get("status_code"));
throw new BusinessException((String) jsonObject.get("status_code"));
}
log.info("发送语音短信成功");
}catch (Exception e){
log.error("发送语音异常:",vo,msgDTO,e);
}
}
); );
for (int i = 0; i < param.length; i++) {
BiConsumer<HashMap<String, String>, String> biConsumer = consumerList.get(i);
biConsumer.accept(paramMap,param[i]);
}
String resStr = HttpClient.sendJSONPostRequest(smsVoiceConfig.getUrl(), paramMap, new HttpHeaders(), String.class);
JSONObject jsonObject = JSON.parseObject(resStr);
String status = String.valueOf(jsonObject.get("status"));
if (!StringUtils.equals(status, "0")) {
log.error("发送语音短信失败:"+jsonObject.get("status_code"));
throw new BusinessException((String) jsonObject.get("status_code"));
}
log.info("发送语音短信成功");
}catch (Exception e){ }catch (Exception e){
log.error("发送语音异常:",msgDTO,e); log.error("发送语音异常:",msgDTO,e);
} }
......
...@@ -100,14 +100,15 @@ PLATFORM.ERROR.SPACE.NAME.DUPLICATE=同一层级,空间名称不能重复 ...@@ -100,14 +100,15 @@ PLATFORM.ERROR.SPACE.NAME.DUPLICATE=同一层级,空间名称不能重复
PLATFORM.ERROR.SPACE.NOT.DEL=该空间下存在下级或者房间,不可删除 PLATFORM.ERROR.SPACE.NOT.DEL=该空间下存在下级或者房间,不可删除
PLATFORM.ERROR.SPACE.NOT.AUTH.PARENT=上级空间不能是自己的下级空间 PLATFORM.ERROR.SPACE.NOT.AUTH.PARENT=上级空间不能是自己的下级空间
PLATFORM.ERROR.SPACE.USER.NOT.ADD=当前用户没有所属组织,请先分配组织 PLATFORM.ERROR.SPACE.USER.NOT.ADD=当前用户没有所属组织,请先分配组织
PLATFORM.ERROR.ROOM.EXIT.BAD=房间中存在已入住的床位,不可删除 PLATFORM.ERROR.ROOM.EXIT.BED=房间中存在已入住的床位,不可删除
PLATFORM.ERROR.ROOM.NAME.EXIT=该房间名称已存在 PLATFORM.ERROR.ROOM.NAME.EXIT=该房间名称已存在
PLATFORM.ERROR.ROOM.BAD.NUMBER.NOT.AUTH=床位数量不能改小 PLATFORM.ERROR.ROOM.BED.NUMBER.NOT.AUTH=床位数量不能改小
PLATFORM.ERROR.BAD.NAME.EXIT=床位名称已存在 PLATFORM.ERROR.BED.NAME.EXIT=床位名称已存在
PLATFORM.ERROR.BAD.NOT.DEL=床位已绑定长者或设备,不可删除 PLATFORM.ERROR.BED.NOT.DEL=床位已绑定长者或设备,不可删除
PLATFORM.ERROR.BED.NOT.BIND.ELDER=床位已入住长者,不可再次入住
PLATFORM.ERROR.ROOM.OTHER.USED.NOT.DEL=该房间下有床位有其他长者入住 PLATFORM.ERROR.ROOM.OTHER.USED.NOT.DEL=该房间下有床位有其他长者入住
PLATFORM.ERROR.BED.BIND_DEVICE_NOT_AUTH=该床位已绑定设备,请重新选择床位 PLATFORM.ERROR.BED.BIND.DEVICE.NOT.AUTH=该床位已绑定设备,请重新选择床位
PLATFORM.ERROR.ELDER.BED.CANT.DEL=含入住床位的老人,不可删除 PLATFORM.ERROR.ELDER.BED.CANT.DEL=含入住床位的老人,不可删除
......
...@@ -172,7 +172,7 @@ ...@@ -172,7 +172,7 @@
<orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" /> <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" />
<orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.5" level="project" /> <orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" /> <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" />
......
...@@ -40,7 +40,7 @@ public class SwaggerPlatformConfig { ...@@ -40,7 +40,7 @@ public class SwaggerPlatformConfig {
public SwaggerModuleConfig wechatModule() { public SwaggerModuleConfig wechatModule() {
SwaggerModuleConfig config = new SwaggerModuleConfig(); SwaggerModuleConfig config = new SwaggerModuleConfig();
config.setPackageList(Arrays.asList("com.makeit.module.controller.wechat")); config.setPackageList(Arrays.asList("com.makeit.module.controller.wechat","com.makeit.controller.wechat.sys"));
config.setModuleName("平台端小程序"); config.setModuleName("平台端小程序");
return config; return config;
} }
...@@ -49,7 +49,7 @@ public class SwaggerPlatformConfig { ...@@ -49,7 +49,7 @@ public class SwaggerPlatformConfig {
public SwaggerModuleConfig childrenModule() { public SwaggerModuleConfig childrenModule() {
SwaggerModuleConfig config = new SwaggerModuleConfig(); SwaggerModuleConfig config = new SwaggerModuleConfig();
config.setPackageList(Arrays.asList("com.makeit.module.controller.children")); config.setPackageList(Arrays.asList("com.makeit.module.controller.children","com.makeit.controller.children.sys"));
config.setModuleName("子女端小程序"); config.setModuleName("子女端小程序");
return config; return config;
} }
...@@ -80,6 +80,7 @@ public class SwaggerPlatformConfig { ...@@ -80,6 +80,7 @@ public class SwaggerPlatformConfig {
//api过滤 //api过滤
builder = builder.apis( builder = builder.apis(
RequestHandlerSelectors.basePackage("com.makeit.module.controller.wechat") RequestHandlerSelectors.basePackage("com.makeit.module.controller.wechat")
.or(RequestHandlerSelectors.basePackage("com.makeit.controller.wechat.sys"))
); );
return builder.build(); return builder.build();
} }
...@@ -94,6 +95,7 @@ public class SwaggerPlatformConfig { ...@@ -94,6 +95,7 @@ public class SwaggerPlatformConfig {
//api过滤 //api过滤
builder = builder.apis( builder = builder.apis(
RequestHandlerSelectors.basePackage("com.makeit.module.controller.children") RequestHandlerSelectors.basePackage("com.makeit.module.controller.children")
.or(RequestHandlerSelectors.basePackage("com.makeit.controller.children.sys"))
); );
return builder.build(); return builder.build();
} }
......
...@@ -36,5 +36,12 @@ public class PlatAlarmRecordChildrenController { ...@@ -36,5 +36,12 @@ public class PlatAlarmRecordChildrenController {
public ApiResponseEntity<PlatAlarmRecordVO> view(@RequestBody BaseIdDTO dto) { public ApiResponseEntity<PlatAlarmRecordVO> view(@RequestBody BaseIdDTO dto) {
return ApiResponseUtils.success(platAlarmRecordService.view(dto.getId())); return ApiResponseUtils.success(platAlarmRecordService.view(dto.getId()));
} }
@ApiOperation("已读")
@PostMapping("read")
public ApiResponseEntity<Void> read(@RequestBody BaseIdDTO dto) {
platAlarmRecordService.read(dto.getId());
return ApiResponseUtils.success();
}
} }
...@@ -4,11 +4,13 @@ package com.makeit.module.controller.children.elder; ...@@ -4,11 +4,13 @@ package com.makeit.module.controller.children.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.PlatElderIdDTO; import com.makeit.dto.platform.elder.PlatElderIdDTO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoWechatDTOVO;
import com.makeit.service.platform.elder.PlatElderChildrenInfoService; import com.makeit.service.platform.elder.PlatElderChildrenInfoService;
import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO; import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -36,6 +38,13 @@ public class PlatElderChildrenInfoChildrenController { ...@@ -36,6 +38,13 @@ public class PlatElderChildrenInfoChildrenController {
return ApiResponseUtils.success(platElderChildrenInfoService.view()); return ApiResponseUtils.success(platElderChildrenInfoService.view());
} }
@ApiOperation("编辑")
@PostMapping("edit")
public ApiResponseEntity<?> edit(@Validated @RequestBody PlatElderChildrenInfoWechatDTOVO dto) {
platElderChildrenInfoService.wechatEdit(dto);
return ApiResponseUtils.success();
}
@ApiOperation("绑定") @ApiOperation("绑定")
@PostMapping("bind") @PostMapping("bind")
public ApiResponseEntity<?> bind(@RequestBody PlatElderIdDTO dto) { public ApiResponseEntity<?> bind(@RequestBody PlatElderIdDTO dto) {
......
...@@ -6,7 +6,7 @@ import com.makeit.common.page.PageReqDTO; ...@@ -6,7 +6,7 @@ import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO; import com.makeit.common.page.PageVO;
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.children.PlatElderChildrenInfoEditVO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoDTOVO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO;
import com.makeit.service.platform.elder.PlatElderChildrenInfoService; import com.makeit.service.platform.elder.PlatElderChildrenInfoService;
import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO; import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO;
...@@ -51,14 +51,14 @@ public class PlatElderChildrenInfoController { ...@@ -51,14 +51,14 @@ public class PlatElderChildrenInfoController {
@ApiOperation("编辑") @ApiOperation("编辑")
@PostMapping("edit") @PostMapping("edit")
public ApiResponseEntity<?> edit(@Validated @RequestBody PlatElderChildrenInfoEditVO dto) { public ApiResponseEntity<?> edit(@Validated @RequestBody PlatElderChildrenInfoDTOVO dto) {
platElderChildrenInfoService.edit(dto); platElderChildrenInfoService.edit(dto);
return ApiResponseUtils.success(); return ApiResponseUtils.success();
} }
@ApiOperation("详情") @ApiOperation("详情")
@PostMapping("view") @PostMapping("view")
public ApiResponseEntity<PlatElderChildrenInfoEditVO> view(@RequestBody BaseIdDTO baseIdDTO) { public ApiResponseEntity<PlatElderChildrenInfoDTOVO> view(@RequestBody BaseIdDTO baseIdDTO) {
return ApiResponseUtils.success(platElderChildrenInfoService.view(baseIdDTO.getId())); return ApiResponseUtils.success(platElderChildrenInfoService.view(baseIdDTO.getId()));
} }
......
...@@ -5,6 +5,7 @@ import com.makeit.common.response.ApiResponseEntity; ...@@ -5,6 +5,7 @@ import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils; import com.makeit.common.response.ApiResponseUtils;
import com.makeit.global.annotation.AuthIgnore; import com.makeit.global.annotation.AuthIgnore;
import com.makeit.global.aspect.tenant.TenantIdIgnore; import com.makeit.global.aspect.tenant.TenantIdIgnore;
import com.makeit.service.platform.elder.PlatElderSleepService;
import com.makeit.task.IotSyncTask; import com.makeit.task.IotSyncTask;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -28,6 +29,8 @@ public class PlatElderSleepController { ...@@ -28,6 +29,8 @@ public class PlatElderSleepController {
@Autowired @Autowired
private IotSyncTask iotSyncTask; private IotSyncTask iotSyncTask;
@Autowired
private PlatElderSleepService platElderSleepService;
@ApiOperation("测试") @ApiOperation("测试")
@PostMapping("test") @PostMapping("test")
...@@ -38,6 +41,15 @@ public class PlatElderSleepController { ...@@ -38,6 +41,15 @@ public class PlatElderSleepController {
return ApiResponseUtils.success(); return ApiResponseUtils.success();
} }
@ApiOperation("测试")
@PostMapping("test1")
@AuthIgnore
@TenantIdIgnore
public ApiResponseEntity<Void> test1() {
platElderSleepService.test1();
return ApiResponseUtils.success();
}
} }
......
...@@ -87,6 +87,13 @@ public class PlatSpaceController { ...@@ -87,6 +87,13 @@ public class PlatSpaceController {
return ApiResponseUtils.success(data); return ApiResponseUtils.success(data);
} }
@ApiOperation("树-到床位(未住人床位)-根据老人组织")
@PostMapping("listTreeAuthIgnoreByElder")
public ApiResponseEntity<List<PlatSpaceVO>> listTreeAuthIgnoreByElder(@RequestBody PlatSpaceQueryDTO dto) {
List<PlatSpaceVO> data = spaceService.listBedTreeByElderGroup(dto,true);
return ApiResponseUtils.success(data);
}
@ApiOperation("树-到床位") @ApiOperation("树-到床位")
@PostMapping("listBedTree") @PostMapping("listBedTree")
public ApiResponseEntity<List<PlatSpaceVO>> listBedTreeAuthIgnore(@RequestBody PlatSpaceQueryDTO dto) { public ApiResponseEntity<List<PlatSpaceVO>> listBedTreeAuthIgnore(@RequestBody PlatSpaceQueryDTO dto) {
......
...@@ -20,7 +20,7 @@ import javax.validation.constraints.Size; ...@@ -20,7 +20,7 @@ import javax.validation.constraints.Size;
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ElderChildrenInfo对象", description = "长者子女账号") @ApiModel(value = "ElderChildrenInfo对象", description = "长者子女账号")
public class PlatElderChildrenInfoEditVO extends BaseTenantDTO { public class PlatElderChildrenInfoDTOVO extends BaseTenantDTO {
@ApiModelProperty(value = "长者id") @ApiModelProperty(value = "长者id")
private String elderId; private String elderId;
......
package com.makeit.dto.platform.elder.children;
import com.makeit.common.dto.BaseTenantDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
/**
* <p>
* 长者子女账号
* </p>
*
* @author eugene young
* @since 2023-08-29
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ElderChildrenInfo对象", description = "长者子女账号")
public class PlatElderChildrenInfoWechatDTOVO extends BaseTenantDTO {
@NotBlank(message = "姓名不能为空")
@Size(max = 50, message = "姓名最长为50个字符")
@ApiModelProperty(value = "姓名")
private String name;
@ApiModelProperty(value = "手机号码")
private String phone;
@ApiModelProperty(value = "微信头像路径")
private String avatar;
}
...@@ -15,4 +15,7 @@ public class PlatSpaceQueryDTO { ...@@ -15,4 +15,7 @@ public class PlatSpaceQueryDTO {
@ApiModelProperty("空间名称") @ApiModelProperty("空间名称")
private String name; private String name;
@ApiModelProperty("长者ID")
private String elderId;
} }
...@@ -86,6 +86,9 @@ public class PlatAlarmRecord extends BaseBusEntity { ...@@ -86,6 +86,9 @@ public class PlatAlarmRecord extends BaseBusEntity {
@ApiModelProperty("区域名称") @ApiModelProperty("区域名称")
private String regionName; private String regionName;
@ApiModelProperty(value = "0-未读 1-已读")
private String readFlag;
} }
......
...@@ -61,4 +61,6 @@ public interface PlatAlarmRecordService extends IService<PlatAlarmRecord> { ...@@ -61,4 +61,6 @@ public interface PlatAlarmRecordService extends IService<PlatAlarmRecord> {
void getElderListByDeviceId(PlatAlarmCheckDTO platAlarmCheckDTO); void getElderListByDeviceId(PlatAlarmCheckDTO platAlarmCheckDTO);
void dealAlarm(BaseIdDTO dto); void dealAlarm(BaseIdDTO dto);
void read(String id);
} }
...@@ -52,7 +52,8 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe ...@@ -52,7 +52,8 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe
public List<PlatAlarmConfigListVO> list(PlatAlarmConfigQueryDTO dto) { public List<PlatAlarmConfigListVO> list(PlatAlarmConfigQueryDTO dto) {
List<PlatAlarmConfig> configList = list(new QueryWrapper<PlatAlarmConfig>().lambda() List<PlatAlarmConfig> configList = list(new QueryWrapper<PlatAlarmConfig>().lambda()
.apply(StringUtils.isNotBlank(dto.getOrgId()), "find_in_set('" + dto.getOrgId() + "',org_path)") //.apply(StringUtils.isNotBlank(dto.getOrgId()), "find_in_set('" + dto.getOrgId() + "',org_path)")
.eq(StringUtils.isNotBlank(dto.getOrgId()), PlatAlarmConfig::getOrgId, dto.getOrgId())
.orderByAsc(PlatAlarmConfig::getAlarmType) .orderByAsc(PlatAlarmConfig::getAlarmType)
); );
...@@ -194,7 +195,7 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe ...@@ -194,7 +195,7 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe
String[] split = orgPath.split(","); String[] split = orgPath.split(",");
TenantIdUtil.execute(org.getTenantId(),()->{ TenantIdUtil.execute(org.getTenantId(), () -> {
configList.forEach(e -> { configList.forEach(e -> {
e.setTenantId(org.getTenantId()); e.setTenantId(org.getTenantId());
e.setId(null); e.setId(null);
......
package com.makeit.service.platform.alarm.impl; package com.makeit.service.platform.alarm.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.makeit.common.dto.BaseIdDTO; import com.makeit.common.dto.BaseIdDTO;
...@@ -117,6 +119,9 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe ...@@ -117,6 +119,9 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
return new PageVO<>(); return new PageVO<>();
} }
String elderId = platElderChildrenInfo.getElderId(); String elderId = platElderChildrenInfo.getElderId();
if(StringUtils.isBlank(elderId)){
return new PageVO<>();
}
String[] split = elderId.split(","); String[] split = elderId.split(",");
PlatAlarmRecordQueryDTO data = dto.getData(); PlatAlarmRecordQueryDTO data = dto.getData();
data.setElderIdList(Arrays.asList(split)); data.setElderIdList(Arrays.asList(split));
...@@ -126,6 +131,7 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe ...@@ -126,6 +131,7 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
private LambdaQueryWrapper<PlatAlarmRecord> getLambdaQueryWrapper(PlatAlarmRecordQueryDTO param) { private LambdaQueryWrapper<PlatAlarmRecord> getLambdaQueryWrapper(PlatAlarmRecordQueryDTO param) {
return new LambdaQueryWrapper<PlatAlarmRecord>().ge(Objects.nonNull(param.getCreateDateFrom()), BaseEntity::getCreateDate, param.getCreateDateFrom()) return new LambdaQueryWrapper<PlatAlarmRecord>().ge(Objects.nonNull(param.getCreateDateFrom()), BaseEntity::getCreateDate, param.getCreateDateFrom())
.eq(StringUtils.isNotBlank(param.getId()),BaseEntity::getId,param.getId())
.le(Objects.nonNull(param.getCreateDateTo()), BaseEntity::getCreateDate, param.getCreateDateTo()) .le(Objects.nonNull(param.getCreateDateTo()), BaseEntity::getCreateDate, param.getCreateDateTo())
.eq(StringUtils.isNotBlank(param.getAlarmType()), PlatAlarmRecord::getAlarmType, param.getAlarmType()) .eq(StringUtils.isNotBlank(param.getAlarmType()), PlatAlarmRecord::getAlarmType, param.getAlarmType())
.eq(StringUtils.isNotBlank(param.getStatus()), PlatAlarmRecord::getStatus, param.getStatus()) .eq(StringUtils.isNotBlank(param.getStatus()), PlatAlarmRecord::getStatus, param.getStatus())
...@@ -321,6 +327,7 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe ...@@ -321,6 +327,7 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
msgSendDTO.setOriContent(alarmRecord.getContent()); msgSendDTO.setOriContent(alarmRecord.getContent());
msgSendDTO.setSubject(alarmRecord.getContent()); msgSendDTO.setSubject(alarmRecord.getContent());
msgSendDTO.setParam(alarmRecord.getElderName()); msgSendDTO.setParam(alarmRecord.getElderName());
msgSendDTO.setAlarmType(alarmConfig.getAlarmType());
//todo 小程序消息 //todo 小程序消息
msgUtil.send(msgSendDTO); msgUtil.send(msgSendDTO);
} }
...@@ -352,6 +359,8 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe ...@@ -352,6 +359,8 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
platAlarmRecord.setRemark(platAlarmCheckDTO.getRemark()); platAlarmRecord.setRemark(platAlarmCheckDTO.getRemark());
platAlarmRecord.setAbnormalValue(platAlarmCheckDTO.getAbnormalValue()); platAlarmRecord.setAbnormalValue(platAlarmCheckDTO.getAbnormalValue());
platAlarmRecord.setRegionName(platElder.getRegionName()); platAlarmRecord.setRegionName(platElder.getRegionName());
platAlarmRecord.setReadFlag(CommonEnum.NO.getValue());
return platAlarmRecord; return platAlarmRecord;
} }
...@@ -459,4 +468,13 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe ...@@ -459,4 +468,13 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
platAlarmRecord.setDealDate(LocalDateTime.now()); platAlarmRecord.setDealDate(LocalDateTime.now());
updateById(platAlarmRecord); updateById(platAlarmRecord);
} }
@Override
@Transactional
public void read(String id) {
LambdaUpdateWrapper<PlatAlarmRecord> recordLambdaUpdateWrapper = Wrappers.lambdaUpdate(PlatAlarmRecord.class)
.eq(BaseEntity::getId, id)
.set(PlatAlarmRecord::getReadFlag, CommonEnum.YES.getValue());
update(recordLambdaUpdateWrapper);
}
} }
...@@ -119,7 +119,7 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev ...@@ -119,7 +119,7 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev
check(dto); check(dto);
PlatDevice db = getById(dto.getId()); PlatDevice db = getById(dto.getId());
BeanUtils.copyProperties(dto, db); BeanUtils.copyProperties(dto, db,BaseBusEntity.Fields.tenantId);
updateById(db); updateById(db);
......
...@@ -3,8 +3,9 @@ package com.makeit.service.platform.elder; ...@@ -3,8 +3,9 @@ package com.makeit.service.platform.elder;
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.elder.children.PlatElderChildrenInfoEditVO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoDTOVO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoWechatDTOVO;
import com.makeit.entity.platform.elder.PlatElderChildrenInfo; import com.makeit.entity.platform.elder.PlatElderChildrenInfo;
import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO; import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO;
import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO; import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO;
...@@ -25,9 +26,11 @@ public interface PlatElderChildrenInfoService extends IService<PlatElderChildren ...@@ -25,9 +26,11 @@ public interface PlatElderChildrenInfoService extends IService<PlatElderChildren
List<PlatElderChildrenInfoListVO> list(PlatElderChildrenInfoQueryDTO dto); List<PlatElderChildrenInfoListVO> list(PlatElderChildrenInfoQueryDTO dto);
void edit(PlatElderChildrenInfoEditVO dto); void edit(PlatElderChildrenInfoDTOVO dto);
PlatElderChildrenInfoEditVO view(String id); void wechatEdit(PlatElderChildrenInfoWechatDTOVO dto);
PlatElderChildrenInfoDTOVO view(String id);
void del(String id); void del(String id);
......
...@@ -14,4 +14,6 @@ import com.makeit.entity.platform.elder.PlatElderSleep; ...@@ -14,4 +14,6 @@ import com.makeit.entity.platform.elder.PlatElderSleep;
public interface PlatElderSleepService extends IService<PlatElderSleep> { public interface PlatElderSleepService extends IService<PlatElderSleep> {
void elderSleepSleepAnalysisTask(); void elderSleepSleepAnalysisTask();
void test1();
} }
...@@ -6,8 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,8 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
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.elder.children.PlatElderChildrenInfoEditVO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoDTOVO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO; import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoWechatDTOVO;
import com.makeit.entity.platform.auth.PlatOrg; import com.makeit.entity.platform.auth.PlatOrg;
import com.makeit.entity.platform.elder.PlatElder; import com.makeit.entity.platform.elder.PlatElder;
import com.makeit.entity.platform.elder.PlatElderChildrenInfo; import com.makeit.entity.platform.elder.PlatElderChildrenInfo;
...@@ -25,11 +26,15 @@ import com.makeit.utils.sql.join.JoinUtil; ...@@ -25,11 +26,15 @@ import com.makeit.utils.sql.join.JoinUtil;
import com.makeit.utils.user.wechat.WechatUserUtil; import com.makeit.utils.user.wechat.WechatUserUtil;
import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO; import com.makeit.vo.platform.elder.PlatElderChildrenInfoListVO;
import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO; import com.makeit.vo.wechat.elder.PlatElderChildrenInfoWechatVO;
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 org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.*; import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.function.Function; import java.util.function.Function;
/** /**
...@@ -98,7 +103,7 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild ...@@ -98,7 +103,7 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild
return voList; return voList;
} }
private void check(PlatElderChildrenInfoEditVO dto) { private void check(PlatElderChildrenInfoDTOVO dto) {
if (true) { if (true) {
return; return;
...@@ -125,19 +130,35 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild ...@@ -125,19 +130,35 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild
@Transactional @Transactional
@Override @Override
public void edit(PlatElderChildrenInfoEditVO dto) { public void edit(PlatElderChildrenInfoDTOVO dto) {
check(BeanDtoVoUtils.convert(dto, PlatElderChildrenInfoEditVO.class)); check(BeanDtoVoUtils.convert(dto, PlatElderChildrenInfoDTOVO.class));
updateById(BeanDtoVoUtils.convert(dto, PlatElderChildrenInfo.class)); PlatElderChildrenInfo db = getById(dto.getId());
BeanUtils.copyProperties(dto, db);
updateById(db);
} }
@Transactional
@Override
public void wechatEdit(PlatElderChildrenInfoWechatDTOVO dto) {
check(BeanDtoVoUtils.convert(dto, PlatElderChildrenInfoDTOVO.class));
PlatElderChildrenInfo db = getById(dto.getId());
BeanUtils.copyProperties(dto, db);
updateById(db);
}
@Override @Override
public PlatElderChildrenInfoEditVO view(String id) { public PlatElderChildrenInfoDTOVO view(String id) {
PlatElderChildrenInfoEditVO vo = BeanDtoVoUtils.convert(getById(id), PlatElderChildrenInfoEditVO.class); PlatElderChildrenInfoDTOVO vo = BeanDtoVoUtils.convert(getById(id), PlatElderChildrenInfoDTOVO.class);
JoinUtil.joinSplit(Arrays.asList(vo), platElderService, PlatElderChildrenInfoEditVO::getElderId, PlatElder::getId, (c, e) -> { JoinUtil.joinSplit(Arrays.asList(vo), platElderService, PlatElderChildrenInfoDTOVO::getElderId, PlatElder::getId, (c, e) -> {
c.setElderName(StreamUtil.join(e, PlatElder::getName)); c.setElderName(StreamUtil.join(e, PlatElder::getName));
}); });
......
...@@ -18,6 +18,7 @@ import com.makeit.service.platform.alarm.PlatAlarmRecordService; ...@@ -18,6 +18,7 @@ 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.*;
import com.makeit.utils.LongTimestampUtil; import com.makeit.utils.LongTimestampUtil;
import com.makeit.utils.data.convert.MathUtil;
import com.makeit.utils.data.convert.StreamUtil; import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.data.validate.CollectionUtils; import com.makeit.utils.data.validate.CollectionUtils;
import com.makeit.utils.old.StringUtils; import com.makeit.utils.old.StringUtils;
...@@ -290,7 +291,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe ...@@ -290,7 +291,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
//vo.setRoomId(e.get); //vo.setRoomId(e.get);
vo.setRoomName(e.getRegionName()); vo.setRoomName(e.getRegionName());
vo.setDuration(Integer.valueOf(e.getAbnormalValue() + "")); vo.setDuration(MathUtil.stringToInteger(e.getAbnormalValue()));
return vo; return vo;
......
package com.makeit.service.platform.elder.impl; package com.makeit.service.platform.elder.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.makeit.common.entity.BaseEntity; import com.makeit.common.entity.BaseEntity;
import com.makeit.dto.platform.elder.PlatElderIdDTO; import com.makeit.dto.platform.elder.PlatElderIdDTO;
...@@ -21,6 +22,7 @@ import com.makeit.utils.StandardDeviationUtil; ...@@ -21,6 +22,7 @@ import com.makeit.utils.StandardDeviationUtil;
import com.makeit.utils.data.convert.StreamUtil; import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.data.validate.CollectionUtils; import com.makeit.utils.data.validate.CollectionUtils;
import com.makeit.utils.old.StringUtils; import com.makeit.utils.old.StringUtils;
import com.makeit.utils.redis.RedisUtil;
import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO; import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO;
import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeBodyVO; import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeBodyVO;
import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO; import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO;
...@@ -36,6 +38,7 @@ import java.util.ArrayList; ...@@ -36,6 +38,7 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -50,6 +53,8 @@ import java.util.stream.Collectors; ...@@ -50,6 +53,8 @@ import java.util.stream.Collectors;
@Service @Service
public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
public static final String ELDER_STATUS = "plat:elder:status:";
@Autowired @Autowired
private PlatElderService platElderService; private PlatElderService platElderService;
...@@ -156,7 +161,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { ...@@ -156,7 +161,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
return; return;
} }
boolean flag = DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()); boolean flag = DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()+"");
if (!flag) { if (!flag) {
return; return;
...@@ -177,7 +182,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { ...@@ -177,7 +182,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
return; return;
} }
boolean flag = DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()); boolean flag = DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()+"");
if (!flag) { if (!flag) {
return; return;
...@@ -198,7 +203,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { ...@@ -198,7 +203,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
return; return;
} }
boolean flag = !DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()); boolean flag = !DeviceInfoContentBreatheEnum.PersonStateEnum.NOBODY.getValue().equals(nowDataBreathe.getProperties().getPersonState()+"");
if (!flag) { if (!flag) {
return; return;
} }
...@@ -234,6 +239,11 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { ...@@ -234,6 +239,11 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
@Override @Override
public PlatElderRealTimeNowVO nowStatus(PlatElderIdDTO platElderIdDTO) { public PlatElderRealTimeNowVO nowStatus(PlatElderIdDTO platElderIdDTO) {
Object result = RedisUtil.get(ELDER_STATUS + platElderIdDTO.getElderId());
if (result != null) {
return JSON.parseObject(result.toString(),PlatElderRealTimeNowVO.class);
}
DeviceInfoContentBreathe deviceInfoContentBreathe = getNowDataBreathe(platElderIdDTO.getElderId(), platElderIdDTO.getDeviceId()); DeviceInfoContentBreathe deviceInfoContentBreathe = getNowDataBreathe(platElderIdDTO.getElderId(), platElderIdDTO.getDeviceId());
// //
PlatElderRealTimeNowVO platElderRealTimeNowVO = new PlatElderRealTimeNowVO(); PlatElderRealTimeNowVO platElderRealTimeNowVO = new PlatElderRealTimeNowVO();
...@@ -256,10 +266,15 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService { ...@@ -256,10 +266,15 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
nowStatusSleepAndBed(platElderRealTimeNowVO, platElderIdDTO, deviceInfoContentBreathe); nowStatusSleepAndBed(platElderRealTimeNowVO, platElderIdDTO, deviceInfoContentBreathe);
// if(StringUtils.isBlank(platElderRealTimeNowVO.getStatus())){
// platElderRealTimeNowVO.setStatus();
// }
platElderRealTimeNowVO.setHeartRate(deviceInfoContentBreathe.getProperties().getHr()); platElderRealTimeNowVO.setHeartRate(deviceInfoContentBreathe.getProperties().getHr());
platElderRealTimeNowVO.setRespiratoryRate(deviceInfoContentBreathe.getProperties().getBr()); platElderRealTimeNowVO.setRespiratoryRate(deviceInfoContentBreathe.getProperties().getBr());
platElderRealTimeNowVO.setBodyMove(deviceInfoContentBreathe.getProperties().getBodymove()); platElderRealTimeNowVO.setBodyMove(deviceInfoContentBreathe.getProperties().getBodymove());
RedisUtil.set(ELDER_STATUS + platElderIdDTO.getElderId(), JSON.toJSONString(platElderRealTimeNowVO),15, TimeUnit.SECONDS);
return platElderRealTimeNowVO; return platElderRealTimeNowVO;
} }
......
...@@ -114,17 +114,7 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -114,17 +114,7 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
.orderByDesc(PlatElder::getId); .orderByDesc(PlatElder::getId);
} }
@Override private void fill(List<PlatElderListVO> list){
public PageVO<PlatElderListVO> page(PageReqDTO<PlatElderQueryDTO> page) {
PlatElderQueryDTO dto = page.getData();
Page<PlatElder> p = PageUtil.toMpPage(page);
Page<PlatElder> voPage = page(p, lambdaQueryWrapper(dto));
List<PlatElder> voList = voPage.getRecords();
List<PlatElderListVO> list = BeanDtoVoUtils.listVo(voList, PlatElderListVO.class);
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());
}); });
...@@ -166,6 +156,20 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -166,6 +156,20 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
JoinUtil.join(list, platBedService, PlatElderListVO::getBedId, PlatBed::getId, (e, l) -> { JoinUtil.join(list, platBedService, PlatElderListVO::getBedId, PlatBed::getId, (e, l) -> {
e.setBedName(l.getName()); e.setBedName(l.getName());
}); });
}
@Override
public PageVO<PlatElderListVO> page(PageReqDTO<PlatElderQueryDTO> page) {
PlatElderQueryDTO dto = page.getData();
Page<PlatElder> p = PageUtil.toMpPage(page);
Page<PlatElder> voPage = page(p, lambdaQueryWrapper(dto));
List<PlatElder> voList = voPage.getRecords();
List<PlatElderListVO> list = BeanDtoVoUtils.listVo(voList, PlatElderListVO.class);
fill(list);
return PageUtil.toPageVO(list, voPage); return PageUtil.toPageVO(list, voPage);
...@@ -177,6 +181,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -177,6 +181,8 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
List<PlatElderListVO> list = BeanDtoVoUtils.listVo(voList, PlatElderListVO.class); List<PlatElderListVO> list = BeanDtoVoUtils.listVo(voList, PlatElderListVO.class);
fill(list);
return list; return list;
} }
...@@ -514,6 +520,16 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -514,6 +520,16 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
} }
private void checkBed(PlatElderAddDTO dto) {
PlatBed platBed = platBedService.getById(dto.getBedId());
if (CommonEnum.NO.getValue().equals(platBed.getStatus())) {
throw new BusinessException(CodeMessageEnum.PLATFORM_ERROR_BED_BIND_DEVICE_NOT_AUTH);
}
}
private void fillSpace(PlatElder platElder) { private void fillSpace(PlatElder platElder) {
if (StringUtils.isBlank(platElder.getBedId())) { if (StringUtils.isBlank(platElder.getBedId())) {
...@@ -538,6 +554,7 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -538,6 +554,7 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
public void add(PlatElderAddDTO dto) { public void add(PlatElderAddDTO dto) {
check(dto); check(dto);
checkBed(dto);
PlatElder platElder = BeanDtoVoUtils.convert(dto, PlatElder.class); PlatElder platElder = BeanDtoVoUtils.convert(dto, PlatElder.class);
...@@ -918,6 +935,41 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder ...@@ -918,6 +935,41 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
voList = Arrays.stream(childrenInfo.getElderId().split(",")).map(map::get).filter(Objects::nonNull).collect(Collectors.toList()); voList = Arrays.stream(childrenInfo.getElderId().split(",")).map(map::get).filter(Objects::nonNull).collect(Collectors.toList());
JoinUtil.joinSplit(voList, platSpaceService, PlatElderWechatSimpleVO::getSpacePath, PlatSpace::getId, (e, l) -> {
e.setSpacePathName(StreamUtil.join(l, Objects::nonNull, PlatSpace::getName));
});
JoinUtil.joinSplit(voList, platRoomService, PlatElderWechatSimpleVO::getSpacePath, PlatRoom::getId, (e, l) -> {
e.setSpacePathName(e.getSpacePathName() + "," + StreamUtil.join(l, Objects::nonNull, PlatRoom::getName));
});
JoinUtil.joinSplit(voList, platBedService, PlatElderWechatSimpleVO::getSpacePath, PlatBed::getId, (e, l) -> {
e.setSpacePathName(e.getSpacePathName() + "," + StreamUtil.join(l, Objects::nonNull, PlatBed::getName));
});
JoinUtil.join(voList, platSpaceService, Arrays.asList(
PlatElderWechatSimpleVO::getSpaceId,
PlatElderWechatSimpleVO::getStreetSpaceId,
PlatElderWechatSimpleVO::getBuildingSpaceId,
PlatElderWechatSimpleVO::getUnitSpaceId,
PlatElderWechatSimpleVO::getFloorSpaceId
), PlatSpace::getId, Arrays.asList(
(e, s) -> e.setSpaceName(s.getName()),
(e, s) -> e.setStreetSpaceName(s.getName()),
(e, s) -> e.setBuildingSpaceName(s.getName()),
(e, s) -> e.setUnitSpaceName(s.getName()),
(e, s) -> e.setFloorSpaceName(s.getName())
));
JoinUtil.join(voList, platRoomService, PlatElderWechatSimpleVO::getRoomId, PlatRoom::getId, (e, l) -> {
e.setRoomName(l.getName());
});
JoinUtil.join(voList, platBedService, PlatElderWechatSimpleVO::getBedId, PlatBed::getId, (e, l) -> {
e.setBedName(l.getName());
});
return voList; return voList;
} }
......
...@@ -82,4 +82,15 @@ public interface PlatSpaceService extends IService<PlatSpace> { ...@@ -82,4 +82,15 @@ public interface PlatSpaceService extends IService<PlatSpace> {
List<PlatSpaceVO> parentListTree(PlatSpaceQueryDTO dto); List<PlatSpaceVO> parentListTree(PlatSpaceQueryDTO dto);
List<PlatSpaceVO> listBedTree(PlatSpaceQueryDTO dto, boolean flag); List<PlatSpaceVO> listBedTree(PlatSpaceQueryDTO dto, boolean flag);
/**
* 根据老人组织过滤空间
* @param dto
* @param flag
* @return
*/
List<PlatSpaceVO> listBedTreeByElderGroup(PlatSpaceQueryDTO dto, boolean flag);
} }
...@@ -105,20 +105,24 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM ...@@ -105,20 +105,24 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
list.forEach(item->{ list.forEach(item->{
if(!item.getRoomId().equals(dto.getRoomId()) if(!item.getRoomId().equals(dto.getRoomId())
|| (item.getRoomId().equals(dto.getRoomId()) && StringUtil.isEmpty(item.getBedId()))){ || (item.getRoomId().equals(dto.getRoomId()) && StringUtil.isNotEmpty(item.getBedId()))){
list1.add(item); list1.add(item);
} }
}); });
} }
List<String> listEquipmentIds = list.stream().map(item -> item.getDeviceId()).collect(Collectors.toList()); List<String> listEquipmentIds = list1.stream().map(item -> item.getDeviceId()).collect(Collectors.toList());
String orgId = ""; String orgId = "";
if (StringUtil.isNotEmpty(dto.getRoomId())) { if (StringUtil.isNotEmpty(dto.getRoomId())) {
PlatRoom platRoom = platRoomService.getById(dto.getRoomId()); PlatRoom platRoom = platRoomService.getById(dto.getRoomId());
PlatSpace platSpace = platSpaceService.getById(platRoom.getSpaceId()); if(platRoom != null){
orgId = platSpace.getOrgId(); PlatSpace platSpace = platSpaceService.getById(platRoom.getSpaceId());
if(platSpace != null){
orgId = platSpace.getOrgId();
}
}
} }
......
...@@ -9,6 +9,7 @@ import com.makeit.common.vo.ExcelErrorVo; ...@@ -9,6 +9,7 @@ import com.makeit.common.vo.ExcelErrorVo;
import com.makeit.common.vo.ExcelImportVo; import com.makeit.common.vo.ExcelImportVo;
import com.makeit.dto.platform.space.*; import com.makeit.dto.platform.space.*;
import com.makeit.entity.platform.auth.PlatOrg; import com.makeit.entity.platform.auth.PlatOrg;
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.PlatSpace; import com.makeit.entity.platform.space.PlatSpace;
...@@ -18,6 +19,7 @@ import com.makeit.enums.platform.space.PlatSpaceEnum; ...@@ -18,6 +19,7 @@ import com.makeit.enums.platform.space.PlatSpaceEnum;
import com.makeit.exception.BusinessException; import com.makeit.exception.BusinessException;
import com.makeit.mapper.platform.space.PlatSpaceMapper; import com.makeit.mapper.platform.space.PlatSpaceMapper;
import com.makeit.service.platform.auth.PlatOrgService; import com.makeit.service.platform.auth.PlatOrgService;
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.PlatRoomService; import com.makeit.service.platform.space.PlatRoomService;
import com.makeit.service.platform.space.PlatSpaceService; import com.makeit.service.platform.space.PlatSpaceService;
...@@ -53,6 +55,8 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace ...@@ -53,6 +55,8 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace
private PlatBedService platBedService; private PlatBedService platBedService;
@Autowired @Autowired
private PlatOrgService platOrgService; private PlatOrgService platOrgService;
@Autowired
private PlatElderService platElderService;
private void check(PlatSpaceAddDTO dto) { private void check(PlatSpaceAddDTO dto) {
LambdaQueryWrapper<PlatSpace> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PlatSpace> queryWrapper = new LambdaQueryWrapper<>();
...@@ -739,6 +743,87 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace ...@@ -739,6 +743,87 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace
} }
@Override
public List<PlatSpaceVO> listBedTreeByElderGroup(PlatSpaceQueryDTO dto, boolean flag) {
PlatElder platElder = platElderService.getById(dto.getElderId());
List<String> orgIds = new ArrayList<>();
orgIds.add("-1");
if(platElder != null){
orgIds.add(platElder.getOrgId());
}
//床位
LambdaQueryWrapper<PlatBed> queryWrapper1 = new LambdaQueryWrapper<>();
List<PlatBed> listBeds = platBedService.list(queryWrapper1);
if(flag){
PlatBed bed = null;
if(platElder != null && StringUtil.isNotEmpty(platElder.getBedId())){
bed = listBeds.stream().filter(item->item.getId().equals(platElder.getBedId())).collect(Collectors.toList()).get(0);
}
listBeds = listBeds.stream().filter(item->CommonEnum.YES.getValue().equals(item.getStatus())).collect(Collectors.toList());
if(bed != null){
listBeds.add(bed);
}
}
if(listBeds.isEmpty()){
return new ArrayList<>();
}
List<String> roomIds = listBeds.stream().map(PlatBed::getRoomId).collect(Collectors.toList());
List<PlatRoom> listRoom = platRoomService.list(new QueryWrapper<PlatRoom>().lambda()
.in(PlatRoom::getId, roomIds));
List<String> spaceIds = listRoom.stream().map(PlatRoom::getSpacePath).collect(Collectors.toList());
Set<String> spaceIdList = new HashSet<>();
for(String spaceId : spaceIds){
spaceIdList.addAll(Arrays.asList(spaceId.split(",")));
}
spaceIdList.add("-1");
List<PlatSpaceVO> listRoomVo = new ArrayList<>();
listRoom.forEach(item -> {
PlatSpaceVO vo = new PlatSpaceVO();
vo.setId(item.getId());
vo.setName(item.getName());
vo.setParentId(item.getSpaceId());
listRoomVo.add(vo);
});
listBeds.forEach(item -> {
PlatSpaceVO vo = new PlatSpaceVO();
vo.setId(item.getId());
vo.setName(item.getName());
vo.setParentId(item.getRoomId());
listRoomVo.add(vo);
});
LambdaQueryWrapper<PlatSpace> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.like(StringUtil.isNotEmpty(dto.getName()), PlatSpace::getName, dto.getName());
queryWrapper.in(PlatSpace::getId, spaceIdList);
queryWrapper.in(PlatSpace::getOrgId, orgIds);
List<PlatSpace> list = this.list(queryWrapper);
List<PlatSpaceVO> listSpaceVo = BeanDtoVoUtils.listVo(list, PlatSpaceVO.class);
listSpaceVo.addAll(listRoomVo);
//父级
List<PlatSpaceVO> listParent = listSpaceVo.stream().filter(item -> StringUtil.isEmpty(item.getParentId())).
collect(Collectors.toList());
//子集
List<PlatSpaceVO> listChild = listSpaceVo.stream().filter(item -> item.getParentId() != null).collect(Collectors.toList());
Map<String, List<PlatSpaceVO>> map = listChild.stream().collect(Collectors.groupingBy(PlatSpaceVO::getParentId));
List<PlatSpaceVO> data = new ArrayList<>();
for (PlatSpaceVO space : listParent) {
space = childVo(space, map);
data.add(space);
}
return data;
}
} }
......
...@@ -43,6 +43,7 @@ import com.makeit.utils.data.convert.PageUtil; ...@@ -43,6 +43,7 @@ import com.makeit.utils.data.convert.PageUtil;
import com.makeit.utils.data.convert.StreamUtil; import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.data.validate.CollectionUtils; import com.makeit.utils.data.validate.CollectionUtils;
import com.makeit.utils.sql.join.JoinUtil; import com.makeit.utils.sql.join.JoinUtil;
import com.makeit.utils.sys.FileUtil;
import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO; import com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO;
import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeNowVO; import com.makeit.vo.platform.elder.realtime.PlatElderRealTimeNowVO;
import com.makeit.vo.platform.workstation.*; import com.makeit.vo.platform.workstation.*;
...@@ -525,6 +526,10 @@ public class WorkStationServiceImpl implements WorkStationService { ...@@ -525,6 +526,10 @@ public class WorkStationServiceImpl implements WorkStationService {
e.setPathName(StreamUtil.join(l, Objects::nonNull, PlatSpace::getName, "-")); e.setPathName(StreamUtil.join(l, Objects::nonNull, PlatSpace::getName, "-"));
}); });
FileUtil.convert(list, WorkStationHomeBedVO::getAvatar, (e, f) -> {
e.setAvatarPath(f.getFullUrl());
});
for(WorkStationHomeBedVO vo : list){ for(WorkStationHomeBedVO vo : list){
vo.setPathName(vo.getPathName() + "-" + vo.getRoomName()); vo.setPathName(vo.getPathName() + "-" + vo.getRoomName());
if (StringUtil.isNotEmpty(vo.getElderId()) ) { if (StringUtil.isNotEmpty(vo.getElderId()) ) {
......
...@@ -434,7 +434,7 @@ public class PlatTenantServiceImpl extends ServiceImpl<PlatTenantMapper, PlatTen ...@@ -434,7 +434,7 @@ public class PlatTenantServiceImpl extends ServiceImpl<PlatTenantMapper, PlatTen
PlatTenant tntTenant = getOne( PlatTenant tntTenant = getOne(
new QueryWrapper<PlatTenant>().lambda() new QueryWrapper<PlatTenant>().lambda()
.eq(PlatTenant::getCode, dto.getCode()) .eq(PlatTenant::getCode, dto.getCode())
.ne(StringUtils.isNotBlank(dto.getId()), PlatTenant::getCode, dto.getCode()) .ne(StringUtils.isNotBlank(dto.getId()), PlatTenant::getId, dto.getId())
); );
if (tntTenant != null && !tntTenant.getId().equals(dto.getId())) { if (tntTenant != null && !tntTenant.getId().equals(dto.getId())) {
......
...@@ -59,5 +59,8 @@ public class PlatAlarmRecordVO extends BaseTenantDTO { ...@@ -59,5 +59,8 @@ public class PlatAlarmRecordVO extends BaseTenantDTO {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createDate; private LocalDateTime createDate;
@ApiModelProperty(value = "0-未读 1-已读")
private String readFlag;
} }
...@@ -68,9 +68,57 @@ public class PlatElderWechatSimpleVO extends BaseTenantDTO { ...@@ -68,9 +68,57 @@ public class PlatElderWechatSimpleVO extends BaseTenantDTO {
private String avatarPath; private String avatarPath;
@ApiModelProperty(value = "家庭地址详细") @ApiModelProperty(value = "家庭地址详细")
private String homeAddressDetail; private String homeAddressDetail;
@ApiModelProperty(value = "空间id")
private String spaceId;
@ApiModelProperty(value = "空间id")
private String spaceName;
@ApiModelProperty(value = "小区/社区/街道空间id")
private String streetSpaceId;
@ApiModelProperty(value = "小区/社区/街道空间名称")
private String streetSpaceName;
@ApiModelProperty(value = "楼栋空间id")
private String buildingSpaceId;
@ApiModelProperty(value = "楼栋空间名称")
private String buildingSpaceName;
@ApiModelProperty(value = "单元空间id")
private String unitSpaceId;
@ApiModelProperty(value = "单元空间名称")
private String unitSpaceName;
@ApiModelProperty(value = "楼层id")
private String floorSpaceId;
@ApiModelProperty(value = "楼层id")
private String floorSpaceName;
@ApiModelProperty(value = "房间id")
private String roomId;
@ApiModelProperty(value = "房间名称")
private String roomName;
@ApiModelProperty(value = "床位id")
private String bedId;
@ApiModelProperty(value = "床位名称")
private String bedName;
@ApiModelProperty(value = "空间-房间-床位路径")
private String spacePath;
@ApiModelProperty(value = "空间-房间-床位路径名称")
private String spacePathName;
} }
...@@ -7,10 +7,10 @@ ...@@ -7,10 +7,10 @@
<select id="getHealthConfigList" resultType="com.makeit.dto.platform.alarm.PlatHealthConfigDTO"> <select id="getHealthConfigList" resultType="com.makeit.dto.platform.alarm.PlatHealthConfigDTO">
select pehi.elder_id as platElderId, select pehi.elder_id as platElderId,
pehi.respiratory_rate as heartRateStr, pehi.respiratory_rate as breathRateStr,
pehi.respiratory_exception_time as heartDuration, pehi.respiratory_exception_time as breathDuration,
pehi.heart_rate as breathRateStr, pehi.heart_rate as heartRateStr,
pehi.heart_exception_time as breathDuration pehi.heart_exception_time as heartDuration
from plat_elder_health_info pehi from plat_elder_health_info pehi
left join plat_elder pe on pe.id = pehi.elder_id left join plat_elder pe on pe.id = pehi.elder_id
where pehi.del_flag = 0 where pehi.del_flag = 0
......
...@@ -165,7 +165,7 @@ ...@@ -165,7 +165,7 @@
<orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" /> <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:alibabacloud-gateway-spi:0.0.1" level="project" />
<orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" /> <orderEntry type="library" name="Maven: com.aliyun:openapiutil:0.1.14" level="project" />
<orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.5" level="project" /> <orderEntry type="library" name="Maven: com.huaweicloud:esdk-obs-java-bundle:3.23.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi:5.2.2" level="project" /> <orderEntry type="library" name="Maven: org.apache.poi:poi:5.2.2" level="project" />
......
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