短信发送修改
This commit is contained in:
parent
4343d60bbd
commit
58e271dc56
@ -521,12 +521,17 @@ public class AIOBServiceImpl implements IAIOBService {
|
|||||||
dto.setPhoneMessageTemplateCode(textMessage.getTextMessageId());
|
dto.setPhoneMessageTemplateCode(textMessage.getTextMessageId());
|
||||||
dto.setPhoneMessageTemplateContent(signPatientManageRouteNode.getPhoneMessageTemplateContent());
|
dto.setPhoneMessageTemplateContent(signPatientManageRouteNode.getPhoneMessageTemplateContent());
|
||||||
signPatientManageRouteService.shortMessageSendRecordExtracted(dto, LocalDateTime.now(), b, PhoneDialMethodEnum.AI.getInfo());
|
signPatientManageRouteService.shortMessageSendRecordExtracted(dto, LocalDateTime.now(), b, PhoneDialMethodEnum.AI.getInfo());
|
||||||
|
//修改电话短信发送情况
|
||||||
|
SignPatientManageRouteNode updatePhoneMessage = new SignPatientManageRouteNode();
|
||||||
|
updatePhoneMessage.setId(signPatientManageRouteNode.getId());
|
||||||
if (!b) {
|
if (!b) {
|
||||||
|
updatePhoneMessage.setPhoneMessageNodeExecuteResultStatus("FAILURE");
|
||||||
log.info("短信发送失败");
|
log.info("短信发送失败");
|
||||||
} else {
|
} else {
|
||||||
|
updatePhoneMessage.setPhoneMessageNodeExecuteResultStatus("SUCCESS");
|
||||||
log.info("短信发送成功");
|
log.info("短信发送成功");
|
||||||
}
|
}
|
||||||
|
signPatientManageRouteNodeMapper.updateSignPatientManageRouteNode(updatePhoneMessage);
|
||||||
} else {
|
} else {
|
||||||
log.info("短信发送成功");
|
log.info("短信发送成功");
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description 查询短信发送实体类
|
* @Description 查询短信发送实体类
|
||||||
@ -67,9 +68,6 @@ public class TextMessage {
|
|||||||
@ApiModelProperty(value = "节点id")
|
@ApiModelProperty(value = "节点id")
|
||||||
private Long signPatientManageRouteNodeId;
|
private Long signPatientManageRouteNodeId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "电话短信提醒")
|
@ApiModelProperty(value = "任务计划执行时间")
|
||||||
private String phoneMessageRemind;
|
private LocalDateTime nodePlanTime;
|
||||||
|
|
||||||
@ApiModelProperty(value = "电话短信code")
|
|
||||||
private String phoneMessageTemplateCode;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1001,6 +1001,7 @@
|
|||||||
spmrn.route_node_name,
|
spmrn.route_node_name,
|
||||||
spmrn.route_node_day,
|
spmrn.route_node_day,
|
||||||
spmrn.task_node_type,
|
spmrn.task_node_type,
|
||||||
|
spmrn.node_plan_time,
|
||||||
spmr.id manageRouteId,
|
spmr.id manageRouteId,
|
||||||
pi.patient_phone,
|
pi.patient_phone,
|
||||||
pi.patient_type,
|
pi.patient_type,
|
||||||
@ -1008,16 +1009,14 @@
|
|||||||
pi.discharge_time,
|
pi.discharge_time,
|
||||||
pi.visit_date,
|
pi.visit_date,
|
||||||
pi.visit_method,
|
pi.visit_method,
|
||||||
tm.text_message_id,
|
tm.text_message_id
|
||||||
(SELECT text_message_id FROM text_message WHERE id = spmrn.phone_message_template_id) phoneMessageTemplateCode,
|
|
||||||
spmrn.phone_message_remind
|
|
||||||
from sign_patient_manage_route_node spmrn
|
from sign_patient_manage_route_node spmrn
|
||||||
LEFT JOIN sign_patient_manage_route spmr ON spmr.id = spmrn.manage_route_id
|
LEFT JOIN sign_patient_manage_route spmr ON spmr.id = spmrn.manage_route_id
|
||||||
LEFT JOIN patient_info pi ON pi.id = spmr.patient_id
|
LEFT JOIN patient_info pi ON pi.id = spmr.patient_id
|
||||||
LEFT JOIN text_message tm ON tm.id = spmrn.message_template_id
|
LEFT JOIN text_message tm ON tm.id = spmrn.message_template_id
|
||||||
where (spmrn.message_push_sign = 1 or (spmrn.phone_message_remind is not null and spmrn.phone_message_remind != 'NOT_SEND_MESSAGE'))
|
where spmrn.message_push_sign = 1
|
||||||
and spmrn.del_flag = 0
|
and spmrn.del_flag = 0
|
||||||
and spmrn.node_execute_status = 'EXECUTED'
|
and spmrn.node_execute_status = 'UNEXECUTED'
|
||||||
and (spmrn.message_node_execute_result_status is null or spmrn.message_node_execute_result_status = ' ')
|
and (spmrn.message_node_execute_result_status is null or spmrn.message_node_execute_result_status = ' ')
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|||||||
@ -67,7 +67,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
LocalDate nowDate = LocalDate.now();
|
LocalDate nowDate = LocalDate.now();
|
||||||
for (TextMessage textMessage : textMessages) {
|
for (TextMessage textMessage : textMessages) {
|
||||||
//判断推送状态
|
//判断推送状态
|
||||||
if ((Objects.isNull(textMessage.getMessagePushSign()) || textMessage.getMessagePushSign() != 1) && (StringUtils.isBlank(textMessage.getPhoneMessageRemind()) || textMessage.getPhoneMessageRemind().equals("NOT_SEND_MESSAGE"))) {
|
if (Objects.isNull(textMessage.getMessagePushSign()) || textMessage.getMessagePushSign() != 1) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
//过滤脏数据 if (StringUtils.isBlank(textMessage.getPatientType()) || Objects.isNull(textMessage.getRouteNodeDay()))
|
//过滤脏数据 if (StringUtils.isBlank(textMessage.getPatientType()) || Objects.isNull(textMessage.getRouteNodeDay()))
|
||||||
@ -75,7 +75,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
//模版暂时处理
|
//模版暂时处理
|
||||||
if ((StringUtils.isBlank(textMessage.getTextMessageId()) || !aliYunSmsTwoConfig.getTemplateCode().equals(textMessage.getTextMessageId())) && (StringUtils.isBlank(textMessage.getPhoneMessageTemplateCode()) || !aliYunSmsTwoConfig.getTemplateCode().equals(textMessage.getPhoneMessageTemplateCode()))) {
|
if (StringUtils.isBlank(textMessage.getTextMessageId()) || !aliYunSmsTwoConfig.getTemplateCode().equals(textMessage.getTextMessageId())) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
LocalDate localDate = null;
|
LocalDate localDate = null;
|
||||||
@ -83,11 +83,12 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
if (Objects.nonNull(textMessage.getDischargeTime()) && Objects.nonNull(textMessage.getRouteNodeDay())) {
|
if (Objects.nonNull(textMessage.getDischargeTime()) && Objects.nonNull(textMessage.getRouteNodeDay())) {
|
||||||
localDate = textMessage.getDischargeTime().plusDays(textMessage.getRouteNodeDay());
|
localDate = textMessage.getDischargeTime().plusDays(textMessage.getRouteNodeDay());
|
||||||
}
|
}
|
||||||
// if (Objects.isNull(textMessage.getDischargeTime()) && Objects.nonNull(textMessage.getVisitDate())) {
|
if (Objects.isNull(textMessage.getDischargeTime()) && Objects.nonNull(textMessage.getVisitDate()) && Objects.nonNull(textMessage.getRouteNodeDay())) {
|
||||||
// localDate = textMessage.getVisitDate().plusDays(textMessage.getRouteNodeDay());
|
localDate = textMessage.getVisitDate().plusDays(textMessage.getRouteNodeDay());
|
||||||
// }
|
}
|
||||||
if (Objects.isNull(textMessage.getRouteNodeDay())){
|
//没有天数按执行时间处理NodePlanTime
|
||||||
localDate = nowDate;//新加的外呼立即执行没有getRouteNodeDay
|
if (Objects.isNull(textMessage.getRouteNodeDay()) && Objects.nonNull(textMessage.getNodePlanTime())){
|
||||||
|
localDate = textMessage.getNodePlanTime().toLocalDate();//新加的外呼立即执行没有getRouteNodeDay
|
||||||
}
|
}
|
||||||
if (Objects.isNull(localDate)) {
|
if (Objects.isNull(localDate)) {
|
||||||
continue;
|
continue;
|
||||||
@ -100,6 +101,10 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
expiredManageRouteNodeIds.add(textMessage.getSignPatientManageRouteNodeId());
|
expiredManageRouteNodeIds.add(textMessage.getSignPatientManageRouteNodeId());
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
//没有天数按执行时间处理NodePlanTime
|
||||||
|
if (Objects.isNull(textMessage.getRouteNodeDay()) && now.isBefore(textMessage.getNodePlanTime())){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
textMessage.setRouteNodeName(RouteNodeNameEnum.getNameByInfo(textMessage.getRouteNodeName()).getName());
|
textMessage.setRouteNodeName(RouteNodeNameEnum.getNameByInfo(textMessage.getRouteNodeName()).getName());
|
||||||
messages.add(textMessage);
|
messages.add(textMessage);
|
||||||
}
|
}
|
||||||
@ -143,7 +148,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
// }
|
// }
|
||||||
//节点推送数量
|
//节点推送数量
|
||||||
List<Long> collect = messages.stream().filter(Objects::nonNull).map(TextMessage::getSignPatientManageRouteNodeId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
|
List<Long> collect = messages.stream().filter(Objects::nonNull).map(TextMessage::getSignPatientManageRouteNodeId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
|
||||||
List<RecordNum> recordNums = shortMessageSendRecordMapper.selectShortMessageRecordCountByManageRouteNodeIds(collect);
|
List<RecordNum> recordNums = shortMessageSendRecordMapper.selectShortMessageRecordCountByManageRouteNodeIds(collect);//后续是否加入通用状态
|
||||||
//发送
|
//发送
|
||||||
//发送失败ids
|
//发送失败ids
|
||||||
List<Long> failSignPatientManageRouteNodeIds = new ArrayList<>();
|
List<Long> failSignPatientManageRouteNodeIds = new ArrayList<>();
|
||||||
@ -156,13 +161,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
|
|||||||
smsInfoDTO.setPhoneNumbers(message.getPatientPhone());
|
smsInfoDTO.setPhoneNumbers(message.getPatientPhone());
|
||||||
smsInfoDTO.setSignName(aliYunSmsTwoConfig.getSignName());
|
smsInfoDTO.setSignName(aliYunSmsTwoConfig.getSignName());
|
||||||
// 根据模版id发送
|
// 根据模版id发送
|
||||||
if (StringUtils.isNotBlank(message.getTextMessageId()) && StringUtils.isBlank(message.getPhoneMessageTemplateCode())){
|
smsInfoDTO.setTemplateCode(message.getTextMessageId());
|
||||||
smsInfoDTO.setTemplateCode(message.getTextMessageId());
|
|
||||||
} else if (StringUtils.isNotBlank(message.getPhoneMessageTemplateCode()) && StringUtils.isBlank(message.getTextMessageId())){
|
|
||||||
smsInfoDTO.setTemplateCode(message.getPhoneMessageTemplateCode());
|
|
||||||
}else {
|
|
||||||
smsInfoDTO.setTemplateCode(aliYunSmsTwoConfig.getTemplateCode());
|
|
||||||
}
|
|
||||||
Boolean aBoolean = smsSendUtils.sendTextMessage(smsInfoDTO);
|
Boolean aBoolean = smsSendUtils.sendTextMessage(smsInfoDTO);
|
||||||
ShortMessageSendRecord shortMessageSendRecord = new ShortMessageSendRecord();
|
ShortMessageSendRecord shortMessageSendRecord = new ShortMessageSendRecord();
|
||||||
shortMessageSendRecord.setMessageType(ShortMessageTypeEnum.COMMON.getInfo());
|
shortMessageSendRecord.setMessageType(ShortMessageTypeEnum.COMMON.getInfo());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user