diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 150da4ae1..8cc24550d 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -165,14 +165,14 @@ func (m *msgServer) messageVerification(ctx context.Context, data *msg.SendMsgRe } if revokeMessage.RevokerID != revokeMessage.SourceMessageSendID { - resp, err := m.MsgInterface.GetSuperGroupMsg(ctx, data.MsgData.GroupID, revokeMessage.Seq) + resp, err := m.MsgInterface.GetSuperGroupMsgBySeqs(ctx, data.MsgData.GroupID, []int64{int64(revokeMessage.Seq)}) if err != nil { return nil, err } - if resp.ClientMsgID == revokeMessage.ClientMsgID && resp.Seq == revokeMessage.Seq { - revokeMessage.SourceMessageSendTime = resp.SendTime - revokeMessage.SourceMessageSenderNickname = resp.SenderNickname - revokeMessage.SourceMessageSendID = resp.SendID + if resp[0].ClientMsgID == revokeMessage.ClientMsgID && resp[0].Seq == int64(revokeMessage.Seq) { + revokeMessage.SourceMessageSendTime = resp[0].SendTime + revokeMessage.SourceMessageSenderNickname = resp[0].SenderNickname + revokeMessage.SourceMessageSendID = resp[0].SendID data.MsgData.Content = []byte(utils.StructToJsonString(revokeMessage)) } else { return nil, constant.ErrData.Wrap("MsgData") diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 307244349..90e6d897c 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -33,7 +33,7 @@ type MsgInterface interface { DelMsgBySeqs(ctx context.Context, userID string, seqs []int64) (totalUnExistSeqs []int64, err error) // 通过seqList获取db中写扩散消息 GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) - // 通过seqList获取大群在db里面的消息 + // 通过seqList获取大群在db里面的消息 没找到返回错误 GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) // 删除用户所有消息/cache/db然后重置seq CleanUpUserMsg(ctx context.Context, userID string) error