Ver código fonte

fix : 客服系统新增聊天排序字段

bilingfeng 1 ano atrás
pai
commit
f07130bdf0

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/ManageApplication.java

@@ -23,7 +23,7 @@ public class ManageApplication {
 
 
     public static void main(String[] args) {
     public static void main(String[] args) {
         SpringApplication.run(ManageApplication.class, args);
         SpringApplication.run(ManageApplication.class, args);
-        System.out.println("赞象Manage服务启动成功 <客服系统新增关键词监测05> ( ´・・)ノ(._.`) \n" +
+        System.out.println("赞象Manage服务启动成功 <客服系统优化聊天排序问题> ( ´・・)ノ(._.`) \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +

+ 2 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/KfAppletMsgServiceImpl.java

@@ -327,6 +327,7 @@ public class KfAppletMsgServiceImpl implements IKfAppletMsgService {
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_USER.getValue())
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_USER.getValue())
                 .content(JsonUtil.toString(msgContent))
                 .content(JsonUtil.toString(msgContent))
                 .source(postData)
                 .source(postData)
+                .sortTime(System.currentTimeMillis())
                 .createTime(LocalDateTime.now())
                 .createTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .build();
                 .build();
@@ -420,6 +421,7 @@ public class KfAppletMsgServiceImpl implements IKfAppletMsgService {
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_SYSTEM.getValue())
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_SYSTEM.getValue())
                 .content(msgContent)
                 .content(msgContent)
                 .source(msgContent)
                 .source(msgContent)
+                .sortTime(System.currentTimeMillis())
                 .createTime(LocalDateTime.now())
                 .createTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .build();
                 .build();

+ 2 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/KfRoomMsgServiceImpl.java

@@ -44,7 +44,7 @@ public class KfRoomMsgServiceImpl extends ServiceImpl<KfRoomMsgMapper, KfRoomMsg
         Page<KfRoomMsg> kfRoomMsgPage = super.page(new Page<>(pageBean.getPageNum(), pageBean.getPageSize()),
         Page<KfRoomMsg> kfRoomMsgPage = super.page(new Page<>(pageBean.getPageNum(), pageBean.getPageSize()),
                 new QueryWrapper<KfRoomMsg>().lambda()
                 new QueryWrapper<KfRoomMsg>().lambda()
                         .eq(KfRoomMsg::getRoomId, roomId)
                         .eq(KfRoomMsg::getRoomId, roomId)
-                        .orderByDesc(KfRoomMsg::getCreateTime)
+                        .orderByDesc(KfRoomMsg::getSortTime)
         );
         );
         //客服名字列表
         //客服名字列表
         Map<Long, String> kfUserNameMap = this.getKfUserNameMap(kfRoomMsgPage.getRecords());
         Map<Long, String> kfUserNameMap = this.getKfUserNameMap(kfRoomMsgPage.getRecords());
@@ -103,6 +103,7 @@ public class KfRoomMsgServiceImpl extends ServiceImpl<KfRoomMsgMapper, KfRoomMsg
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_KF.getValue())
                 .msgOwner(KfRoomMsgOwnerEnum.KF_MSG_OWNER_KF.getValue())
                 .content(JsonUtil.toString(BeanUtil.copy(msgContent, KfWebSocketMsgDTO.MsgContentBean.class)))
                 .content(JsonUtil.toString(BeanUtil.copy(msgContent, KfWebSocketMsgDTO.MsgContentBean.class)))
                 .source(JsonUtil.toString(msgContent))
                 .source(JsonUtil.toString(msgContent))
+                .sortTime(System.currentTimeMillis())
                 .createTime(LocalDateTime.now())
                 .createTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .updateTime(LocalDateTime.now())
                 .build());
                 .build());

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/KfRoomServiceImpl.java

@@ -187,7 +187,7 @@ public class KfRoomServiceImpl extends ServiceImpl<KfRoomMapper, KfRoom> impleme
         //最后一条消息
         //最后一条消息
         KfRoomMsg kfRoomMsg = kfRoomMsgService.getOne(new LambdaQueryWrapper<KfRoomMsg>()
         KfRoomMsg kfRoomMsg = kfRoomMsgService.getOne(new LambdaQueryWrapper<KfRoomMsg>()
                 .eq(KfRoomMsg::getRoomId, kfRoom.getId())
                 .eq(KfRoomMsg::getRoomId, kfRoom.getId())
-                .orderByDesc(KfRoomMsg::getCreateTime)
+                .orderByDesc(KfRoomMsg::getSortTime)
                 .last("limit 1"));
                 .last("limit 1"));
         if (kfRoomMsg != null) {
         if (kfRoomMsg != null) {
             if (Objects.equals(kfRoomMsg.getMsgType(), KfRoomMsgTypeEnum.KF_MSG_TYPE_TEXT.getValue())) {
             if (Objects.equals(kfRoomMsg.getMsgType(), KfRoomMsgTypeEnum.KF_MSG_TYPE_TEXT.getValue())) {

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/KfSessionUserServiceImpl.java

@@ -57,7 +57,7 @@ public class KfSessionUserServiceImpl extends ServiceImpl<KfSessionUserMapper, K
                         .eq(KfRoomMsg::getReadStatus, Boolean.FALSE)
                         .eq(KfRoomMsg::getReadStatus, Boolean.FALSE)
                         .isNull(KfRoomMsg::getRoomId)
                         .isNull(KfRoomMsg::getRoomId)
                         .eq(KfRoomMsg::getMsgOwner, KfRoomMsgOwnerEnum.KF_MSG_OWNER_USER.getValue())
                         .eq(KfRoomMsg::getMsgOwner, KfRoomMsgOwnerEnum.KF_MSG_OWNER_USER.getValue())
-                        .orderByDesc(KfRoomMsg::getCreateTime));
+                        .orderByDesc(KfRoomMsg::getSortTime));
         List<KfWebSocketMsgDTO.WaitUserMsgBean> waitUserMsgList = kfRoomMsgPage.getRecords()
         List<KfWebSocketMsgDTO.WaitUserMsgBean> waitUserMsgList = kfRoomMsgPage.getRecords()
                 .stream().map(this::transform).collect(Collectors.toList());
                 .stream().map(this::transform).collect(Collectors.toList());
         waitUserBean.setWaitUserMsgList(waitUserMsgList);
         waitUserBean.setWaitUserMsgList(waitUserMsgList);

+ 5 - 0
game-module/game-module-mybatis/src/main/java/com/zanxiang/game/module/mybatis/entity/KfRoomMsg.java

@@ -79,6 +79,11 @@ public class KfRoomMsg implements Serializable {
      */
      */
     private String source;
     private String source;
 
 
+    /**
+     * 排序时间
+     */
+    private Long sortTime;
+
     /**
     /**
      * 创建时间
      * 创建时间
      */
      */