diff --git a/business/jxstore/cms/user2.go b/business/jxstore/cms/user2.go index 53df8cb3c..e96fc01cc 100644 --- a/business/jxstore/cms/user2.go +++ b/business/jxstore/cms/user2.go @@ -274,7 +274,7 @@ func GetUsers(ctx *jxcontext.Context, userType int, keyword string, userIDs []st return pagedInfo, err } -func GetUser(ctx *jxcontext.Context, userID string) (user *dao.GetUserResult, err error) { +func GetUser(ctx *jxcontext.Context, userID string) (user *model.GetUserResult, err error) { return dao.GetUser(dao.GetDB(), userID) } diff --git a/business/model/dao/dao_user.go b/business/model/dao/dao_user.go index 75fba4507..f1b134514 100644 --- a/business/model/dao/dao_user.go +++ b/business/model/dao/dao_user.go @@ -98,13 +98,7 @@ func GetUsers(db *DaoDB, userType int, keyword string, userIDs, userID2s, mobile return userList, totalCount, err } -type GetUserResult struct { - model.User - AcceptOrderCount int `json:"acceptOrderCount"` - FinishedOrderCount int `json:"finishedOrderCount"` -} - -func GetUser(db *DaoDB, userID string) (user *GetUserResult, err error) { +func GetUser(db *DaoDB, userID string) (user *model.GetUserResult, err error) { sqlParams := []interface{}{} sql := ` SELECT diff --git a/business/model/message.go b/business/model/message.go index 07bda61f0..af5f74a9b 100644 --- a/business/model/message.go +++ b/business/model/message.go @@ -63,6 +63,8 @@ type ImMessageRecord struct { GroupID int `orm:"column(group_id)" json:"groupID"` //组ID Content string `orm:"type(text)" json:"content"` //消息内容 MessageType int `json:"messageType"` //消息类型,文字,图片 + + UserInfo *GetUserResult `orm:"-" json:"userInfo"` } func (*ImMessageRecord) TableIndex() [][]string { diff --git a/business/model/user.go b/business/model/user.go index 797b1fe21..98e164928 100644 --- a/business/model/user.go +++ b/business/model/user.go @@ -249,3 +249,9 @@ func (*RoleMenu) TableUnique() [][]string { []string{"MenuID", "RoleID", "DeletedAt"}, } } + +type GetUserResult struct { + User + AcceptOrderCount int `json:"acceptOrderCount"` + FinishedOrderCount int `json:"finishedOrderCount"` +} diff --git a/controllers/event_controller.go b/controllers/event_controller.go index 895b4c518..b80210e85 100644 --- a/controllers/event_controller.go +++ b/controllers/event_controller.go @@ -162,7 +162,11 @@ func handleMessages() { for _, client := range clients[groupID] { //把通道中的消息发送给客户端 globals.SugarLogger.Debugf("msg %v", utils.Format4Output(mmsg, false)) - err := client.WriteJSON(mmsg) + user, err := dao.GetUser(dao.GetDB(), mmsg.UserID) + if err == nil { + mmsg.UserInfo = user + } + err = client.WriteJSON(mmsg) if err != nil { globals.SugarLogger.Debugf("client.WriteJSON error: %v", err) client.Close() //关闭