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) { func SendSysMessage(ctx *jxcontext.Context, imMessageRecord *model.ImMessageRecord) (err error) {
var ( var (
db = dao.GetDB() db = dao.GetDB()
userID = imMessageRecord.UserID userID = imMessageRecord.UserID
groupID = imMessageRecord.GroupID
) )
if userID == "" { if userID == "" {
return fmt.Errorf("系统用户不存在!") return fmt.Errorf("系统用户不存在!")
} }
user, err := dao.GetUserByID(db, "user_id", userID) if groupID != model.SysGroupID {
if err != nil { return fmt.Errorf("只能给系统组发消息!")
return err
}
if user.Type != model.UserTypeBoss {
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()) dao.WrapAddIDCULDEntity(imMessageRecord, ctx.GetUserName())
err = dao.CreateEntity(db, imMessageRecord) 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 return err
} }