refactor: statistics.go.

This commit is contained in:
2026-04-30 09:22:14 +08:00
parent 1dabed150b
commit f1dae98805
2 changed files with 22 additions and 10 deletions
+21 -10
View File
@@ -160,8 +160,8 @@ func (sc *StatisticsController) StatisticsByRegion(c *gin.Context) {
TotalDurationMs int64 TotalDurationMs int64
TotalOriginalFileSize int64 TotalOriginalFileSize int64
TotalCompressedSize int64 TotalCompressedSize int64
FirstUsedAt *time.Time FirstUsedAt *int64
LastUsedAt *time.Time LastUsedAt *int64
} }
var rawResults []rawStats var rawResults []rawStats
@@ -266,6 +266,17 @@ func (sc *StatisticsController) StatisticsByRegion(c *gin.Context) {
if regionID > 0 { if regionID > 0 {
kgName = kindergartenMap[regionID] kgName = kindergartenMap[regionID]
} }
var firstUsedAt, lastUsedAt *time.Time
if r.FirstUsedAt != nil {
t := time.UnixMilli(*r.FirstUsedAt)
firstUsedAt = &t
}
if r.LastUsedAt != nil {
t := time.UnixMilli(*r.LastUsedAt)
lastUsedAt = &t
}
item := regionStatisticsItem{ item := regionStatisticsItem{
RegionID: regionID, RegionID: regionID,
KindergartenName: kgName, KindergartenName: kgName,
@@ -280,8 +291,8 @@ func (sc *StatisticsController) StatisticsByRegion(c *gin.Context) {
TotalCompressedSize: r.TotalCompressedSize, TotalCompressedSize: r.TotalCompressedSize,
AnalysisTypeCounts: analysisTypeMap[regionID], AnalysisTypeCounts: analysisTypeMap[regionID],
SourceTypeCounts: sourceTypeMap[regionID], SourceTypeCounts: sourceTypeMap[regionID],
FirstUsedAt: r.FirstUsedAt, FirstUsedAt: firstUsedAt,
LastUsedAt: r.LastUsedAt, LastUsedAt: lastUsedAt,
} }
regions[strconv.FormatUint(uint64(regionID), 10)] = item regions[strconv.FormatUint(uint64(regionID), 10)] = item
@@ -295,14 +306,14 @@ func (sc *StatisticsController) StatisticsByRegion(c *gin.Context) {
overall.TotalOriginalFileSize += r.TotalOriginalFileSize overall.TotalOriginalFileSize += r.TotalOriginalFileSize
overall.TotalCompressedSize += r.TotalCompressedSize overall.TotalCompressedSize += r.TotalCompressedSize
if r.FirstUsedAt != nil { if firstUsedAt != nil {
if overall.FirstUsedAt == nil || r.FirstUsedAt.Before(*overall.FirstUsedAt) { if overall.FirstUsedAt == nil || firstUsedAt.Before(*overall.FirstUsedAt) {
overall.FirstUsedAt = r.FirstUsedAt overall.FirstUsedAt = firstUsedAt
} }
} }
if r.LastUsedAt != nil { if lastUsedAt != nil {
if overall.LastUsedAt == nil || r.LastUsedAt.After(*overall.LastUsedAt) { if overall.LastUsedAt == nil || lastUsedAt.After(*overall.LastUsedAt) {
overall.LastUsedAt = r.LastUsedAt overall.LastUsedAt = lastUsedAt
} }
} }
} }
+1
View File
@@ -90,6 +90,7 @@ func generateRecord() models.AIAnalysisRecord {
return models.AIAnalysisRecord{ return models.AIAnalysisRecord{
RegionID: &regionID, RegionID: &regionID,
SourceType: sourceType, SourceType: sourceType,
AnalysisType: analysisType,
InputTokens: inputTokens, InputTokens: inputTokens,
OutputTokens: outputTokens, OutputTokens: outputTokens,
InputSizeBytes: inputSizeBytes, InputSizeBytes: inputSizeBytes,