Commit 7909a6df by 李小龙

通知家属

parent 72b10a61
package com.makeit.utils.msg;
import com.makeit.utils.msg.dto.MsgSendDTO;
import org.springframework.stereotype.Component;
import java.util.Collection;
......@@ -8,7 +9,7 @@ import java.util.Collection;
public class MsgSendUtil {
/**
* 发送消息并保存记录
* 发送消息
*/
public void send(SendTypeEnum sendTypeEnum, Collection<String> receiverList, String content){
switch (sendTypeEnum){
......@@ -22,6 +23,28 @@ public class MsgSendUtil {
break;
case YUNLING:
break;
case CHILD_WECHAT:
break;
}
}
/**
* 发送消息
*/
public void send(MsgSendDTO msgSendDTO){
switch (msgSendDTO.getSendTypeEnum()){
case SMS:
break;
case MAIL:
break;
case VOICE_SMS:
break;
case JINGQI:
break;
case YUNLING:
break;
case CHILD_WECHAT:
break;
}
}
}
package com.makeit.utils.msg.dto;
import com.makeit.utils.msg.SendTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import java.util.List;
import java.util.Collection;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
......@@ -14,11 +15,13 @@ import java.util.regex.Pattern;
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class MsgDTO {
public class MsgSendDTO {
private SendTypeEnum sendTypeEnum;
private String subject;
private List<String> receiverList;
private Collection<String> receiverList;
private String oriContent;
......
package com.makeit.utils.msg.sender;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.dto.MsgSendDTO;
public interface IMsgSender {
......@@ -8,5 +8,5 @@ public interface IMsgSender {
* 发送消息
* @param msgData 消息数据
*/
void send(MsgDTO msgDTO);
void send(MsgSendDTO msgDTO);
}
package com.makeit.utils.msg.sender;
import com.makeit.exception.BusinessException;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.dto.MsgSendDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -25,7 +25,7 @@ public class MailMsgSender implements IMsgSender {
@Override
public void send(MsgDTO msgDTO) {
public void send(MsgSendDTO msgDTO) {
try {
MimeMessage message = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);
......
......@@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.makeit.exception.BusinessException;
import com.makeit.utils.msg.config.SmsConfig;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.dto.MsgSendDTO;
import com.makeit.utils.old.encode.CryptoUtil;
import com.makeit.utils.third.HttpClient;
import org.apache.commons.lang3.StringUtils;
......@@ -13,9 +13,9 @@ import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Component;
import java.net.URLEncoder;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
@Component
......@@ -30,11 +30,11 @@ public class SmsMsgSender implements IMsgSender{
* @param msgDTO
*/
@Override
public void send(MsgDTO msgDTO) {
public void send(MsgSendDTO msgDTO) {
try {
Date now = new Date();
String time = String.valueOf(now.getTime());
List<String> receiverList = msgDTO.getReceiverList();
Collection<String> receiverList = msgDTO.getReceiverList();
String receiverJoin = receiverList.stream().collect(Collectors.joining(","));
HashMap<String, String> paramMap = new HashMap<>();
paramMap.put("uid", smsConfig.getUid());
......
......@@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.makeit.exception.BusinessException;
import com.makeit.utils.msg.config.SmsVoiceConfig;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.dto.MsgSendDTO;
import com.makeit.utils.old.encode.CryptoUtil;
import com.makeit.utils.third.HttpClient;
import org.apache.commons.lang3.StringUtils;
......@@ -13,6 +13,7 @@ import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Component;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
......@@ -31,11 +32,11 @@ public class SmsVoiceSender implements IMsgSender{
* @param msgDTO
*/
@Override
public void send(MsgDTO msgDTO) {
public void send(MsgSendDTO msgDTO) {
try {
Date now = new Date();
String time = String.valueOf(now.getTime());
List<String> receiverList = msgDTO.getReceiverList();
Collection<String> receiverList = msgDTO.getReceiverList();
String receiverJoin = receiverList.stream().collect(Collectors.joining(","));
HashMap<String, String> paramMap = new HashMap<>();
paramMap.put("uid", smsVoiceConfig.getUid());
......
......@@ -7,12 +7,7 @@ import com.makeit.common.page.PageVO;
import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.dto.platform.alarm.PlatAlarmRecordQueryDTO;
import com.makeit.global.annotation.AuthIgnore;
import com.makeit.service.platform.alarm.PlatAlarmRecordService;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.sender.MailMsgSender;
import com.makeit.utils.msg.sender.SmsMsgSender;
import com.makeit.utils.msg.sender.SmsVoiceSender;
import com.makeit.vo.platform.alarm.PlatAlarmRecordVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -22,8 +17,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
@Api(tags = "告警记录")
@RestController
@RequestMapping("/plat/alarm-record")
......@@ -55,43 +48,43 @@ public class PlatAlarmRecordController {
return ApiResponseUtils.success();
}
@Autowired
private MailMsgSender mailMsgSender;
@Autowired
private SmsMsgSender smsMsgSender;
@Autowired
private SmsVoiceSender smsVoiceSender;
@ApiOperation("测试邮箱")
@PostMapping("testMail")
public ApiResponseEntity<Void> testMail(@RequestBody BaseIdDTO dto) {
MsgDTO msgDTO = new MsgDTO();
msgDTO.setSubject("测试消息");
msgDTO.setReceiverList(Collections.singletonList("994997968@qq.com"));
msgDTO.setOriContent("测试发送邮箱");
mailMsgSender.send(msgDTO);
return ApiResponseUtils.success();
}
@ApiOperation("测试短信")
@PostMapping("testMsg")
public ApiResponseEntity<Void> testMsg(@RequestBody BaseIdDTO dto) throws Exception {
MsgDTO msgDTO = new MsgDTO();
msgDTO.setReceiverList(Collections.singletonList("18850503603"));
msgDTO.setOriContent("测试短信test");
smsMsgSender.send(msgDTO);
return ApiResponseUtils.success();
}
@ApiOperation("测试语音短信")
@PostMapping("testVoice")
@AuthIgnore
public ApiResponseEntity<Void> testVoice(@RequestBody BaseIdDTO dto) throws Exception {
MsgDTO msgDTO = new MsgDTO();
msgDTO.setReceiverList(Collections.singletonList("18850503603"));
msgDTO.setOriContent("测试短信test");
smsVoiceSender.send(msgDTO);
return ApiResponseUtils.success();
}
// @Autowired
// private MailMsgSender mailMsgSender;
// @Autowired
// private SmsMsgSender smsMsgSender;
// @Autowired
// private SmsVoiceSender smsVoiceSender;
//
// @ApiOperation("测试邮箱")
// @PostMapping("testMail")
// public ApiResponseEntity<Void> testMail(@RequestBody BaseIdDTO dto) {
// MsgSendDTO msgDTO = new MsgSendDTO();
// msgDTO.setSubject("测试消息");
// msgDTO.setReceiverList(Collections.singletonList("994997968@qq.com"));
// msgDTO.setOriContent("测试发送邮箱");
// mailMsgSender.send(msgDTO);
// return ApiResponseUtils.success();
// }
//
// @ApiOperation("测试短信")
// @PostMapping("testMsg")
// public ApiResponseEntity<Void> testMsg(@RequestBody BaseIdDTO dto) throws Exception {
// MsgSendDTO msgDTO = new MsgSendDTO();
// msgDTO.setReceiverList(Collections.singletonList("18850503603"));
// msgDTO.setOriContent("测试短信test");
// smsMsgSender.send(msgDTO);
// return ApiResponseUtils.success();
// }
//
// @ApiOperation("测试语音短信")
// @PostMapping("testVoice")
// @AuthIgnore
// public ApiResponseEntity<Void> testVoice(@RequestBody BaseIdDTO dto) throws Exception {
// MsgSendDTO msgDTO = new MsgSendDTO();
// msgDTO.setReceiverList(Collections.singletonList("18850503603"));
// msgDTO.setOriContent("测试短信test");
// smsVoiceSender.send(msgDTO);
// return ApiResponseUtils.success();
// }
}
......@@ -28,8 +28,8 @@ public class ChildrenAlarmRecordController {
@ApiOperation("列表")
@PostMapping("page")
public ApiResponseEntity<PageVO<PlatAlarmRecordVO>> page(@RequestBody PageReqDTO<PlatAlarmRecordQueryDTO> dto) {
//todo 只能看到发给关联的长者告警
return ApiResponseUtils.success(platAlarmRecordService.page(dto));
//只能看到发给关联的长者告警
return ApiResponseUtils.success(platAlarmRecordService.childrenPage(dto));
}
@ApiOperation("查看")
@PostMapping("view")
......
......@@ -8,8 +8,6 @@ import com.makeit.common.response.ApiResponseEntity;
import com.makeit.common.response.ApiResponseUtils;
import com.makeit.dto.platform.alarm.PlatAlarmRecordQueryDTO;
import com.makeit.service.platform.alarm.PlatAlarmRecordService;
import com.makeit.utils.msg.dto.MsgDTO;
import com.makeit.utils.msg.sender.MailMsgSender;
import com.makeit.utils.user.wechat.WechatUserUtil;
import com.makeit.vo.platform.alarm.PlatAlarmRecordVO;
import io.swagger.annotations.Api;
......@@ -20,8 +18,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
@Api(tags = "小程序-告警记录")
@RestController
@RequestMapping("/wechat/plat/alarm-record")
......@@ -56,19 +52,5 @@ public class WechatPlatAlarmRecordController {
platAlarmRecordService.noticeRelation(dto.getId());
return ApiResponseUtils.success();
}
@Autowired
private MailMsgSender mailMsgSender;
@ApiOperation("测试消息")
@PostMapping("testMsg")
public ApiResponseEntity<Void> testMsg(@RequestBody BaseIdDTO dto) {
MsgDTO msgDTO = new MsgDTO();
msgDTO.setSubject("测试消息");
msgDTO.setReceiverList(Collections.singletonList("994997968@qq.com"));
msgDTO.setOriContent("测试发送邮箱");
mailMsgSender.send(msgDTO);
return ApiResponseUtils.success();
}
}
......@@ -9,6 +9,7 @@ import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
/**
* <p>
......@@ -54,6 +55,9 @@ public class PlatAlarmRecordQueryDTO extends BaseTenantDTO {
//告警接收人id
private String notifyUser;
//子女关联的老人id
private List<String> elderIdList;
}
......@@ -16,6 +16,13 @@ public interface PlatAlarmRecordService extends IService<PlatAlarmRecord> {
PageVO<PlatAlarmRecordVO> page(PageReqDTO<PlatAlarmRecordQueryDTO> dto);
/**
* 子女端告警列表
* @param dto
* @return
*/
PageVO<PlatAlarmRecordVO> childrenPage(PageReqDTO<PlatAlarmRecordQueryDTO> dto);
PlatAlarmRecordVO view(String recordId);
void deal(String recordId);
......
......@@ -9,25 +9,23 @@ import com.makeit.common.page.PageVO;
import com.makeit.dto.platform.alarm.PlatAlarmRecordQueryDTO;
import com.makeit.entity.platform.alarm.PlatAlarmConfig;
import com.makeit.entity.platform.alarm.PlatAlarmRecord;
import com.makeit.entity.platform.elder.PlatElder;
import com.makeit.entity.platform.elder.PlatElderSocialRelation;
import com.makeit.entity.platform.space.PlatRoomBedDevice;
import com.makeit.enums.CodeMessageEnum;
import com.makeit.entity.platform.elder.PlatElderChildrenInfo;
import com.makeit.enums.CommonEnum;
import com.makeit.exception.BusinessException;
import com.makeit.mapper.platform.alarm.PlatAlarmRecordMapper;
import com.makeit.service.platform.alarm.PlatAlarmConfigService;
import com.makeit.service.platform.alarm.PlatAlarmRecordService;
import com.makeit.service.platform.elder.PlatElderService;
import com.makeit.service.platform.elder.PlatElderSocialRelationService;
import com.makeit.service.platform.space.PlatRoomBedDeviceService;
import com.makeit.service.platform.elder.PlatElderChildrenInfoService;
import com.makeit.utils.data.convert.BeanDtoVoUtils;
import com.makeit.utils.data.convert.PageUtil;
import com.makeit.utils.msg.MsgSendUtil;
import com.makeit.utils.msg.SendTypeEnum;
import com.makeit.utils.msg.dto.MsgSendDTO;
import com.makeit.utils.sql.join.JoinUtil;
import com.makeit.utils.user.common.CommonUserUtil;
import com.makeit.utils.user.common.CommonUserVO;
import com.makeit.utils.user.wechat.WechatUserInfo;
import com.makeit.utils.user.wechat.WechatUserUtil;
import com.makeit.vo.platform.alarm.PlatAlarmRecordVO;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -36,12 +34,12 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* @author lixl
......@@ -53,12 +51,9 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
implements PlatAlarmRecordService {
@Autowired
private PlatAlarmConfigService platAlarmConfigService;
@Autowired
private PlatRoomBedDeviceService platRoomBedDeviceService;
@Autowired
private PlatElderService platElderService;
@Autowired
private PlatElderSocialRelationService platElderSocialRelationService;
private PlatElderChildrenInfoService platElderChildrenInfoService;
@Autowired
private MsgSendUtil msgUtil;
......@@ -79,6 +74,25 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
return PageUtil.toPageVO(dtos, page);
}
/**
* 子女端告警列表
*
* @param dto
* @return
*/
@Override
public PageVO<PlatAlarmRecordVO> childrenPage(PageReqDTO<PlatAlarmRecordQueryDTO> dto) {
WechatUserInfo userVO = WechatUserUtil.getUserVO();
String elderId = userVO.getElderId();
if (StringUtils.isBlank(elderId)) {
return new PageVO<>();
}
String[] split = elderId.split(",");
PlatAlarmRecordQueryDTO data = dto.getData();
data.setElderIdList(Arrays.asList(split));
return page(dto);
}
private LambdaQueryWrapper<PlatAlarmRecord> getLambdaQueryWrapper(PlatAlarmRecordQueryDTO param) {
return new LambdaQueryWrapper<PlatAlarmRecord>().ge(Objects.nonNull(param.getCreateDateFrom()), BaseEntity::getCreateDate, param.getCreateDateFrom())
.le(Objects.nonNull(param.getCreateDateTo()), BaseEntity::getCreateDate, param.getCreateDateTo())
......@@ -89,6 +103,12 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
.le(Objects.nonNull(param.getDealDateTo()), PlatAlarmRecord::getDealDate, param.getDealDateTo())
.eq(StringUtils.isNotBlank(param.getOrgId()), PlatAlarmRecord::getOrgId, param.getOrgId())
.apply(StringUtils.isNotBlank(param.getNotifyUser()), "find_in_set('" + param.getNotifyUser() + "',notify_user)")
.and(CollectionUtils.isNotEmpty(param.getElderIdList()), qw -> {
List<String> elderIdList = param.getElderIdList();
for (String elderId : elderIdList) {
qw.or().apply("find_in_set('" + elderId + "',elder_ids)");
}
})
.orderByDesc(BaseEntity::getCreateDate)
;
}
......@@ -117,44 +137,52 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
@Override
@Transactional
public void noticeRelation(String recordId) {
//todo
PlatAlarmRecord platAlarmRecord = this.getById(recordId);
PlatAlarmConfig platAlarmConfig = platAlarmConfigService.getById(platAlarmRecord.getAlarmId());
String deviceId = platAlarmRecord.getDeviceId();
LambdaQueryWrapper<PlatRoomBedDevice> roomBedDeviceLambdaQueryWrapper = new LambdaQueryWrapper<PlatRoomBedDevice>()
.eq(PlatRoomBedDevice::getEquipmentId, deviceId).orderByDesc(BaseEntity::getUpdateDate);
PlatRoomBedDevice platRoomBedDevice = platRoomBedDeviceService.getOne(roomBedDeviceLambdaQueryWrapper, false);
//绑定房间的设备要通知 全部长者的家属
//绑定床位的设备要通知对应的长者的家属
if (platRoomBedDevice == null) {
throw new BusinessException(CodeMessageEnum.PLATFORM_ERROR_ALARM_NOT_FOUND_SPACE);
String elderIds = platAlarmRecord.getElderIds();
if (StringUtils.isBlank(elderIds)) {
throw new BusinessException("设备没绑定长者");
}
String bedId = platRoomBedDevice.getBedId();
String roomId = platRoomBedDevice.getRoomId();
LambdaQueryWrapper<PlatElder> elderLambdaQueryWrapper = new LambdaQueryWrapper<PlatElder>().eq(StringUtils.isNotBlank(bedId), PlatElder::getBedId, bedId)
.eq(PlatElder::getRoomId, roomId);
List<PlatElder> elderList = platElderService.list(elderLambdaQueryWrapper);
if (CollectionUtils.isEmpty(elderList)) {
throw new BusinessException(CodeMessageEnum.PLATFORM_ERROR_ALARM_NOT_FOUND_ELDER);
List<PlatElderChildrenInfo> allChildInfoList = new ArrayList<>();
String[] elderIdSplit = elderIds.split(",");
//通知每个长者的子女
for (String elderId : elderIdSplit) {
LambdaQueryWrapper<PlatElderChildrenInfo> childrenInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
childrenInfoLambdaQueryWrapper.and(qw -> {
qw.apply("find_in_set('" + elderId + "',elder_id)");
});
List<PlatElderChildrenInfo> childrenInfoList = platElderChildrenInfoService.list(childrenInfoLambdaQueryWrapper);
if (CollectionUtils.isEmpty(childrenInfoList)) {
log.debug("子女端账号未绑定长者");
continue;
}
Set<String> elderIdSet = elderList.stream().map(BaseEntity::getId).collect(Collectors.toSet());
List<PlatElderSocialRelation> relations = platElderSocialRelationService.list(new LambdaQueryWrapper<PlatElderSocialRelation>().in(PlatElderSocialRelation::getElderId, elderIdSet));
Set<String> phoneList = relations.stream().map(PlatElderSocialRelation::getPhone).collect(Collectors.toSet());
allChildInfoList.addAll(childrenInfoList);
Set<String> phoneSet = childrenInfoList.stream().map(PlatElderChildrenInfo::getPhone).collect(Collectors.toSet());
String notifyChannel = platAlarmConfig.getNotifyChannel();
String[] split = notifyChannel.split(",");
List<String> notifyChannelList = Arrays.asList(SendTypeEnum.SMS.getValue(), SendTypeEnum.VOICE_SMS.getValue(), SendTypeEnum.CHILD_WECHAT.getValue());
Set<String> sendTypeList = Stream.of(split).filter(vo -> notifyChannelList.contains(vo)).collect(Collectors.toSet());
for (String sendType : sendTypeList) {
//告警配置和租户告警 字典一致
List<SendTypeEnum> notifyChannelList = Arrays.asList(SendTypeEnum.SMS, SendTypeEnum.VOICE_SMS, SendTypeEnum.CHILD_WECHAT);
for (String sendType : split) {
SendTypeEnum sendTypeEnum = SendTypeEnum.getByValue(sendType);
msgUtil.send(sendTypeEnum, phoneList, platAlarmRecord.getContent());
boolean contains = notifyChannelList.contains(sendTypeEnum);
if (contains) {
MsgSendDTO msgSendDTO = new MsgSendDTO();
msgSendDTO.setSendTypeEnum(sendTypeEnum);
msgSendDTO.setReceiverList(phoneSet);
msgSendDTO.setOriContent(platAlarmRecord.getContent());
//todo 小程序消息
msgUtil.send(msgSendDTO);
}
}
}
String childIdJoin = allChildInfoList.stream().map(BaseEntity::getId).collect(Collectors.joining(","));
//通知的子女
platAlarmConfig.setNotifyRelation(childIdJoin);
platAlarmRecord.setNoticeStatus(CommonEnum.YES.getValue());
updateById(platAlarmRecord);
}
}
package com.makeit.service.platform.auth;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.makeit.entity.platform.auth.PlatOrg;
import com.makeit.utils.data.convert.StreamUtil;
import com.makeit.utils.sql.join.JoinUtil;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
import java.util.function.BiConsumer;
import java.util.function.Function;
@Component
public class DeptUtil {
private static PlatUserService platUserService;
private static PlatOrgService platOrgService;
public static PlatOrg getById(String deptId) {
return platOrgService.getById(deptId);
}
public static List<PlatOrg> getHotelList() {
List<PlatOrg> deptList = platOrgService.list(new QueryWrapper<PlatOrg>().lambda()
//.eq(PlatOrg::getTag, DeptEnum.DeptTagEnum.HOTEL.getValue())
//.eq(TntDept::getStatus, CommonEnum.YES.getValue())
);
return deptList;
}
//涉及角色
// public static List<PlatOrg> getDeptList(String deptId) {//集团 品牌 酒店 部门 上级和下级
// PlatOrgQueryDTO tntDeptQueryDTO = new PlatOrgQueryDTO();
//
// tntDeptQueryDTO.setDeptId(deptId);
//
// return tntDeptService.list(tntDeptQueryDTO);
// }
//涉及角色
// public static List<PlatOrg> getDeptList(String deptId, String fromHotel) {//集团 品牌 酒店 部门 上级和下级
// PlatOrgQueryDTO tntDeptQueryDTO = new PlatOrgQueryDTO();
//
// tntDeptQueryDTO.setDeptId(deptId);
// tntDeptQueryDTO.setFromHotel(fromHotel);
//
// return tntDeptService.list(tntDeptQueryDTO);
// }
//涉及角色
// public static List<String> getDeptIdList(String deptId) {//集团 品牌 酒店 部门 上级和下级
// List<String> idList = StreamUtil.map(getDeptList(deptId), PlatOrg::getId);
// idList.add(-1 + "");
// return idList;
// }
//涉及角色
// public static List<String> getDeptCantTapIdList(String deptId, String fromHotel) { //集团 品牌 酒店 部门 上级和下级 可点击的
// List<String> idList = getDeptList(deptId, fromHotel).stream()//.filter(e -> CommonEnum.YES.getValue().equals(e.getCanTap()))
// .map(PlatOrg::getId).collect(Collectors.toList());
// idList.add(-1 + "");
// return idList;
// }
//涉及角色
// public static List<PlatOrg> getDeptSelfAndChildren(String deptId) {//集团 品牌 酒店 上级和下级
// return tntUserService.getDeptSelfAndChildren(deptId);
// }
//涉及角色
// public static List<String> getDeptSelfAndChildrenIdList(String deptId) {//集团 品牌 酒店 上级和下级
// List<String> idList = StreamUtil.map(tntUserService.getDeptSelfAndChildren(deptId), PlatOrg::getId);
// idList.add(-1 + "");
// return idList;
// }
//not ywc
// public static List<TntDept> getDeptSelfAndChildren(String deptName, List<TntDept> selfAndChildren) {
// return getDeptSelfAndChildrenByDeptNameList(Arrays.asList(deptName), selfAndChildren);
// }
// public static List<PlatOrg> getDeptSelfAndChildrenByDeptNameList(List<String> deptNames, Map<String, PlatOrg> selfAndChildren) {
// return tntUserService.getDeptSelfAndChildrenByDeptName(deptNames, selfAndChildren);
// }
//涉及角色
// public static List<PlatOrg> getDeptSelfAndChildrenCanTap(String deptId) {//集团 品牌 酒店 上级和下级 可点击的
// return tntUserService.getDeptSelfAndChildrenCanTap(deptId);
// }
//涉及角色
// public static List<String> getDeptSelfAndChildrenCanTapIdList(String deptId) {//集团 品牌 酒店 上级和下级 可点击的
// List<String> idList = StreamUtil.map(tntUserService.getDeptSelfAndChildrenCanTap(deptId), PlatOrg::getId);
// idList.add(-1 + "");
// return idList;
// }
// //涉及角色
// public static List<String> getDeptSelfAndChildrenCanTapIdListFilterName(String deptId, String name) {//集团 品牌 酒店 上级和下级 可点击的
// List<PlatOrg> deptList = tntUserService.getDeptSelfAndChildrenCanTap(deptId);
// PlatOrgQueryDTO queryDTO = new PlatOrgQueryDTO();
// queryDTO.setName(name);
// deptList = filter(deptList, queryDTO);
// List<String> idList = StreamUtil.map(deptList, PlatOrg::getId);
// idList.add(-1 + "");
// return idList;
// }
// //涉及角色
// public static List<PlatOrg> getHotelList(String deptId) {//酒店那一级
// // 也能点击?
//
// return tntUserService.getHotelList(deptId);
// }
// //涉及角色
// public static List<String> getHotelIdList(String deptId) {//酒店那一级
// // 也能点击?
//
// List<String> deptIdList = StreamUtil.map(tntUserService.getHotelList(deptId), PlatOrg::getId);
// deptIdList.add(-1 + "");
// return deptIdList;
// }
//不涉及角色
// public static List<PlatOrg> filter(List<PlatOrg> deptList, PlatOrgQueryDTO dto) {
// return tntDeptService.filter(deptList, dto);
// }
//
// //不涉及角色
// public static List<PlatOrg> findSelfAndAllParent(String deptId) {
// return tntDeptService.findSelfAndAllParent(deptId);
// }
//
// //不涉及角色
// public static Map<String, List<PlatOrg>> findSelfAndAllParent(List<String> deptIdList) {
// return tntDeptService.findSelfAndAllParent(deptIdList);
// }
//不涉及角色
public static List<String> findSelfAndAllChildrenIdList(String deptId) {
List<String> idList = StreamUtil.map(platOrgService.findSelfAndAllChildren(deptId), PlatOrg::getId);
idList.add(-1 + "");
return idList;
}
// public static PlatOrg getHotel(String deptId) {
// List<PlatOrg> deptList = DeptUtil.findSelfAndAllParent(deptId);
// PlatOrg hotel = null;
// for (PlatOrg d : deptList) {
//// if (DeptEnum.DeptTagEnum.HOTEL.getValue().equals(d.getTag())) {
//// hotel = d;
//// break;
//// }
// }
//
// return hotel;
// }
//不涉及角色
// public static <T> void fillDept(List<T> list, Function<T, String> getDeptId, BiConsumer<T, String> fillDeptName) {
// List<String> deptIdList = StreamUtil.map(list, getDeptId);
// deptIdList.add(-1 + "");
// Map<String, List<PlatOrg>> deptMap = DeptUtil.findSelfAndAllParent(deptIdList);
// list.forEach(e -> {
// MapUtil.setIfPresent(deptMap, getDeptId.apply(e), l -> {
// fillDeptName.accept(e, l.stream().map(PlatOrg::getName).collect(Collectors.joining("-")));
// });
// });
// }
public static <T> void join(List<T> list, Function<T, String> getNid, BiConsumer<T, PlatOrg> consumer) {
JoinUtil.join(list, platOrgService, null, getNid, PlatOrg::getId, consumer);
}
public static String getDeptName(List<String> applyDeptIds, Map<String, String> deptMap) {
if (CollectionUtils.isEmpty(applyDeptIds) || MapUtils.isEmpty(deptMap)) {
return "";
}
StringBuilder sb = new StringBuilder();
for (String applyDeptId : applyDeptIds) {
String dept = deptMap.get(applyDeptId);
if (ObjectUtils.isNotEmpty(dept)) {
sb.append(dept + ",");
}
}
if (sb.length() > 0) {
return sb.deleteCharAt(sb.length() - 1).toString();
}
return "";
}
// @Autowired
// public void setTntUserService(TntUserService tntUserService) {
// DeptUtil.tntUserService = tntUserService;
// }
//
// @Autowired
// public void setTntDeptService(TntDeptService tntDeptService) {
// DeptUtil.tntDeptService = tntDeptService;
// }
}
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