短信推送健康宣教推送时间新增时间

This commit is contained in:
zhangheng 2024-12-24 11:23:12 +08:00
parent 800bff30d8
commit 5fbe037081
4 changed files with 14 additions and 10 deletions

View File

@ -14,6 +14,7 @@ import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
@ -169,7 +170,7 @@ public interface SignPatientManageRouteNodeMapper {
* @param officialStatus 公众号发送状态
* @return int
*/
int updateNodeExecuteStatusByIds(@Param("manageRouteNodeIds") List<Long> manageRouteNodeIds, @Param("nodeExecuteStatus") String nodeExecuteStatus, @Param("appletStatus") String appletStatus, @Param("messageStatus") String messageStatus, @Param("officialStatus") String officialStatus);
int updateNodeExecuteStatusByIds(@Param("manageRouteNodeIds") List<Long> manageRouteNodeIds, @Param("nodeExecuteStatus") String nodeExecuteStatus, @Param("appletStatus") String appletStatus, @Param("messageStatus") String messageStatus, @Param("officialStatus") String officialStatus, @Param("nodeFinishDate") LocalDateTime nodeFinishDate);
/**
* 根据创建时间查询任务数量

View File

@ -1031,6 +1031,9 @@
<if test="officialStatus != null">official_node_execute_result_status =
#{officialStatus},
</if>
<if test="nodeFinishDate != null">node_finish_date =
#{nodeFinishDate},
</if>
</trim>
where id in
<foreach item="manageRouteNodeIds" collection="manageRouteNodeIds" open="(" separator="," close=")">
@ -1263,7 +1266,7 @@
left join patient_question_subject_result pqsjr on pqsbr.id = pqsjr.question_submit_result_id
left join patient_question_option_result pqor on pqsjr.id = pqor.question_subject_result_id
where p.del_flag = 0
and spmrn.node_finish_status = 'SUCCESS'
-- and spmrn.node_finish_status = 'SUCCESS'
and pqsjr.question_type in
('MULTIPLE_CHOICE','MULTIPLE_CHOICE_QUESTIONS','COMBINATION_RADIO_SUBJECT','COMBINATION_MULTIPLE_SUBJECT')
<if test="questionInfoId != null">

View File

@ -70,6 +70,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
List<TextMessage> messages = new ArrayList<>();
//超时短信ids
List<Long> expiredManageRouteNodeIds = new ArrayList<>();
LocalDateTime now = LocalDateTime.now();
for (TextMessage textMessage : textMessages) {
//判断推送状态
if (Objects.isNull(textMessage.getMessagePushSign()) || textMessage.getMessagePushSign() != 1) {
@ -107,7 +108,7 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
}
//更改过期执行状态
if (CollectionUtils.isNotEmpty(expiredManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(expiredManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.EXPIRED.getInfo(), null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(expiredManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.EXPIRED.getInfo(), null, now);
}
//判断路径节点组装数据
@ -191,11 +192,11 @@ public class SendTextMessageServiceImpl implements SendTextMessageService {
}
//修改节点状态
if (CollectionUtils.isNotEmpty(expiredManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(ids, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.SUCCESS.getInfo(), null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(ids, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.SUCCESS.getInfo(), null, now);
}
//修改节点状态
if (CollectionUtils.isNotEmpty(expiredManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(failSignPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.FAILURE.getInfo(), null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(failSignPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), null, NodeExecuteResultStatusEnum.FAILURE.getInfo(), null, now);
}
// 患者任务统计表修改

View File

@ -71,6 +71,7 @@ public class subscribeTaskServiceImpl implements SubscribeTaskService {
if (CollectionUtils.isEmpty(signPatientManageRouteNodes)) {
return;
}
LocalDateTime now = LocalDateTime.now();
// PatientVO 包含签约路径节点相关属性后面用于推送消息
List<PatientVO> patientVOList = new ArrayList<>();
//发送消息到期节点id集合
@ -110,7 +111,7 @@ public class subscribeTaskServiceImpl implements SubscribeTaskService {
}
//2.2 对过期的任务更改过期执行状态
if (CollectionUtils.isNotEmpty(expiredManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(expiredManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.EXPIRED.getInfo(), null, null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(expiredManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.EXPIRED.getInfo(), null, null, now);
}
// //如果节点 适用范围是 出院后或就诊/出院后
@ -204,15 +205,13 @@ public class subscribeTaskServiceImpl implements SubscribeTaskService {
//3.1 托送记录入库
subscribeMessageSendRecordMapper.insertSubscribeMessageSendRecord(subscribeMessageSendRecord);
}
//4更改成功执行状态
if (CollectionUtils.isNotEmpty(signPatientManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(signPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.SUCCESS.getInfo(), null, null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(signPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.SUCCESS.getInfo(), null, null,now);
}
//4.2 更改失败执行状态
if (CollectionUtils.isNotEmpty(failSignPatientManageRouteNodeIds)) {
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(failSignPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.FAILURE.getInfo(), null, null);
signPatientManageRouteNodeMapper.updateNodeExecuteStatusByIds(failSignPatientManageRouteNodeIds, NodeExecuteStatusEnum.EXECUTED.getInfo(), NodeExecuteResultStatusEnum.FAILURE.getInfo(), null, null,now);
}
//5 患者任务统计表修改
if (CollectionUtils.isNotEmpty(patientIdSet)) {