From 865c4ab0a9776db5625eeae7931736011b432636 Mon Sep 17 00:00:00 2001 From: zhangheng <3226558941@qq.com> Date: Mon, 5 Aug 2024 10:43:55 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E6=8E=A8=E9=80=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/enums/ShortMessageSendEnum.java | 30 +++++++++++++++++++ .../ShortMessageSendRecord.java | 2 +- .../impl/SendTextMessageServiceImpl.java | 27 ++++++++++------- 3 files changed, 48 insertions(+), 11 deletions(-) create mode 100644 postdischarge-common/src/main/java/com/xinelu/common/enums/ShortMessageSendEnum.java diff --git a/postdischarge-common/src/main/java/com/xinelu/common/enums/ShortMessageSendEnum.java b/postdischarge-common/src/main/java/com/xinelu/common/enums/ShortMessageSendEnum.java new file mode 100644 index 00000000..db19e30d --- /dev/null +++ b/postdischarge-common/src/main/java/com/xinelu/common/enums/ShortMessageSendEnum.java @@ -0,0 +1,30 @@ +package com.xinelu.common.enums; + +import lombok.Getter; + +/** + * 短信发送结果记录对象 + * + * @author : zh + * @date : 2024/8/05 + */ +@Getter +public enum ShortMessageSendEnum { + + /** + * 启用 + */ + PHONE_MSG("PHONE_MSG"), + + /** + * 禁用 + */ + COMMON("COMMON"), + ; + + final private String info; + + ShortMessageSendEnum(String info) { + this.info = info; + } +} diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/shortmessagesendrecord/ShortMessageSendRecord.java b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/shortmessagesendrecord/ShortMessageSendRecord.java index c1120f63..707054dc 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/shortmessagesendrecord/ShortMessageSendRecord.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/shortmessagesendrecord/ShortMessageSendRecord.java @@ -81,7 +81,7 @@ public class ShortMessageSendRecord extends BaseEntity { * 推送结果状态码(0表示成功) */ @ApiModelProperty(value = "推送结果状态码") - @Excel(name = "推送结果状态码", readConverterExp = "0=表示成功") + @Excel(name = "推送结果状态码", readConverterExp = "0表示成功") private Long errorCode; /** diff --git a/postdischarge-quartz/src/main/java/com/xinelu/quartz/service/impl/SendTextMessageServiceImpl.java b/postdischarge-quartz/src/main/java/com/xinelu/quartz/service/impl/SendTextMessageServiceImpl.java index cf1916ca..82cc9d99 100644 --- a/postdischarge-quartz/src/main/java/com/xinelu/quartz/service/impl/SendTextMessageServiceImpl.java +++ b/postdischarge-quartz/src/main/java/com/xinelu/quartz/service/impl/SendTextMessageServiceImpl.java @@ -3,11 +3,8 @@ package com.xinelu.quartz.service.impl; import com.aliyuncs.exceptions.ClientException; import com.xinelu.common.config.AliYunSmsTwoConfig; import com.xinelu.common.config.PushMessageRestrictions; -import com.xinelu.common.enums.ErrorStatusEnum; -import com.xinelu.common.enums.NodeExecuteResultStatusEnum; -import com.xinelu.common.enums.NodeExecuteStatusEnum; -import com.xinelu.common.enums.RouteNodeNameEnum; -import com.xinelu.manage.domain.subscribemessagesendrecord.SubscribeMessageSendRecord; +import com.xinelu.common.enums.*; +import com.xinelu.manage.domain.shortmessagesendrecord.ShortMessageSendRecord; import com.xinelu.manage.dto.smssend.SmsInfoDTO; import com.xinelu.manage.mapper.shortmessagesendrecord.ShortMessageSendRecordMapper; import com.xinelu.manage.mapper.signpatientmanageroutenode.SignPatientManageRouteNodeMapper; @@ -22,6 +19,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.time.LocalDate; +import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; import java.util.ArrayList; import java.util.List; @@ -151,21 +149,30 @@ public class SendTextMessageServiceImpl implements SendTextMessageService { // 根据模版id发送 smsInfoDTO.setTemplateCode(message.getTextMessageId()); Boolean aBoolean = smsSendUtils.sendTextMessage(smsInfoDTO); - SubscribeMessageSendRecord subscribeMessageSendRecord = new SubscribeMessageSendRecord(); + ShortMessageSendRecord shortMessageSendRecord = new ShortMessageSendRecord(); + shortMessageSendRecord.setMessageType(ShortMessageSendEnum.COMMON.getInfo()); + shortMessageSendRecord.setPatientId(message.getPatientId()); + shortMessageSendRecord.setPatientPhone(message.getPatientPhone()); + shortMessageSendRecord.setManageRouteNodeId(message.getSignPatientManageRouteNodeId()); + shortMessageSendRecord.setSendTime(LocalDateTime.now()); + shortMessageSendRecord.setMessageTemplateId(message.getTextMessageId()); + shortMessageSendRecord.setMessageNodeContent(message.getMessageNodeContent()); + shortMessageSendRecord.setCreateTime(LocalDateTime.now()); //成功 if (aBoolean) { ids.add(message.getSignPatientManageRouteNodeId()); - subscribeMessageSendRecord.setErrorCode(0); - subscribeMessageSendRecord.setErrorStatus(ErrorStatusEnum.success.getValue()); + shortMessageSendRecord.setErrorCode(0L); + shortMessageSendRecord.setErrorStatus(ErrorStatusEnum.success.getValue()); } else { //失败 - subscribeMessageSendRecord.setErrorCode(1); - subscribeMessageSendRecord.setErrorStatus(ErrorStatusEnum.fail.getValue()); + shortMessageSendRecord.setErrorCode(1L); + shortMessageSendRecord.setErrorStatus(ErrorStatusEnum.fail.getValue()); RecordNum recordNum = recordNums.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getManageRouteNodeId()) && item.getManageRouteNodeId().equals(message.getSignPatientManageRouteNodeId())).findFirst().orElse(new RecordNum()); //三次失败 if (Objects.nonNull(recordNum.getNum()) && recordNum.getNum() >= pushMessageRestrictions.getNumber()) { failSignPatientManageRouteNodeIds.add(message.getSignPatientManageRouteNodeId()); } + shortMessageSendRecordMapper.insertShortMessageSendRecord(shortMessageSendRecord); } } //修改节点状态