Forráskód Böngészése

优化返图代码问题

fangzhen 3 hónapja
szülő
commit
8b40cc9fcf

+ 2 - 0
ruoyi-framework/src/main/java/com/ruoyi/framework/webSocket/WebSocketServer.java

@@ -280,7 +280,9 @@ public class WebSocketServer {
                     if (returnRecord == null) {
                         communityReturnRecord = new CommunityReturnRecord();
                         communityReturnRecord.setReturnCreateUserId(Long.parseLong(returnCreateUserId));
+                        communityReturnRecord.setReturnCreateAnonName(jsonObject.getString("receiverAnonName"));
                         communityReturnRecord.setReturnReceiveUserId(Long.parseLong(returnReceiveUserId));
+                        communityReturnRecord.setReturnReceiveAnonName(jsonObject.getString("senderAnonName"));
                         communityReturnRecord.setCreateTime(DateUtils.parseDate(DateUtils.getTime()));
                         communityReturnRecord.setCreateBy(Long.parseLong(returnCreateUserId));
                         returnRecordService.save(communityReturnRecord);

+ 14 - 4
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityChatMsgController.java

@@ -96,7 +96,6 @@ public class CommunityChatMsgController extends BaseController {
                 communityChatMsgService.update(new UpdateWrapper<CommunityChatMsg>().in("id", msgId).set("receiver_is_read", true));
             }
 
-
             CommunityChatMsgVo chatMsgVo = null;
             for (CommunityChatMsg chatMsg : chatMsgList) {
                 chatMsgVo = new CommunityChatMsgVo();
@@ -111,7 +110,20 @@ public class CommunityChatMsgController extends BaseController {
                 }
                 chatMsgVo.setSenderNickName(senderUser.getNickName());
                 chatMsgVo.setSenderAvatar(senderUser.getAvatar());
-                chatMsgVo.setReceiverNickName("chat".equals(chatMsg.getType()) ? receiveUser.getNickName() : chatMsg.getReceiverAnonName());
+                if ("anonymous".equals(type)) {
+                    CommunityReturnRecord returnRecord = communityReturnRecordService.getOne(new QueryWrapper<CommunityReturnRecord>()
+                            .eq("id", chatMsg.getReturnRecordId())
+                            .eq("is_delete", false));
+                    if (returnRecord.getReturnCreateUserId().equals(chatMsgVo.getSenderId())) {
+                        chatMsgVo.setSenderAnonName(returnRecord.getReturnCreateAnonName());
+                        chatMsgVo.setReceiverAnonName(returnRecord.getReturnReceiveAnonName());
+                    } else {
+                        chatMsgVo.setSenderAnonName(returnRecord.getReturnReceiveAnonName());
+                        chatMsgVo.setReceiverAnonName(returnRecord.getReturnCreateAnonName());
+                    }
+                }
+
+                chatMsgVo.setReceiverNickName(receiveUser.getNickName());
                 chatMsgVo.setReceiverAvatar(receiveUser.getAvatar());
                 chatMsgVos.add(chatMsgVo);
             }
@@ -119,8 +131,6 @@ public class CommunityChatMsgController extends BaseController {
             System.out.println(e.getMessage());
             throw new ProjectException();
         }
-
-
         return AjaxResult.success(chatMsgVos);
     }
 

+ 12 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityReturnRecord.java

@@ -34,12 +34,24 @@ public class CommunityReturnRecord implements Serializable {
     @ApiModelProperty("创建返图用户id")
     private Long returnCreateUserId;
 
+    /**
+     * 创建返图用户匿名名称
+     */
+    @ApiModelProperty("创建返图用户匿名名称")
+    private String returnCreateAnonName;
+
     /**
      * 接受返图用户id
      */
     @ApiModelProperty("接受返图用户id")
     private Long returnReceiveUserId;
 
+    /**
+     * 接受返图用户匿名名称
+     */
+    @ApiModelProperty("接受返图用户匿名名称")
+    private String returnReceiveAnonName;
+
     /**
      * 状态
      */

+ 13 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CommunityChatMsgVo.java

@@ -42,6 +42,10 @@ public class CommunityChatMsgVo implements Serializable {
      * 消息发送人昵称
      */
     private String senderNickName;
+    /**
+     * 消息发送人匿名名称
+     */
+    private String senderAnonName;
     /**
      * 消息发送人头像
      */
@@ -54,6 +58,10 @@ public class CommunityChatMsgVo implements Serializable {
      * 消息接收人昵称
      */
     private String receiverNickName;
+    /**
+     * 消息接收人匿名名称
+     */
+    private String receiverAnonName;
     /**
      * 消息接收人头像
      */
@@ -94,6 +102,11 @@ public class CommunityChatMsgVo implements Serializable {
      * 是否已读(发送人)
      */
     private boolean senderIsRead;
+    /**
+     * 关联返图记录表id
+     */
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long returnRecordId;
     /**
     * 创建时间
     */

+ 1 - 0
ruoyi-system/src/main/resources/mapper/system/CommunityChatMsgMapper.xml

@@ -169,6 +169,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                update_time        as updateTime,
                message_type       as messageType,
                type               as type,
+               return_record_id   as returnRecordId,
                is_delete          as isDelete,
                receiver_is_delete as receiverIsDelete
         FROM community_chat_msg