From 9b220dbc68864250453549e1707102e55e8626ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Wed, 11 Nov 2020 14:45:12 +0800 Subject: [PATCH] imrecord userid --- business/jxstore/cms/user2.go | 2 +- business/model/dao/dao_user.go | 8 +------- business/model/message.go | 2 ++ business/model/user.go | 6 ++++++ controllers/event_controller.go | 6 +++++- 5 files changed, 15 insertions(+), 9 deletions(-) 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() //关闭