mirror of
https://github.com/BerriAI/litellm.git
synced 2026-08-28 05:25:59 +00:00
Surface per-member total spend in Teams > Members tab
Adds a "Total Spend (USD)" column backed by the new membership.total_spend field. Cumulative across budget cycles; tracking began 2026-04-21.
This commit is contained in:
parent
9a6ddef09f
commit
331e3f2250
2 changed files with 7 additions and 7 deletions
|
|
@ -60,6 +60,7 @@ export interface TeamMembership {
|
||||||
team_id: string;
|
team_id: string;
|
||||||
budget_id: string;
|
budget_id: string;
|
||||||
spend: number;
|
spend: number;
|
||||||
|
total_spend: number | null;
|
||||||
litellm_budget_table: {
|
litellm_budget_table: {
|
||||||
budget_id: string;
|
budget_id: string;
|
||||||
soft_budget: number | null;
|
soft_budget: number | null;
|
||||||
|
|
|
||||||
|
|
@ -45,11 +45,10 @@ export default function TeamMemberTab({
|
||||||
return "0";
|
return "0";
|
||||||
};
|
};
|
||||||
|
|
||||||
// Helper function to get spend for a user
|
const getUserTotalSpend = (userId: string | null): number => {
|
||||||
const getUserSpend = (userId: string | null): number | null => {
|
|
||||||
if (!userId) return 0;
|
if (!userId) return 0;
|
||||||
const membership = teamData.team_memberships.find((tm) => tm.user_id === userId);
|
const membership = teamData.team_memberships.find((tm) => tm.user_id === userId);
|
||||||
return membership?.spend || 0;
|
return membership?.total_spend ?? 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
const getUserBudget = (userId: string | null): string | null => {
|
const getUserBudget = (userId: string | null): string | null => {
|
||||||
|
|
@ -124,15 +123,15 @@ export default function TeamMemberTab({
|
||||||
{
|
{
|
||||||
title: (
|
title: (
|
||||||
<Space direction="horizontal">
|
<Space direction="horizontal">
|
||||||
Team Member Spend (USD)
|
Total Spend (USD)
|
||||||
<Tooltip title="This is the amount spent by a user in the team.">
|
<Tooltip title="Total spend by this member within this team. Tracking began 2026-04-21; spend from before that date is not included.">
|
||||||
<InfoCircleOutlined />
|
<InfoCircleOutlined />
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</Space>
|
</Space>
|
||||||
),
|
),
|
||||||
key: "spend",
|
key: "total_spend",
|
||||||
render: (_: unknown, record: Member) => (
|
render: (_: unknown, record: Member) => (
|
||||||
<Typography.Text>${formatNumberWithCommas(getUserSpend(record.user_id), 4)}</Typography.Text>
|
<Typography.Text>${formatNumberWithCommas(getUserTotalSpend(record.user_id), 4)}</Typography.Text>
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue