会话列表更新

这个提交包含在:
xuqm 2023-06-02 17:58:30 +08:00
父节点 3d992b9ea0
当前提交 d88e2440d5
共有 4 个文件被更改,包括 23 次插入8 次删除

查看文件

@ -7,6 +7,7 @@ public enum PacketType {
//发送消息 //发送消息
SEND(20), SEND(20),
SEND_ACK(21), SEND_ACK(21),
CONVERSATION(30),
//心跳包 //心跳包
PING(40), PING(40),
PANG(41), PANG(41),

查看文件

@ -3,13 +3,13 @@ package cn.org.bjca.trust.java.imserver.im;
import cn.org.bjca.trust.java.imserver.common.SpringUtilsAuTo; import cn.org.bjca.trust.java.imserver.common.SpringUtilsAuTo;
import cn.org.bjca.trust.java.imserver.common.json.GsonImplHelp; import cn.org.bjca.trust.java.imserver.common.json.GsonImplHelp;
import cn.org.bjca.trust.java.imserver.entitys.Conversation;
import cn.org.bjca.trust.java.imserver.entitys.GroupEntity; import cn.org.bjca.trust.java.imserver.entitys.GroupEntity;
import cn.org.bjca.trust.java.imserver.entitys.UserInfo; import cn.org.bjca.trust.java.imserver.entitys.UserInfo;
import cn.org.bjca.trust.java.imserver.enums.PacketType; import cn.org.bjca.trust.java.imserver.enums.PacketType;
import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage; import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage;
import cn.org.bjca.trust.java.imserver.im.msg.ConnectMessage; import cn.org.bjca.trust.java.imserver.im.msg.ConnectMessage;
import cn.org.bjca.trust.java.imserver.im.msg.ConnectedMessage; import cn.org.bjca.trust.java.imserver.im.msg.ConnectedMessage;
import cn.org.bjca.trust.java.imserver.im.msg.ConversationMessage;
import cn.org.bjca.trust.java.imserver.im.msg.msg.SZYXMessage; import cn.org.bjca.trust.java.imserver.im.msg.msg.SZYXMessage;
import cn.org.bjca.trust.java.imserver.im.msg.msg.SendAckMessage; import cn.org.bjca.trust.java.imserver.im.msg.msg.SendAckMessage;
import cn.org.bjca.trust.java.imserver.repository.*; import cn.org.bjca.trust.java.imserver.repository.*;
@ -120,11 +120,17 @@ public class ImManager {
private void saveConversation(SZYXMessage szyxMessage) { private void saveConversation(SZYXMessage szyxMessage) {
try { try {
Conversation conversation = new Conversation(); ConversationMessage conversation = new ConversationMessage();
conversation.setGroup(szyxMessage.isGroup()); conversation.setGroup(szyxMessage.isGroup());
conversation.setSender(!szyxMessage.isArrive()); conversation.setSender(!szyxMessage.isArrive());
conversation.setMessage(szyxMessage); conversation.setMessage(szyxMessage);
conversation.setSelf(userRepository.findFirstByUserIdAndOsTypeAndAppId(szyxMessage.getUserName(), szyxMessage.getOsType(), szyxMessage.getAppId())); conversation.setSelf(userRepository.findFirstByUserIdAndOsTypeAndAppId(szyxMessage.getUserName(), szyxMessage.getOsType(), szyxMessage.getAppId()));
conversation.setAppId(szyxMessage.getAppId());
conversation.setUserName(szyxMessage.getUserName());
conversation.setOsType(szyxMessage.getOsType());
conversation.setToken(szyxMessage.getToken());
if (szyxMessage.isGroup()) { if (szyxMessage.isGroup()) {
conversation.setGroupEntity(groupRepository.findFirstByAppIdAndGroupId(szyxMessage.getAppId(), szyxMessage.getGroupID())); conversation.setGroupEntity(groupRepository.findFirstByAppIdAndGroupId(szyxMessage.getAppId(), szyxMessage.getGroupID()));
} else { } else {
@ -138,6 +144,7 @@ public class ImManager {
} }
conversationRepository.save(conversation); conversationRepository.save(conversation);
sendPacketMessage(PacketType.CONVERSATION, conversation);
} catch (Exception e) { } catch (Exception e) {
System.out.println("--------------" + e.getMessage()); System.out.println("--------------" + e.getMessage());
} }

查看文件

@ -1,6 +1,10 @@
package cn.org.bjca.trust.java.imserver.entitys; package cn.org.bjca.trust.java.imserver.im.msg;
import cn.org.bjca.trust.java.imserver.entitys.converter.AbstractBaseTimeEntity;
import cn.org.bjca.trust.java.imserver.entitys.GroupEntity;
import cn.org.bjca.trust.java.imserver.entitys.UserInfo;
import cn.org.bjca.trust.java.imserver.enums.PacketType;
import cn.org.bjca.trust.java.imserver.im.bean.PacketMessage;
import cn.org.bjca.trust.java.imserver.im.msg.msg.SZYXMessage; import cn.org.bjca.trust.java.imserver.im.msg.msg.SZYXMessage;
import jakarta.persistence.CascadeType; import jakarta.persistence.CascadeType;
import jakarta.persistence.Entity; import jakarta.persistence.Entity;
@ -10,7 +14,11 @@ import lombok.Data;
@Entity @Entity
@Data @Data
public class Conversation extends AbstractBaseTimeEntity { public class ConversationMessage extends PacketMessage {
public ConversationMessage() {
super(PacketType.CONVERSATION);
}
private boolean isSender; private boolean isSender;
private boolean isGroup; private boolean isGroup;

查看文件

@ -1,11 +1,10 @@
package cn.org.bjca.trust.java.imserver.repository; package cn.org.bjca.trust.java.imserver.repository;
import cn.org.bjca.trust.java.imserver.entitys.Conversation; import cn.org.bjca.trust.java.imserver.im.msg.ConversationMessage;
import cn.org.bjca.trust.java.imserver.entitys.UserInfo;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
@Repository @Repository
public interface ConversationRepository extends JpaRepository<Conversation, String> { public interface ConversationRepository extends JpaRepository<ConversationMessage, String> {
} }