REQ-3201: 重新发送消息

This commit is contained in:
yanglin 2024-12-24 14:43:56 +08:00
parent c7497ee7cd
commit deb5e659c6
3 changed files with 21 additions and 3 deletions

View File

@ -36,6 +36,7 @@ import cn.axzo.msg.center.notices.manager.api.dto.request.plat.TingyunInterfaceL
import cn.axzo.msg.center.notices.service.api.PlatService;
import cn.axzo.msg.center.service.enums.MqMessageType;
import cn.axzo.msg.center.service.pending.request.CardUpdateRequest;
import cn.axzo.msg.center.service.pending.request.ResendMessageRequest;
import cn.axzo.msg.center.service.pending.request.RevokeByTemplateCodeRequest;
import cn.axzo.trade.web.annotation.EnableResponseAdvice;
import com.fasterxml.jackson.databind.ObjectMapper;
@ -253,7 +254,7 @@ public class PrivateMessageController {
@PostMapping("/sendTestMessage")
@EnableResponseAdvice(enable = false)
public Object resendCards(@RequestBody @Valid CardUpdateRequest request) {
public Object resendCards(@RequestBody @Valid ResendMessageRequest request) {
cardManager.resend(request);
return "done...";
}

View File

@ -33,6 +33,7 @@ import cn.axzo.msg.center.service.pending.request.CardSendRequest;
import cn.axzo.msg.center.service.pending.request.CardUpdatePresetButtonRequest;
import cn.axzo.msg.center.service.pending.request.CardUpdateRequest;
import cn.axzo.msg.center.service.pending.request.CardUpdateStateRequest;
import cn.axzo.msg.center.service.pending.request.ResendMessageRequest;
import cn.axzo.msg.center.service.pending.request.SetActionPerformedRequest;
import cn.axzo.msg.center.service.pending.response.CardSendResponse;
import cn.axzo.msg.center.utils.RecordCursor;
@ -207,11 +208,12 @@ public class CardManager {
return result;
}
public void resend(CardUpdateRequest request) {
public void resend(ResendMessageRequest request) {
TemplateModelV3 templateModel = cardSupport.ensureImChannelPresent(request.getTemplateCode());
BizAssertions.assertNotNull(templateModel, "找不到对应的模板, templateCode={}", request.getTemplateCode());
for (List<Card> cards : cardsCursor(request)) {
rebuildCardContent(templateModel, cards);
if (request.isRebuildContent())
rebuildCardContent(templateModel, cards);
updateMessages(cards);
}
}

View File

@ -0,0 +1,15 @@
package cn.axzo.msg.center.service.pending.request;
import lombok.Getter;
import lombok.Setter;
/**
* @author yanglin
*/
@Setter
@Getter
public class ResendMessageRequest extends CardUpdateRequest {
private boolean rebuildContent = false;
}