Commit bee9903b by 汪志阳

fix:bug修复

parent d83017dd
......@@ -45,7 +45,7 @@ public class PlatAlarmRecordChildrenController {
@PostMapping("read")
@TenantIdIgnore
public ApiResponseEntity<Void> read(@RequestBody BaseIdDTO dto) {
platAlarmRecordService.read(dto.getId(), PlatformTypeEnum.PC);
platAlarmRecordService.read(dto.getId(), PlatformTypeEnum.WECHAT);
return ApiResponseUtils.success();
}
......
package com.makeit.service.platform.elder.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -11,7 +12,6 @@ import com.makeit.common.entity.BaseEntity;
import com.makeit.common.page.PageReqDTO;
import com.makeit.common.page.PageVO;
import com.makeit.dto.platform.auth.PlatOrgSplitDTO;
import com.makeit.dto.platform.elder.add.PlatElderDTOVO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoDTOVO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoQueryDTO;
import com.makeit.dto.platform.elder.children.PlatElderChildrenInfoWechatDTOVO;
......@@ -19,7 +19,6 @@ import com.makeit.entity.platform.auth.PlatOrg;
import com.makeit.entity.platform.elder.PlatElder;
import com.makeit.entity.platform.elder.PlatElderChildrenInfo;
import com.makeit.enums.CodeMessageEnum;
import com.makeit.enums.Const;
import com.makeit.exception.BusinessException;
import com.makeit.mapper.platform.elder.PlatElderChildrenInfoMapper;
import com.makeit.service.platform.auth.PlatOrgService;
......@@ -44,8 +43,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.function.Function;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
......@@ -253,7 +254,12 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild
@Override
public PlatElderChildrenInfoWechatVO view() {
return BeanDtoVoUtils.convert(getById(WechatUserUtil.getUserId()), PlatElderChildrenInfoWechatVO.class);
PlatElderChildrenInfoWechatVO wechatVO =
BeanDtoVoUtils.convert(getById(WechatUserUtil.getUserId()), PlatElderChildrenInfoWechatVO.class);
if (wechatVO != null && (StrUtil.isBlank(wechatVO.getName()) && StrUtil.isNotBlank(wechatVO.getPhone()))) {
wechatVO.setName(wechatVO.getPhone());
}
return wechatVO;
}
@Override
......@@ -313,11 +319,16 @@ public class PlatElderChildrenInfoServiceImpl extends ServiceImpl<PlatElderChild
if (platElder == null) {
throw new RuntimeException("找不到要绑定的长者");
}
// 优先同租户同组织下的长者,没有的话就同租户下的,再没有就拿初始的数据
PlatElderChildrenInfo platElderChildrenInfo = platElderChildrenInfoList.stream()
.filter(f -> f.getOrgId().equals(platElder.getOrgId())
|| f.getTenantId().equals(platElder.getTenantId())).findFirst().orElse(childrenInfo);
newChildrenInfo.setTenantId(platElder.getTenantId());
newChildrenInfo.setOpenid(childrenInfo.getOpenid());
newChildrenInfo.setPhone(childrenInfo.getPhone());
newChildrenInfo.setName(childrenInfo.getName());
newChildrenInfo.setAvatar(childrenInfo.getAvatar());
newChildrenInfo.setOpenid(platElderChildrenInfo.getOpenid());
newChildrenInfo.setPhone(platElderChildrenInfo.getPhone());
newChildrenInfo.setName(platElderChildrenInfo.getName());
newChildrenInfo.setAvatar(platElderChildrenInfo.getAvatar());
PlatOrgSplitDTO vo = platOrgService.getOrgSplitVO(platElder.getOrgId());
......
......@@ -401,17 +401,17 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
return vo;
});
JoinUtil.join(list, platSpaceService, Arrays.asList(
PlatElderExportVO::getStreetSpaceId,
PlatElderExportVO::getBuildingSpaceId,
PlatElderExportVO::getUnitSpaceId,
PlatElderExportVO::getFloorSpaceId
), PlatSpace::getId, Arrays.asList(
(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(list, platSpaceService, Arrays.asList(
// PlatElderExportVO::getStreetSpaceId,
// PlatElderExportVO::getBuildingSpaceId,
// PlatElderExportVO::getUnitSpaceId,
// PlatElderExportVO::getFloorSpaceId
// ), PlatSpace::getId, Arrays.asList(
// (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(list, platRoomService, PlatElderExportVO::getRoomId, PlatRoom::getId, (e, l) -> {
e.setRoomName(l.getName());
......@@ -431,12 +431,27 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
return;
}
Map<String, PlatElder> platElderMap = StreamUtil.toMap(dbList, PlatElder::getId);
// List<String> spacePathList = dbList.stream().map(PlatElder::getSpacePath)
// .filter(StrUtil::isNotBlank).collect(Collectors.toList());
// if (CollUtil.isNotEmpty(spacePathList)) {
// spacePathList.stream().
// }
Set<String> placeList = new HashSet<>();
for (PlatElder platElder : dbList) {
if (StrUtil.isBlank(platElder.getSpacePath())) {
continue;
}
List<String> pathList = new ArrayList<>(Arrays.asList(platElder.getSpacePath().split(",")));
if (StrUtil.isNotBlank(platElder.getRoomId())) {
pathList.remove(platElder.getRoomId());
}
if (StrUtil.isNotBlank(platElder.getBedId())) {
pathList.remove(platElder.getBedId());
}
CollUtil.addAll(placeList, pathList);
}
Map<String, String> spaceMap = new HashMap<>();
if (CollUtil.isNotEmpty(placeList)) {
spaceMap = platSpaceService.listByIds(placeList).stream()
.collect(Collectors.toMap(PlatSpace::getId, PlatSpace::getName));
}
Map<String, String> finalSpaceMap = spaceMap;
list.forEach(e -> {
PlatElder platElder = platElderMap.get(e.getId());
if (platElder == null) {
......@@ -448,28 +463,38 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
e.setBuildingSpaceName(null);
e.setUnitSpaceName(null);
e.setFloorSpaceName(null);
e.setRoomName(null);
e.setBedName(null);
return;
}
List<String> pathList = Arrays.asList(spacePath.split(","));
if (!pathList.contains(e.getStreetSpaceId())) {
e.setStreetSpaceName(null);
List<String> pathList = new ArrayList<>(Arrays.asList(spacePath.split(",")));
if (StrUtil.isNotBlank(platElder.getRoomId())) {
pathList.remove(platElder.getRoomId());
}
if (!pathList.contains(e.getBuildingSpaceId())) {
e.setBuildingSpaceName(null);
if (StrUtil.isNotBlank(platElder.getBedId())) {
pathList.remove(platElder.getBedId());
}
if (!pathList.contains(e.getUnitSpaceId())) {
e.setUnitSpaceName(null);
if (pathList.size() >= 4) {
e.setStreetSpaceName(finalSpaceMap.get(pathList.get(0)));
e.setBuildingSpaceName(finalSpaceMap.get(pathList.get(1)));
e.setUnitSpaceName(finalSpaceMap.get(pathList.get(2)));
e.setFloorSpaceName(finalSpaceMap.get(pathList.get(3)));
}
if (!pathList.contains(e.getFloorSpaceId())) {
if (pathList.size() == 3) {
e.setStreetSpaceName(finalSpaceMap.get(pathList.get(0)));
e.setBuildingSpaceName(finalSpaceMap.get(pathList.get(1)));
e.setUnitSpaceName(finalSpaceMap.get(pathList.get(2)));
e.setFloorSpaceName(null);
}
if (!pathList.contains(e.getRoomId())) {
e.setRoomName(null);
if (pathList.size() == 2) {
e.setStreetSpaceName(finalSpaceMap.get(pathList.get(0)));
e.setBuildingSpaceName(finalSpaceMap.get(pathList.get(1)));
e.setUnitSpaceName(null);
e.setFloorSpaceName(null);
}
if (!pathList.contains(e.getBedId())) {
e.setBedName(null);
if (pathList.size() == 1) {
e.setStreetSpaceName(finalSpaceMap.get(pathList.get(0)));
e.setBuildingSpaceName(null);
e.setUnitSpaceName(null);
e.setFloorSpaceName(null);
}
});
}
......
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