|
|
|
@ -10,7 +10,10 @@ import (
|
|
|
|
|
"Open_IM/pkg/common/constant"
|
|
|
|
|
"Open_IM/pkg/common/db"
|
|
|
|
|
pbMsg "Open_IM/pkg/proto/chat"
|
|
|
|
|
"Open_IM/pkg/proto/sdk_ws"
|
|
|
|
|
"Open_IM/pkg/utils"
|
|
|
|
|
"github.com/golang/protobuf/jsonpb"
|
|
|
|
|
"github.com/golang/protobuf/proto"
|
|
|
|
|
"github.com/jinzhu/copier"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
@ -27,7 +30,19 @@ func InsertMessageToChatLog(msg pbMsg.MsgDataToMQ) error {
|
|
|
|
|
case constant.SingleChatType:
|
|
|
|
|
chatLog.RecvID = msg.MsgData.RecvID
|
|
|
|
|
}
|
|
|
|
|
chatLog.Content = msg.MsgData.Content
|
|
|
|
|
if msg.MsgData.ContentType >= constant.NotificationBegin && msg.MsgData.ContentType <= constant.NotificationEnd {
|
|
|
|
|
var tips server_api_params.TipsComm
|
|
|
|
|
_ = proto.Unmarshal(msg.MsgData.Content, &tips)
|
|
|
|
|
marshaler := jsonpb.Marshaler{
|
|
|
|
|
OrigName: true,
|
|
|
|
|
EnumsAsInts: false,
|
|
|
|
|
EmitDefaults: false,
|
|
|
|
|
}
|
|
|
|
|
chatLog.Content, _ = marshaler.MarshalToString(&tips)
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
chatLog.Content = string(msg.MsgData.Content)
|
|
|
|
|
}
|
|
|
|
|
chatLog.CreateTime = utils.UnixMillSecondToTime(msg.MsgData.CreateTime)
|
|
|
|
|
chatLog.SendTime = utils.UnixMillSecondToTime(msg.MsgData.SendTime)
|
|
|
|
|
return dbConn.Table("chat_logs").Create(chatLog).Error
|
|
|
|
|