diff --git a/business/jxstore/event/event.go b/business/jxstore/event/event.go index bb989223a..59f28371a 100644 --- a/business/jxstore/event/event.go +++ b/business/jxstore/event/event.go @@ -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 } diff --git a/controllers/event.go b/controllers/event.go index 1a8ca3558..0850dcb1a 100644 --- a/controllers/event.go +++ b/controllers/event.go @@ -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 }) }