Merge pull request #951 from wanXcode/fix/dashboard-user-trend-label

fix(dashboard): prefer username over email prefix in recent usage chart
This commit is contained in:
Wesley Liddick
2026-03-13 22:56:13 +08:00
committed by GitHub
4 changed files with 20 additions and 11 deletions

View File

@@ -96,6 +96,7 @@ type UserUsageTrendPoint struct {
Date string `json:"date"`
UserID int64 `json:"user_id"`
Email string `json:"email"`
Username string `json:"username"`
Requests int64 `json:"requests"`
Tokens int64 `json:"tokens"`
Cost float64 `json:"cost"` // 标准计费

View File

@@ -2068,6 +2068,7 @@ func (r *usageLogRepository) GetUserUsageTrend(ctx context.Context, startTime, e
TO_CHAR(u.created_at, '%s') as date,
u.user_id,
COALESCE(us.email, '') as email,
COALESCE(us.username, '') as username,
COUNT(*) as requests,
COALESCE(SUM(u.input_tokens + u.output_tokens + u.cache_creation_tokens + u.cache_read_tokens), 0) as tokens,
COALESCE(SUM(u.total_cost), 0) as cost,
@@ -2076,7 +2077,7 @@ func (r *usageLogRepository) GetUserUsageTrend(ctx context.Context, startTime, e
LEFT JOIN users us ON u.user_id = us.id
WHERE u.user_id IN (SELECT user_id FROM top_users)
AND u.created_at >= $4 AND u.created_at < $5
GROUP BY date, u.user_id, us.email
GROUP BY date, u.user_id, us.email, us.username
ORDER BY date ASC, tokens DESC
`, dateFormat)
@@ -2096,7 +2097,7 @@ func (r *usageLogRepository) GetUserUsageTrend(ctx context.Context, startTime, e
results = make([]UserUsageTrendPoint, 0)
for rows.Next() {
var row UserUsageTrendPoint
if err = rows.Scan(&row.Date, &row.UserID, &row.Email, &row.Requests, &row.Tokens, &row.Cost, &row.ActualCost); err != nil {
if err = rows.Scan(&row.Date, &row.UserID, &row.Email, &row.Username, &row.Requests, &row.Tokens, &row.Cost, &row.ActualCost); err != nil {
return nil, err
}
results = append(results, row)