创建聊天组

This commit is contained in:
苏尹岚
2020-10-21 11:50:06 +08:00
parent 9861f7a774
commit 2c57b36537
2 changed files with 11 additions and 6 deletions

View File

@@ -1,6 +1,7 @@
package event
import (
"encoding/json"
"fmt"
"regexp"
"strings"
@@ -126,7 +127,7 @@ func GetOperateEvents(ctx *jxcontext.Context, name string, apiFunctions []string
return pageInfo, err
}
func CreateMessageGroup(ctx *jxcontext.Context, userID, userID2 string) (err error) {
func CreateMessageGroup(ctx *jxcontext.Context, userID, userID2 string) (messageGroupResult *dao.GetMessageGroupsResult, err error) {
var (
db = dao.GetDB()
groupID int
@@ -134,14 +135,14 @@ func CreateMessageGroup(ctx *jxcontext.Context, userID, userID2 string) (err err
if userID2 != "" {
messageGroups, err := dao.GetMessageGroups(db, userID, model.GroupMemberTypeNormal, userID2)
if len(messageGroups) > 0 && messageGroups[0].MessageGroupMembers != nil {
return err
return messageGroups[0], err
}
user, err := dao.GetUserByID(db, "user_id", userID2)
if err != nil {
return err
return nil, err
}
if user == nil {
return fmt.Errorf("无法找到要联系的用户!")
return nil, fmt.Errorf("无法找到要联系的用户!")
}
for {
groupID = jxutils.GenRand6()
@@ -169,6 +170,10 @@ func CreateMessageGroup(ctx *jxcontext.Context, userID, userID2 string) (err err
dao.WrapAddIDCULDEntity(messageGroupMember, ctx.GetUserName())
dao.CreateEntity(db, messageGroup)
dao.CreateEntity(db, messageGroupMember)
if data, err := json.Marshal(messageGroup); err == nil {
json.Unmarshal(data, &messageGroup)
messageGroupResult.MessageGroupMembers = append(messageGroupResult.MessageGroupMembers, messageGroupMember)
}
return err
}
return messageGroupResult, err
}

View File

@@ -197,7 +197,7 @@ func (c *EventController) GetImMessageRecord() {
// @router /CreateMessageGroup [post]
func (c *EventController) CreateMessageGroup() {
c.callCreateMessageGroup(func(params *tEventCreateMessageGroupParams) (retVal interface{}, errCode string, err error) {
err = event.CreateMessageGroup(params.Ctx, params.UserID, params.UserID2)
retVal, err = event.CreateMessageGroup(params.Ctx, params.UserID, params.UserID2)
return retVal, "", err
})
}