From ee02a037720d9c5d77aeec7d64e26c7eaa6130fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 14 Feb 2025 19:39:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E7=9A=84=E4=B8=80=E4=BA=9B=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/TicketController.java | 32 ++++++++++++++++--- .../repository/service/TicketChatService.java | 19 +++++------ 2 files changed, 37 insertions(+), 14 deletions(-) diff --git a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java index 0b976246..861e16c5 100644 --- a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java +++ b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/TicketController.java @@ -1,6 +1,7 @@ package com.nflg.mobilebroken.admin.controller; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DatePattern; import cn.hutool.core.util.StrUtil; import com.itextpdf.html2pdf.ConverterProperties; import com.itextpdf.html2pdf.HtmlConverter; @@ -38,6 +39,8 @@ import java.io.IOException; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.time.Instant; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -390,16 +393,35 @@ public class TicketController extends ControllerBase { .setAttachments(request.getAttachments()) .setImages(request.getImages()) .setQuote(request.getQuote()); -// ticketChatService.pushMessage(request.getTicketId(),message); -// TicketChat chat=ticketChatService.findByTicketId(request.getTicketId()); -// chat.getMessages().add(message); -// ticketChatService.save(chat); ticketChatService.addMessage(request.getTicketId(), message); //推送消息 try { + String zone = MultilingualUtil.getZone(); + ZoneId zoneId = ZoneId.of(Objects.isNull(zone) ? "Asia/Shanghai" : zone); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN).withZone(zoneId); + ChatMessageVO messageVO = new ChatMessageVO() + .setId(message.getId()) + .setFrom(message.getFrom()) + .setSenderId(message.getSenderId()) + .setSenderName(message.getSenderName()) + .setSenderAvatar(message.getSenderAvatar()) + .setContent(message.getContent()) + .setCreateTime(formatter.format(message.getCreateTime())) + .setImages(message.getImages()) + .setAttachments(message.getAttachments()) + .setQuote(Objects.isNull(message.getQuote()) ? null : new ChatMessageVO() + .setId(message.getQuote().getId()) + .setFrom(message.getQuote().getFrom()) + .setSenderId(message.getQuote().getSenderId()) + .setSenderName(message.getQuote().getSenderName()) + .setSenderAvatar(message.getQuote().getSenderAvatar()) + .setContent(message.getQuote().getContent()) + .setAttachments(message.getQuote().getAttachments()) + .setImages(message.getQuote().getImages()) + .setCreateTime(formatter.format(message.getQuote().getCreateTime()))); SSEMessageDTO messageDTO = new SSEMessageDTO() .setType(1) - .setData(message); + .setData(messageVO); sseManagerService.send(ticket.getUserId(), messageDTO); } catch (IOException e) { log.error("发送SSE消息出错", e); diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/TicketChatService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/TicketChatService.java index ce45a068..521052d8 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/TicketChatService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/TicketChatService.java @@ -50,15 +50,16 @@ public class TicketChatService { .setImages(m.getImages()) .setCreateTime(formatter.format(m.getCreateTime())) .setQuote(Objects.isNull(m.getQuote()) ? null : new ChatMessageVO() - .setId(m.getId()) - .setFrom(m.getFrom()) - .setSenderId(m.getSenderId()) - .setSenderName(m.getSenderName()) - .setSenderAvatar(m.getSenderAvatar()) - .setContent(m.getContent()) - .setAttachments(m.getAttachments()) - .setImages(m.getImages())) - .setCreateTime(formatter.format(m.getCreateTime()))) + .setId(m.getQuote().getId()) + .setFrom(m.getQuote().getFrom()) + .setSenderId(m.getQuote().getSenderId()) + .setSenderName(m.getQuote().getSenderName()) + .setSenderAvatar(m.getQuote().getSenderAvatar()) + .setContent(m.getQuote().getContent()) + .setAttachments(m.getQuote().getAttachments()) + .setImages(m.getQuote().getImages()) + .setCreateTime(formatter.format(m.getQuote().getCreateTime()))) + ) .collect(Collectors.toList()); } }