提交 8c94e4cb authored 作者: 杨凯's avatar 杨凯

feat:家庭医生初始化

上级 49091521
......@@ -21,6 +21,9 @@ public class SendImMsgDTO {
@ApiModelProperty(value = "医院编码")
private Long organId;
@ApiModelProperty(value = "签约编号")
private String oldAdmId;
@ApiModelProperty(value = "签约编号")
private String admId;
}
......@@ -29,5 +29,5 @@ public interface ImChatTemplate {
void doctorPrompted(String admId);
Boolean sendMsg(List<Components> componentsList, String admId);
Boolean sendMsg(List<Components> componentsList, String oldAdmId, String admId);
}
......@@ -142,20 +142,23 @@ public class ImChatTemplateImpl implements ImChatTemplate {
}
@Override
public Boolean sendMsg(List<Components> componentsList, String admId) {
public Boolean sendMsg(List<Components> componentsList, String oldAdmId, String admId) {
Boolean flag = false;
if (!componentsList.isEmpty()) {
log.info("componentsList={}",componentsList);
log.info("componentsList={}", componentsList);
for (int i = 0; i <= componentsList.size(); i++) {
String content = componentsList.get(i).getContent();
List<MessageInfo> messageInfos = new ArrayList<>();
PatientSignInfo patientSignInfo = getPatientSignInfo(admId);
MessageInfo messageInfo = new MessageInfo();
if (SenderEnum.DOCTOR.getDesc().equals(componentsList.get(i).getSender())) {
content = MessageFormat.format(content, patientSignInfo.getDoctorName());
if (!StringUtils.isEmpty(oldAdmId)) {
PatientSignInfo oldPatientSignInfo = getPatientSignInfo(oldAdmId);
content = MessageFormat.format(content, oldPatientSignInfo.getDoctorName(), patientSignInfo.getDoctorName());
}
if (SenderEnum.DOCTOR.getDesc().equals(componentsList.get(i).getSender())) {
messageInfo = getDoctorInformRefreshPatientParam(patientSignInfo, IMInformConstants.REFRESH);
} else {
content = MessageFormat.format(content, patientSignInfo.getPatientName());
messageInfo = getInformRefreshPatientParam(patientSignInfo, IMInformConstants.REFRESH);
}
messageInfos.add(messageInfo);
......
......@@ -48,7 +48,7 @@ public class ImMsgTemplateServiceImpl implements ImMsgTemplateService {
String components = imMsgTemplateEntity.getContent();
MsgContent msgContent = JSON.parseObject(components, MsgContent.class);
List<Components> componentsList = msgContent.getComponents().stream().sorted(Comparator.comparing(Components::getSort)).collect(Collectors.toList());
Boolean flag = imChatTemplate.sendMsg(componentsList, reqVo.getAdmId());
Boolean flag = imChatTemplate.sendMsg(componentsList, reqVo.getOldAdmId(), reqVo.getAdmId());
if (!flag) {
throw new BusinessException("消息推送失败");
}
......
......@@ -140,6 +140,22 @@ public class PatientServiceImpl implements PatientService {
notifyConsultDataDTO.setOrderDate(DateUtils.dateToFullString(patientSignEntity.getCreateTime()));
thirdOrderPushUtil.syncBenefitUsedOrder(notifyConsultDataDTO);
} else {
QueryWrapper<PatientSignEntity> psWrapper = new QueryWrapper<>();
PatientSignEntity patientSign = new PatientSignEntity();
if (Objects.nonNull(reqVo.getPhone())) {
patientSign.setPatientPhone(reqVo.getPhone());
}
psWrapper.setEntity(patientSign);
if (Objects.nonNull(reqVo.getPhone())) {
psWrapper.orderByDesc("createTime");
psWrapper.last("limit 1");
}
PatientSignEntity pse = patientSignMapper.selectOne(psWrapper);
if (null == pse) {
throw new BusinessException("未查询到签约信息,不能获取排班医生!");
}
sendImMsgDTO.setOldAdmId(pse.getAdmId());
//放入MQ任务,处理订单到时结束
OrderTaskVo orderTaskVo = new OrderTaskVo();
orderTaskVo.setType(1);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论