This commit is contained in:
苏尹岚
2020-12-30 14:17:21 +08:00
parent a2396a4876
commit 84de6377eb

View File

@@ -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
}