Merge remote-tracking branch 'origin/errcode' into errcode

# Conflicts:
#	internal/rpc/friend/friend.go
#	pkg/common/db/mysql_model/im_mysql_model/user_black_list_model.go
This commit is contained in:
skiffer-git
2023-01-04 17:23:27 +08:00
7 changed files with 148 additions and 39 deletions
+5 -3
View File
@@ -2,8 +2,10 @@ package constant
import (
sdkws "Open_IM/pkg/proto/sdk_ws"
"context"
"encoding/json"
"errors"
"gorm.io/gorm"
)
@@ -83,13 +85,13 @@ func ToAPIErrWithErr(err error) ErrInfo {
return ErrDefaultOther
}
func Error2CommResp(info ErrInfo, detailErr error) *sdkws.CommonResp {
func Error2CommResp(ctx context.Context, info ErrInfo, detailErrMsg string) *sdkws.CommonResp {
err := &sdkws.CommonResp{
ErrCode: info.ErrCode,
ErrMsg: info.ErrMsg,
}
if detailErr != nil {
err.DetailErrMsg = detailErr.Error()
if detailErrMsg != "" {
err.DetailErrMsg = detailErrMsg
}
return err
}
+57
View File
@@ -0,0 +1,57 @@
package db
import (
"gorm.io/gorm"
"time"
)
type GroupChao struct {
GroupID string `gorm:"column:group_id;primary_key;size:64" json:"groupID" binding:"required"`
GroupName string `gorm:"column:name;size:255" json:"groupName"`
Notification string `gorm:"column:notification;size:255" json:"notification"`
Introduction string `gorm:"column:introduction;size:255" json:"introduction"`
FaceURL string `gorm:"column:face_url;size:255" json:"faceURL"`
CreateTime time.Time `gorm:"column:create_time;index:create_time"`
Ex string `gorm:"column:ex" json:"ex;size:1024" json:"ex"`
Status int32 `gorm:"column:status"`
CreatorUserID string `gorm:"column:creator_user_id;size:64"`
GroupType int32 `gorm:"column:group_type"`
NeedVerification int32 `gorm:"column:need_verification"`
LookMemberInfo int32 `gorm:"column:look_member_info" json:"lookMemberInfo"`
ApplyMemberFriend int32 `gorm:"column:apply_member_friend" json:"applyMemberFriend"`
NotificationUpdateTime time.Time `gorm:"column:notification_update_time"`
NotificationUserID string `gorm:"column:notification_user_id;size:64"`
DB *gorm.DB `group:"-" json:"-"`
}
func (tb *GroupChao) FindBy(groupID string) (*GroupChao, error) {
return nil, nil
}
func (tb *GroupChao) FindIn(groupIDList []string) ([]GroupChao, error) {
return nil, nil
}
func (tb *GroupChao) Create(m *GroupChao) error {
return nil
}
func (tb *GroupChao) CreateList(m []GroupChao) error {
return nil
}
func (tb *GroupChao) Update(m *GroupChao) error {
return nil
}
func (tb *GroupChao) UpdateBy(groupID string, data map[string]interface{}) error {
return nil
}
func (tb *GroupChao) DeleteBy(groupID string) error {
return nil
}
func (tb *GroupChao) DeleteIn(groupID []string) error {
return nil
}
@@ -0,0 +1,55 @@
package im_mysql_model
import (
"Open_IM/pkg/common/db"
"Open_IM/pkg/utils"
"time"
)
type Group struct {
//`json:"operationID" binding:"required"`
//`protobuf:"bytes,1,opt,name=GroupID" json:"GroupID,omitempty"` `json:"operationID" binding:"required"`
GroupID string `gorm:"column:group_id;primary_key;size:64" json:"groupID" binding:"required"`
GroupName string `gorm:"column:name;size:255" json:"groupName"`
Notification string `gorm:"column:notification;size:255" json:"notification"`
Introduction string `gorm:"column:introduction;size:255" json:"introduction"`
FaceURL string `gorm:"column:face_url;size:255" json:"faceURL"`
CreateTime time.Time `gorm:"column:create_time;index:create_time"`
Ex string `gorm:"column:ex" json:"ex;size:1024" json:"ex"`
Status int32 `gorm:"column:status"`
CreatorUserID string `gorm:"column:creator_user_id;size:64"`
GroupType int32 `gorm:"column:group_type"`
NeedVerification int32 `gorm:"column:need_verification"`
LookMemberInfo int32 `gorm:"column:look_member_info" json:"lookMemberInfo"`
ApplyMemberFriend int32 `gorm:"column:apply_member_friend" json:"applyMemberFriend"`
NotificationUpdateTime time.Time `gorm:"column:notification_update_time"`
NotificationUserID string `gorm:"column:notification_user_id;size:64"`
}
func (*Group) Create(groupList []*Group) error {
return utils.Wrap(db.DB.MysqlDB.DefaultGormDB().Create(&groupList).Error, "")
}
func (*Group) Delete(groupList []*Group) error {
return nil
}
func (*Group) Update(groupList []*Group) error {
return nil
}
func (*Group) UpdateByMap(args map[*Group]map[string]interface{}) error {
return nil
}
func (*Group) Find(group []*Group) ([]*Group, error) {
return nil, nil
}
func (*Group) Take(group *Group) (*Group, error) {
return nil, nil
}
func (*Group) Count(group *Group) (int64, error) {
return 0, nil
}
@@ -2,11 +2,14 @@ package im_mysql_model
import (
"Open_IM/pkg/common/db"
"Open_IM/pkg/common/trace_log"
"Open_IM/pkg/utils"
"context"
"time"
)
func InsertInToUserBlackList(black Black) error {
func InsertInToUserBlackList(ctx context.Context, black db.Black) error {
defer trace_log.SetContextInfo(ctx)
black.CreateTime = time.Now()
return db.DB.MysqlDB.DefaultGormDB().Table("blacks").Create(black).Error
}
@@ -21,17 +24,17 @@ func InsertInToUserBlackList(black Black) error {
// }
func CheckBlack(ownerUserID, blockUserID string) error {
var black Black
var black db.Black
return db.DB.MysqlDB.DefaultGormDB().Table("blacks").Where("owner_user_id=? and block_user_id=?", ownerUserID, blockUserID).Find(&black).Error
}
func RemoveBlackList(ownerUserID, blockUserID string) error {
err := db.DB.MysqlDB.DefaultGormDB().Table("blacks").Where("owner_user_id=? and block_user_id=?", ownerUserID, blockUserID).Delete(Black{}).Error
err := db.DB.MysqlDB.DefaultGormDB().Table("blacks").Where("owner_user_id=? and block_user_id=?", ownerUserID, blockUserID).Delete(db.Black{}).Error
return utils.Wrap(err, "RemoveBlackList failed")
}
func GetBlackListByUserID(ownerUserID string) ([]Black, error) {
var blackListUsersInfo []Black
func GetBlackListByUserID(ownerUserID string) ([]db.Black, error) {
var blackListUsersInfo []db.Black
err := db.DB.MysqlDB.DefaultGormDB().Table("blacks").Where("owner_user_id=?", ownerUserID).Find(&blackListUsersInfo).Error
if err != nil {
return nil, err
+2 -1
View File
@@ -6,6 +6,7 @@ import (
commonDB "Open_IM/pkg/common/db"
"Open_IM/pkg/common/log"
"Open_IM/pkg/utils"
"context"
"time"
go_redis "github.com/go-redis/redis/v8"
@@ -139,7 +140,7 @@ func IsManagerUserID(OpUserID string) bool {
}
}
func CheckAccess(OpUserID string, OwnerUserID string) bool {
func CheckAccess(ctx context.Context, OpUserID string, OwnerUserID string) bool {
if utils.IsContain(OpUserID, config.Config.Manager.AppManagerUid) {
return true
}
+2 -1
View File
@@ -3,6 +3,7 @@ package trace_log
import (
"Open_IM/pkg/common/constant"
"Open_IM/pkg/common/log"
"Open_IM/pkg/utils"
"context"
"errors"
"fmt"
@@ -76,7 +77,7 @@ func SetContextInfo(ctx context.Context, funcName string, err error, args ...int
var funcInfo FuncInfo
funcInfo.Args = make(map[string]interface{})
argsHandle(args, funcInfo.Args)
funcInfo.FuncName = funcName
funcInfo.FuncName = utils.GetSelfFuncName()
funcInfo.Err = err
*t.Funcs = append(*t.Funcs, funcInfo)
}