diff --git a/business/jxstore/event/event.go b/business/jxstore/event/event.go index f9923aa6c..017b1b024 100644 --- a/business/jxstore/event/event.go +++ b/business/jxstore/event/event.go @@ -426,12 +426,24 @@ func GetMessageGroupByUser(ctx *jxcontext.Context, userID string) (messageGroupR v.Name = user.Name } } - //最后一条记录和时间和人 - var imMessageRecord *model.ImMessageRecord - sql := ` - SELECT * FROM im_message_record WHERE group_id = ? ORDER BY created_at DESC LIMIT 1 - ` - sqlParams := []interface{}{v.GroupID} + var ( + imMessageRecord *model.ImMessageRecord + sql string + sqlParams = []interface{}{} + ) + if v.GroupID != model.SysGroupID { + //最后一条记录和时间和人 + sql = ` + SELECT * FROM im_message_record WHERE group_id = ? ORDER BY created_at DESC LIMIT 1 + ` + sqlParams = append(sqlParams, v.GroupID) + } else { + //最后一条记录和时间和人 + sql = ` + SELECT * FROM im_message_record WHERE group_id = ? AND to_user_id = ? ORDER BY created_at DESC LIMIT 1 + ` + sqlParams = append(sqlParams, v.GroupID, v.UserID) + } if err = dao.GetRow(db, &imMessageRecord, sql, sqlParams); err == nil { v.LastTime = imMessageRecord.CreatedAt v.LastContent = imMessageRecord.Content