a
This commit is contained in:
@@ -654,22 +654,30 @@ 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
|
||||||
groupID = imMessageRecord.GroupID
|
groupID = imMessageRecord.GroupID
|
||||||
)
|
)
|
||||||
if groupID != model.SysGroupID {
|
if groupID != model.SysGroupID {
|
||||||
return fmt.Errorf("只能给系统组发消息!")
|
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客户端
|
if userID == "" {
|
||||||
for _, client := range wsClient.Clients[groupID] {
|
//循环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)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
client := wsClient.Clients[groupID][userID]
|
||||||
globals.SugarLogger.Debugf("msg %v", utils.Format4Output(imMessageRecord, false))
|
globals.SugarLogger.Debugf("msg %v", utils.Format4Output(imMessageRecord, false))
|
||||||
if imMessageRecord.CreatedAt == utils.ZeroTimeValue {
|
if imMessageRecord.CreatedAt == utils.ZeroTimeValue {
|
||||||
imMessageRecord.CreatedAt = time.Now()
|
imMessageRecord.CreatedAt = time.Now()
|
||||||
|
|||||||
Reference in New Issue
Block a user