diff --git a/internal/db/models/server_bandwidth_stat_dao.go b/internal/db/models/server_bandwidth_stat_dao.go index f0cc52f8..4094dcee 100644 --- a/internal/db/models/server_bandwidth_stat_dao.go +++ b/internal/db/models/server_bandwidth_stat_dao.go @@ -834,11 +834,6 @@ func (this *ServerBandwidthStatDAO) HasFullData(tx *dbs.Tx, serverId int64, mont return false, errors.New("invalid month '" + month + "'") } - // 仅供调试 - if Tea.IsTesting() { - return true, nil - } - fullDataLocker.Lock() hasData, ok := fullDataMap[monthKey] fullDataLocker.Unlock() diff --git a/internal/db/models/server_daily_stat_dao.go b/internal/db/models/server_daily_stat_dao.go index de6a13cb..38801586 100644 --- a/internal/db/models/server_daily_stat_dao.go +++ b/internal/db/models/server_daily_stat_dao.go @@ -481,7 +481,7 @@ func (this *ServerDailyStatDAO) compatFindDailyStats(tx *dbs.Tx, serverId int64, dayMap := map[string]*ServerDailyStat{} // day => Stat for _, one := range ones { - stat := one.(*ServerDailyStat) + var stat = one.(*ServerDailyStat) dayMap[stat.Day] = stat } days, err := utils.RangeDays(dayFrom, dayTo) @@ -656,9 +656,11 @@ func (this *ServerDailyStatDAO) compatFindHourlyStats(tx *dbs.Tx, serverId int64 return nil, err } - hourMap := map[string]*ServerDailyStat{} // hour => Stat + var hourMap = map[string]*ServerDailyStat{} // hour => Stat for _, one := range ones { - stat := one.(*ServerDailyStat) + var stat = one.(*ServerDailyStat) + stat.Day = stat.Hour[:8] + stat.TimeFrom = stat.Hour[8:] + "00" hourMap[stat.Hour] = stat } hours, err := utils.RangeHours(hourFrom, hourTo) @@ -670,7 +672,11 @@ func (this *ServerDailyStatDAO) compatFindHourlyStats(tx *dbs.Tx, serverId int64 if ok { result = append(result, stat) } else { - result = append(result, &ServerDailyStat{Hour: hour}) + result = append(result, &ServerDailyStat{ + Hour: hour, + Day: hour[:8], + TimeFrom: hour[8:] + "00", + }) } } diff --git a/internal/db/models/server_daily_stat_model_ext.go b/internal/db/models/server_daily_stat_model_ext.go index 7ae50c50..a1d28a98 100644 --- a/internal/db/models/server_daily_stat_model_ext.go +++ b/internal/db/models/server_daily_stat_model_ext.go @@ -1,12 +1,18 @@ package models func (this *ServerDailyStat) AsUserBandwidthStat() *UserBandwidthStat { + var timeAt = "0000" + if len(this.TimeFrom) >= 4 { + timeAt = this.TimeFrom[:4] + } else if len(this.Hour) > 8 { + timeAt = this.Hour[8:] + "00" + } return &UserBandwidthStat{ Id: 0, UserId: uint64(this.UserId), RegionId: this.RegionId, Day: this.Day, - TimeAt: this.TimeFrom[:4], + TimeAt: timeAt, Bytes: this.Bytes / 300, TotalBytes: this.Bytes, AvgBytes: this.Bytes / 300, @@ -19,13 +25,19 @@ func (this *ServerDailyStat) AsUserBandwidthStat() *UserBandwidthStat { } func (this *ServerDailyStat) AsServerBandwidthStat() *ServerBandwidthStat { + var timeAt = "0000" + if len(this.TimeFrom) >= 4 { + timeAt = this.TimeFrom[:4] + } else if len(this.Hour) > 8 { + timeAt = this.Hour[8:] + "00" + } return &ServerBandwidthStat{ Id: 0, UserId: uint64(this.UserId), ServerId: uint64(this.ServerId), RegionId: this.RegionId, Day: this.Day, - TimeAt: this.TimeFrom[:4], + TimeAt: timeAt, Bytes: this.Bytes / 300, TotalBytes: this.Bytes, AvgBytes: this.Bytes / 300, diff --git a/internal/db/models/user_bandwidth_stat_dao.go b/internal/db/models/user_bandwidth_stat_dao.go index a1d2587a..212548b5 100644 --- a/internal/db/models/user_bandwidth_stat_dao.go +++ b/internal/db/models/user_bandwidth_stat_dao.go @@ -523,11 +523,6 @@ func (this *UserBandwidthStatDAO) HasFullData(tx *dbs.Tx, userId int64, month st return false, errors.New("invalid month '" + month + "'") } - // 仅供调试 - if Tea.IsTesting() { - return true, nil - } - fullDataLocker.Lock() hasData, ok := fullDataMap[month] fullDataLocker.Unlock()