diff --git a/dao/im.go b/dao/im.go index 38ec8ad..fbe3cfe 100644 --- a/dao/im.go +++ b/dao/im.go @@ -180,9 +180,14 @@ func FindUserSessionCount(userID, sessionType int) int64 { return sessionCount } +type SessionOrMessageCount struct { + Date string `gorm:"column:date"` + Count int64 `gorm:"column:count"` +} + // 获取最近一周每天的会话数 -func FindSessionCountByDate() ([]int64, error) { - var sessionCounts []int64 +func FindSessionCountByDate() ([]SessionOrMessageCount, error) { + var sessionCounts []SessionOrMessageCount var db2 *gorm.DB if proto.Config.SERVER_SQL_LOG { db2 = DB.Debug() @@ -196,8 +201,8 @@ func FindSessionCountByDate() ([]int64, error) { } // 获取最近一周每天的消息数 -func FindMessageCountByDate() ([]int64, error) { - var messageCounts []int64 +func FindMessageCountByDate() ([]SessionOrMessageCount, error) { + var messageCounts []SessionOrMessageCount var db2 *gorm.DB if proto.Config.SERVER_SQL_LOG { db2 = DB.Debug() diff --git a/proto/tool.go b/proto/tool.go index e4ea6dc..cab0411 100644 --- a/proto/tool.go +++ b/proto/tool.go @@ -10,8 +10,12 @@ type DashBoardStatisticsSt struct { // 统计过去一周每天的会话数、消息数 type DashBoardStatisticsWeekSt struct { - SessionCount map[int]int64 `json:"session_count"` - MessageCount map[int]int64 `json:"message_count"` + SessionCount []DashBoardStatisticsWeekCount `json:"session_count"` + MessageCount []DashBoardStatisticsWeekCount `json:"message_count"` +} + +type DashBoardStatisticsWeekCount struct { + Count int64 `json:"count"` } type DashBoardStatisticsResp struct { diff --git a/service/toolService.go b/service/toolService.go index 0d6f14d..407b7df 100644 --- a/service/toolService.go +++ b/service/toolService.go @@ -138,7 +138,7 @@ func GetRecent7DaysMessageSessionCount() (proto.DashBoardStatisticsWeekSt, error return res, err } for i := 0; i < len(SessionCounts); i++ { - res.SessionCount[i] = SessionCounts[i] + res.SessionCount = append(res.SessionCount, proto.DashBoardStatisticsWeekCount{Count: SessionCounts[i].Count}) } MessageCounts, err := dao.FindMessageCountByDate() if err != nil { @@ -146,7 +146,7 @@ func GetRecent7DaysMessageSessionCount() (proto.DashBoardStatisticsWeekSt, error return res, err } for i := 0; i < len(MessageCounts); i++ { - res.MessageCount[i] = MessageCounts[i] + res.MessageCount = append(res.MessageCount, proto.DashBoardStatisticsWeekCount{Count: MessageCounts[i].Count}) } return res, nil }