feat(billing): show user display name in usage records
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -31,7 +31,7 @@ export async function listUsagePaged(pool, query) {
|
|||||||
params,
|
params,
|
||||||
);
|
);
|
||||||
const [rows] = await pool.query(
|
const [rows] = await pool.query(
|
||||||
`SELECT r.id, r.user_id, u.username, r.agent_session_id, r.request_id,
|
`SELECT r.id, r.user_id, u.username, u.display_name, r.agent_session_id, r.request_id,
|
||||||
r.input_tokens, r.output_tokens, r.cost_cents, r.balance_after_cents, r.created_at
|
r.input_tokens, r.output_tokens, r.cost_cents, r.balance_after_cents, r.created_at
|
||||||
FROM h5_usage_records r
|
FROM h5_usage_records r
|
||||||
JOIN h5_users u ON u.id = r.user_id
|
JOIN h5_users u ON u.id = r.user_id
|
||||||
@@ -45,6 +45,7 @@ export async function listUsagePaged(pool, query) {
|
|||||||
id: Number(row.id),
|
id: Number(row.id),
|
||||||
userId: row.user_id,
|
userId: row.user_id,
|
||||||
username: row.username,
|
username: row.username,
|
||||||
|
displayName: row.display_name,
|
||||||
agentSessionId: row.agent_session_id,
|
agentSessionId: row.agent_session_id,
|
||||||
requestId: row.request_id,
|
requestId: row.request_id,
|
||||||
inputTokens: Number(row.input_tokens),
|
inputTokens: Number(row.input_tokens),
|
||||||
|
|||||||
@@ -230,7 +230,10 @@ function UsageTab() {
|
|||||||
{result.items.map((row) => (
|
{result.items.map((row) => (
|
||||||
<tr key={row.id}>
|
<tr key={row.id}>
|
||||||
<td className="billing-time">{formatTime(row.createdAt)}</td>
|
<td className="billing-time">{formatTime(row.createdAt)}</td>
|
||||||
<td>@{row.username}</td>
|
<td>
|
||||||
|
<span>{row.displayName || row.username}</span>
|
||||||
|
<span className="muted"> @{row.username}</span>
|
||||||
|
</td>
|
||||||
<td className="billing-num">{row.inputTokens.toLocaleString()}</td>
|
<td className="billing-num">{row.inputTokens.toLocaleString()}</td>
|
||||||
<td className="billing-num">{row.outputTokens.toLocaleString()}</td>
|
<td className="billing-num">{row.outputTokens.toLocaleString()}</td>
|
||||||
<td className="billing-num">¥{formatYuan(row.costCents)}</td>
|
<td className="billing-num">¥{formatYuan(row.costCents)}</td>
|
||||||
|
|||||||
@@ -237,6 +237,7 @@ export type UsageRecord = {
|
|||||||
id: number;
|
id: number;
|
||||||
userId: string;
|
userId: string;
|
||||||
username: string;
|
username: string;
|
||||||
|
displayName: string;
|
||||||
agentSessionId: string;
|
agentSessionId: string;
|
||||||
requestId: string | null;
|
requestId: string | null;
|
||||||
inputTokens: number;
|
inputTokens: number;
|
||||||
|
|||||||
Reference in New Issue
Block a user