first commit

This commit is contained in:
2022-03-17 15:59:24 +08:00
commit 2b0debb847
592 changed files with 73946 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
package logic
import (
"context"
pb "gitlab.33.cn/chat/dtalk/service/group/api"
"gitlab.33.cn/chat/dtalk/service/group/model/biz"
"gitlab.33.cn/chat/dtalk/service/group/service"
)
type CreateGroupLogic struct {
ctx context.Context
svc *service.Service
}
func NewCreateGroupLogic(ctx context.Context, svc *service.Service) *CreateGroupLogic {
return &CreateGroupLogic{
ctx: ctx,
svc: svc,
}
}
// CreateGroup 创建群聊
func (l *CreateGroupLogic) CreateGroup(req *pb.CreateGroupReq) (*pb.CreateGroupResp, error) {
var err error
req.Owner.Id, err = FilteredMemberId(req.Owner.Id)
if err != nil {
return nil, err
}
group := &biz.GroupInfo{
GroupName: req.Name,
GroupType: int32(req.GroupType),
}
owner := &biz.GroupMember{
GroupMemberId: req.Owner.Id,
GroupMemberName: req.Owner.Name,
}
members := make([]*biz.GroupMember, 0, len(req.Members))
for _, member := range req.Members {
if member.Id == owner.GroupMemberId {
continue
}
member.Id, err = FilteredMemberId(member.Id)
if err != nil {
return nil, err
}
members = append(members, &biz.GroupMember{
GroupMemberId: member.Id,
GroupMemberName: member.Name,
})
}
groupId, err := l.svc.CreateGroup(l.ctx, group, owner, members)
if err != nil {
return nil, err
}
return &pb.CreateGroupResp{
GroupId: groupId,
}, nil
}