* fix:searchmsg

Signed-off-by: hanzhixiao <709674996@qq.com>

* fix:searchmsg

Signed-off-by: hanzhixiao <709674996@qq.com>

---------

Signed-off-by: hanzhixiao <709674996@qq.com>
pull/900/head
Alan 11 months ago committed by GitHub
parent 958afd6115
commit 8b365ae49f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -19,6 +19,7 @@ import (
"encoding/json" "encoding/json"
"errors" "errors"
"fmt" "fmt"
"github.com/OpenIMSDK/tools/log"
"time" "time"
"github.com/OpenIMSDK/protocol/msg" "github.com/OpenIMSDK/protocol/msg"
@ -1166,9 +1167,7 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa
if err != nil { if err != nil {
return 0, nil, err return 0, nil, err
} }
if len(msgsDocs) == 0 { log.ZDebug(ctx, "query mongoDB", "result", msgsDocs)
return 0, nil, errs.Wrap(mongo.ErrNoDocuments)
}
msgs := make([]*table.MsgInfoModel, 0) msgs := make([]*table.MsgInfoModel, 0)
for index := range msgsDocs { for index := range msgsDocs {
msgInfo := msgsDocs[index].Msg msgInfo := msgsDocs[index].Msg
@ -1207,7 +1206,9 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa
} }
start := (req.Pagination.PageNumber - 1) * req.Pagination.ShowNumber start := (req.Pagination.PageNumber - 1) * req.Pagination.ShowNumber
n := int32(len(msgs)) n := int32(len(msgs))
if start+req.Pagination.ShowNumber < n { if start >= n {
return n, []*table.MsgInfoModel{}, nil
} else if start+req.Pagination.ShowNumber < n {
msgs = msgs[start : start+req.Pagination.ShowNumber] msgs = msgs[start : start+req.Pagination.ShowNumber]
} else { } else {
msgs = msgs[start:] msgs = msgs[start:]

Loading…
Cancel
Save