mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-05-04 09:05:59 +08:00
Merge remote-tracking branch 'origin/errcode' into errcode
This commit is contained in:
Vendored
+1
-1
@@ -87,7 +87,7 @@ func getCache[T any](ctx context.Context, rcClient *rockscache.Client, key strin
|
||||
return t, nil
|
||||
}
|
||||
if v == "" {
|
||||
return t, errs.ErrRecordNotFound
|
||||
return t, errs.ErrRecordNotFound.Wrap("cache is not found")
|
||||
}
|
||||
err = json.Unmarshal([]byte(v), &t)
|
||||
if err != nil {
|
||||
|
||||
@@ -197,63 +197,63 @@ func (g *groupDatabase) FindGroupMember(ctx context.Context, groupIDs []string,
|
||||
}
|
||||
|
||||
func (g *groupDatabase) PageGroupMember(ctx context.Context, groupIDs []string, userIDs []string, roleLevels []int32, pageNumber, showNumber int32) (total uint32, totalGroupMembers []*relationTb.GroupMemberModel, err error) {
|
||||
//if len(roleLevels) == 0 {
|
||||
// if pageNumber == 0 || showNumber == 0 {
|
||||
// if len(groupIDs) == 0 {
|
||||
// for _, userID := range userIDs {
|
||||
// groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// for _, groupID := range groupIDs {
|
||||
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||
// }
|
||||
// for _, groupID := range groupIDs {
|
||||
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, userIDs)
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
// }
|
||||
// return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||
// } else {
|
||||
// if len(groupIDs) == 0 {
|
||||
// for _, userID := range userIDs {
|
||||
// groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// groupIDs = utils.Paginate(groupIDs, int(pageNumber), int(showNumber))
|
||||
// for _, groupID := range groupIDs {
|
||||
// groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
// }
|
||||
// }
|
||||
// return uint32(len(groupIDs)), totalGroupMembers, nil
|
||||
// }
|
||||
// var totalAll uint32
|
||||
// for _, groupID := range groupIDs {
|
||||
// total, groupMembers, err := g.cache.GetGroupMembersPage(ctx, groupID, userIDs, pageNumber, showNumber)
|
||||
// if err != nil {
|
||||
// return 0, nil, err
|
||||
// }
|
||||
// totalAll += total
|
||||
// totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
// }
|
||||
// return totalAll, totalGroupMembers, nil
|
||||
// }
|
||||
//}
|
||||
if len(roleLevels) == 0 {
|
||||
if pageNumber == 0 || showNumber == 0 {
|
||||
if len(groupIDs) == 0 {
|
||||
for _, userID := range userIDs {
|
||||
groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
for _, groupID := range groupIDs {
|
||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
}
|
||||
}
|
||||
|
||||
return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||
}
|
||||
for _, groupID := range groupIDs {
|
||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, userIDs)
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
}
|
||||
return uint32(len(totalGroupMembers)), totalGroupMembers, nil
|
||||
} else {
|
||||
if len(groupIDs) == 0 {
|
||||
for _, userID := range userIDs {
|
||||
groupIDs, err := g.cache.GetJoinedGroupIDs(ctx, userID)
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
groupIDs = utils.Paginate(groupIDs, int(pageNumber), int(showNumber))
|
||||
for _, groupID := range groupIDs {
|
||||
groupMembers, err := g.cache.GetGroupMembersInfo(ctx, groupID, []string{userID})
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
}
|
||||
}
|
||||
return uint32(len(groupIDs)), totalGroupMembers, nil
|
||||
}
|
||||
var totalAll uint32
|
||||
for _, groupID := range groupIDs {
|
||||
total, groupMembers, err := g.cache.GetGroupMembersPage(ctx, groupID, userIDs, pageNumber, showNumber)
|
||||
if err != nil {
|
||||
return 0, nil, err
|
||||
}
|
||||
totalAll += total
|
||||
totalGroupMembers = append(totalGroupMembers, groupMembers...)
|
||||
}
|
||||
return totalAll, totalGroupMembers, nil
|
||||
}
|
||||
}
|
||||
return g.groupMemberDB.SearchMember(ctx, "", groupIDs, userIDs, roleLevels, pageNumber, showNumber)
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ package relation
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation"
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/utils"
|
||||
"gorm.io/gorm"
|
||||
@@ -77,7 +78,7 @@ func (f *FriendGorm) FindOwnerFriends(ctx context.Context, ownerUserID string, p
|
||||
if err != nil {
|
||||
return nil, 0, utils.Wrap(err, "")
|
||||
}
|
||||
err = utils.Wrap(f.db(ctx).Where("owner_user_id = ? ", ownerUserID).Limit(int(showNumber)).Offset(int(pageNumber*showNumber)).Find(&friends).Error, "")
|
||||
err = utils.Wrap(f.db(ctx).Where("owner_user_id = ? ", ownerUserID).Limit(int(showNumber)).Offset(int((pageNumber-1)*showNumber)).Find(&friends).Error, "")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -87,7 +88,7 @@ func (f *FriendGorm) FindInWhoseFriends(ctx context.Context, friendUserID string
|
||||
if err != nil {
|
||||
return nil, 0, utils.Wrap(err, "")
|
||||
}
|
||||
err = utils.Wrap(f.db(ctx).Where("friend_user_id = ? ", friendUserID).Limit(int(showNumber)).Offset(int(pageNumber*showNumber)).Find(&friends).Error, "")
|
||||
err = utils.Wrap(f.db(ctx).Where("friend_user_id = ? ", friendUserID).Limit(int(showNumber)).Offset(int((pageNumber-1)*showNumber)).Find(&friends).Error, "")
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ func (u *UserGorm) Page(ctx context.Context, pageNumber, showNumber int32) (user
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = utils.Wrap(u.db(ctx).Limit(int(showNumber)).Offset(int(pageNumber*showNumber)).Find(&users).Order("create_time DESC").Error, "")
|
||||
err = utils.Wrap(u.db(ctx).Limit(int(showNumber)).Offset(int((pageNumber-1)*showNumber)).Find(&users).Order("create_time DESC").Error, "")
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ package kafka
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/Shopify/sarama"
|
||||
)
|
||||
|
||||
@@ -28,7 +29,6 @@ func NewMConsumerGroup(consumerConfig *MConsumerGroupConfig, topics, addrs []str
|
||||
config.Version = consumerConfig.KafkaVersion
|
||||
config.Consumer.Offsets.Initial = consumerConfig.OffsetsInitial
|
||||
config.Consumer.Return.Errors = consumerConfig.IsReturnErr
|
||||
//fmt.Println("init address is ", addrs, "topics is ", topics)
|
||||
consumerGroup, err := sarama.NewConsumerGroup(addrs, groupID, config)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
|
||||
@@ -128,6 +128,7 @@ func (l *ZapLogger) cores(isStdout bool, isJson bool, logLocation string, rotate
|
||||
}
|
||||
if isStdout {
|
||||
cores = append(cores, zapcore.NewCore(fileEncoder, zapcore.Lock(os.Stdout), zap.NewAtomicLevelAt(l.level)))
|
||||
cores = append(cores, zapcore.NewCore(fileEncoder, zapcore.Lock(os.Stderr), zap.NewAtomicLevelAt(l.level)))
|
||||
}
|
||||
return zap.WrapCore(func(c zapcore.Core) zapcore.Core {
|
||||
return zapcore.NewTee(cores...)
|
||||
|
||||
@@ -4,6 +4,8 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant"
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/log"
|
||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||
@@ -11,7 +13,6 @@ import (
|
||||
"google.golang.org/grpc"
|
||||
"google.golang.org/grpc/metadata"
|
||||
"google.golang.org/grpc/status"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func GrpcClient() grpc.DialOption {
|
||||
@@ -29,10 +30,10 @@ func rpcClientInterceptor(ctx context.Context, method string, req, resp interfac
|
||||
}
|
||||
err = invoker(ctx, method, req, resp, cc, opts...)
|
||||
if err == nil {
|
||||
log.ZInfo(ctx, "rpc client resp", "funcName", method, "resp", rpcString(resp))
|
||||
// log.ZInfo(ctx, "rpc client resp", "funcName", method, "resp", rpcString(resp))
|
||||
return nil
|
||||
}
|
||||
log.ZError(ctx, "rpc resp error", err)
|
||||
// log.ZError(ctx, "rpc resp error", err)
|
||||
rpcErr, ok := err.(interface{ GRPCStatus() *status.Status })
|
||||
if !ok {
|
||||
return errs.ErrInternalServer.Wrap(err.Error())
|
||||
|
||||
Reference in New Issue
Block a user