merge: fix billing usage summary and user balance display
This commit is contained in:
@@ -432,11 +432,9 @@ function UsageOverviewPanel() {
|
||||
setLoadingSummary(true);
|
||||
setError(null);
|
||||
try {
|
||||
const chartRange = start && end
|
||||
? { startDate: start, endDate: end }
|
||||
: presetDateRange(30);
|
||||
const { startAt, endAt } = dateRangeToUnix(chartRange.startDate, chartRange.endDate);
|
||||
const data = await getAdminUsageSummary({ startAt, endAt });
|
||||
const data = start && end
|
||||
? await getAdminUsageSummary(dateRangeToUnix(start, end))
|
||||
: await getAdminUsageSummary();
|
||||
setSummary(data);
|
||||
} catch (err) {
|
||||
setError(err instanceof Error ? err.message : '汇总加载失败');
|
||||
@@ -476,7 +474,7 @@ function UsageOverviewPanel() {
|
||||
|
||||
const rangeSummaryLabel = hasDateFilter
|
||||
? `区间汇总(${startDate} 至 ${endDate})`
|
||||
: '区间汇总(近 30 天)';
|
||||
: '';
|
||||
|
||||
return (
|
||||
<>
|
||||
@@ -690,6 +688,16 @@ function UsageQueryPanel() {
|
||||
<p className="muted billing-empty">请选择用户,将自动加载用量与趋势图</p>
|
||||
)}
|
||||
{userId && loading && !result && !stats && <p className="muted">加载中…</p>}
|
||||
{userId && selectedUser && (
|
||||
<div className="usage-user-balance-bar">
|
||||
<span className="usage-user-balance-name">
|
||||
{selectedUser.displayName}
|
||||
<span className="muted"> @{selectedUser.username}</span>
|
||||
</span>
|
||||
<span className="usage-user-balance-label muted">当前余额</span>
|
||||
<span className="usage-user-balance-value">¥{formatYuan(selectedUser.balanceCents)}</span>
|
||||
</div>
|
||||
)}
|
||||
{userId && (
|
||||
<UsageSummaryPanel
|
||||
summary={summary}
|
||||
|
||||
@@ -2135,6 +2135,29 @@ body,
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.usage-user-balance-bar {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: baseline;
|
||||
gap: 8px 16px;
|
||||
margin-bottom: 16px;
|
||||
padding: 12px 16px;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: var(--radius-md);
|
||||
background: var(--color-bg-subtle);
|
||||
}
|
||||
|
||||
.usage-user-balance-name {
|
||||
font-weight: 600;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.usage-user-balance-value {
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
font-variant-numeric: tabular-nums;
|
||||
}
|
||||
|
||||
.usage-summary-panel {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
Reference in New Issue
Block a user