a
This commit is contained in:
@@ -653,21 +653,38 @@ func TransferMessageGroupMaster(ctx *jxcontext.Context, groupID int, userID stri
|
||||
|
||||
func SendSysMessage(ctx *jxcontext.Context, imMessageRecord *model.ImMessageRecord) (err error) {
|
||||
var (
|
||||
db = dao.GetDB()
|
||||
userID = imMessageRecord.UserID
|
||||
db = dao.GetDB()
|
||||
userID = imMessageRecord.UserID
|
||||
groupID = imMessageRecord.GroupID
|
||||
)
|
||||
if userID == "" {
|
||||
return fmt.Errorf("系统用户不存在!")
|
||||
}
|
||||
user, err := dao.GetUserByID(db, "user_id", userID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if user.Type != model.UserTypeBoss {
|
||||
return fmt.Errorf("抱歉只有系统管理员才能发系统消息!")
|
||||
if groupID != model.SysGroupID {
|
||||
return fmt.Errorf("只能给系统组发消息!")
|
||||
}
|
||||
// user, err := dao.GetUserByID(db, "user_id", userID)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if user.Type != model.UserTypeBoss {
|
||||
// return fmt.Errorf("抱歉只有系统管理员才能发系统消息!")
|
||||
// }
|
||||
dao.WrapAddIDCULDEntity(imMessageRecord, ctx.GetUserName())
|
||||
err = dao.CreateEntity(db, imMessageRecord)
|
||||
//循环map客户端
|
||||
for _, client := range wsClient.Clients[groupID] {
|
||||
globals.SugarLogger.Debugf("msg %v", utils.Format4Output(imMessageRecord, false))
|
||||
if imMessageRecord.CreatedAt == utils.ZeroTimeValue {
|
||||
imMessageRecord.CreatedAt = time.Now()
|
||||
}
|
||||
err = client.WriteJSON(imMessageRecord)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("client.WriteJSON error: %v", err)
|
||||
client.Close() //关闭
|
||||
// delete(wsClient.Clients[msg.GroupID], userID)
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user