diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 1192155ea..ba5a348f9 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -94,7 +94,7 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR } //to group member - groupMember := imdb.GroupMember{GroupID: groupId, RoleLevel: 1} + groupMember := imdb.GroupMember{GroupID: groupId, RoleLevel: constant.GroupOwner} utils.CopyStructFields(&groupMember, us) err = im_mysql_model.InsertIntoGroupMember(groupMember) if err != nil { @@ -114,7 +114,7 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR log.NewError(req.OperationID, "FindUserByUID failed ", err.Error(), user.UserID) continue } - if user.RoleLevel == 1 { + if user.RoleLevel == constant.GroupOwner { log.NewError(req.OperationID, "only one owner, failed ", user) continue } @@ -224,7 +224,7 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite var toInsertInfo imdb.GroupMember utils.CopyStructFields(&toInsertInfo, toUserInfo) toInsertInfo.GroupID = req.GroupID - toInsertInfo.RoleLevel = 0 + toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers err = imdb.InsertIntoGroupMember(toInsertInfo) if err != nil { log.NewError(req.OperationID, "InsertIntoGroupMember failed ", req.GroupID, toUserInfo.UserID, toUserInfo.Nickname, toUserInfo.FaceUrl) @@ -331,7 +331,7 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou groupOwnerUserID := "" for _, v := range ownerList { - if v.RoleLevel == 1 { + if v.RoleLevel == constant.GroupOwner { groupOwnerUserID = v.UserID } } diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index d8aa4a965..aa2f12c45 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -3,12 +3,12 @@ package constant const ( //group admin - OrdinaryMember = 0 - GroupOwner = 1 - Administrator = 2 + // OrdinaryMember = 0 + // GroupOwner = 1 + // Administrator = 2 //group application - Application = 0 - AgreeApplication = 1 + // Application = 0 + // AgreeApplication = 1 //friend related BlackListFlag = 1 @@ -117,4 +117,16 @@ var ContentType2PushContent = map[int64]string{ Common: "你收到一条新消息", } +const ( + AppOrdinaryUsers = 1 + AppAdmin = 2 + + GroupOrdinaryUsers = 1 + GroupOwner = 2 + GroupAdmin = 3 + + Male = 1 + Female = 2 +) + const FriendAcceptTip = "You have successfully become friends, so start chatting" diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index 84175c0a1..bcc087fb0 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -1,6 +1,7 @@ package im_mysql_model import ( + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/db" "time" ) @@ -23,6 +24,9 @@ func InsertIntoGroupMember(toInsertInfo GroupMember) error { return err } toInsertInfo.JoinSource = time.Now() + if toInsertInfo.RoleLevel == 0 { + toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers + } err = dbConn.Table("group_member").Create(toInsertInfo).Error if err != nil { return err @@ -138,7 +142,7 @@ func GetGroupOwnerInfoByGroupID(groupID string) (*GroupMember, error) { return nil, err } for _, v := range omList { - if v.RoleLevel == 1 { + if v.RoleLevel == constant.GroupOwner { return &v, nil } } diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_request_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_request_model.go index e8f64208b..cd6cf641f 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_request_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_request_model.go @@ -1,6 +1,7 @@ package im_mysql_model import ( + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/db" "time" ) @@ -88,7 +89,7 @@ func GetGroupApplicationList(userID string) ([]GroupRequest, error) { return nil, err } for _, v := range memberList { - if v.RoleLevel > 0 { + if v.RoleLevel > constant.GroupOrdinaryUsers { list, err := GetGroupRequestByGroupID(v.GroupID) if err != nil { continue diff --git a/pkg/common/db/mysql_model/im_mysql_model/user_model.go b/pkg/common/db/mysql_model/im_mysql_model/user_model.go index 5dd6fb53f..613698429 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/user_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/user_model.go @@ -2,6 +2,7 @@ package im_mysql_model import ( "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/db" "Open_IM/pkg/utils" "fmt" @@ -15,13 +16,13 @@ func init() { user, err := GetUserByUserID(v) if err != nil { fmt.Println("GetUserByUserID failed ", err.Error(), v, user) - }else{ + } else { continue } var appMgr User appMgr.UserID = v appMgr.Nickname = "AppManager" + utils.IntToString(k+1) - appMgr.AppMangerLevel = 2 + appMgr.AppMangerLevel = constant.AppAdmin err = UserRegister(appMgr) if err != nil { fmt.Println("AppManager insert error", err.Error()) @@ -36,7 +37,9 @@ func UserRegister(user User) error { return err } user.CreateTime = time.Now() - + if user.AppMangerLevel == 0 { + user.AppMangerLevel = constant.AppOrdinaryUsers + } err = dbConn.Table("user").Create(&user).Error if err != nil { return err