From ec23618a56f0e1da3b140d2983edf10768000e30 Mon Sep 17 00:00:00 2001 From: c0mrade Date: Tue, 2 Jun 2026 18:01:33 +0300 Subject: [PATCH] =?UTF-8?q?revert(sales-stats):=20=D1=83=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BA=D0=B0=D1=80=D1=82=D0=BE=D1=87=D0=BA=D0=B8?= =?UTF-8?q?=20=D0=B2=D0=BE=D0=B7=D0=B2=D1=80=D0=B0=D1=82=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=B8=D0=B7=20=D1=81=D0=B2=D0=BE=D0=B4=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Возвраты для оператора всегда 0 (реальные возвраты только Apple/Tribute, которых нет) — постоянно пустые карточки только путают. Сводка вернулась к 8 карточкам (grid 2/4). Убрал также неиспользуемый invertDelta из StatCard и ключи refunds из локалей. --- src/api/adminSalesStats.ts | 2 -- src/components/stats/StatCard.tsx | 13 +------------ src/locales/en.json | 4 +--- src/locales/fa.json | 4 +--- src/locales/ru.json | 4 +--- src/locales/zh.json | 4 +--- src/pages/AdminSalesStats.tsx | 22 +--------------------- 7 files changed, 6 insertions(+), 47 deletions(-) diff --git a/src/api/adminSalesStats.ts b/src/api/adminSalesStats.ts index 8faabc8..7b5f261 100644 --- a/src/api/adminSalesStats.ts +++ b/src/api/adminSalesStats.ts @@ -19,8 +19,6 @@ export interface SalesSummary { trial_to_paid_conversion: number; renewals_count: number; addon_revenue_kopeks: number; - refunds_count: number; - refunds_kopeks: number; } // ============ Trials ============ diff --git a/src/components/stats/StatCard.tsx b/src/components/stats/StatCard.tsx index 92189ae..79f2600 100644 --- a/src/components/stats/StatCard.tsx +++ b/src/components/stats/StatCard.tsx @@ -26,9 +26,6 @@ interface StatCardProps { valueClassName?: string; /** Optional period-over-period change shown under the value. */ delta?: StatCardDelta | null; - /** For "lower is better" metrics (e.g. refunds): keep the real arrow but flip - * the colour, so a rise reads as bad (red) and a drop as good (green). */ - invertDelta?: boolean; } export function StatCard({ @@ -38,18 +35,10 @@ export function StatCard({ tone = 'neutral', valueClassName, delta, - invertDelta = false, }: StatCardProps) { const toneStyle = TONE[tone]; const valueClass = valueClassName ?? toneStyle.value; - const baseTrend = delta ? (TREND_STYLES[delta.trend] ?? TREND_STYLES.stable) : null; - const trendStyle = - baseTrend && invertDelta && delta && delta.trend !== 'stable' - ? { - arrow: baseTrend.arrow, - className: TREND_STYLES[delta.trend === 'up' ? 'down' : 'up'].className, - } - : baseTrend; + const trendStyle = delta ? (TREND_STYLES[delta.trend] ?? TREND_STYLES.stable) : null; return (
diff --git a/src/locales/en.json b/src/locales/en.json index 68bfaac..6a482c4 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -1306,9 +1306,7 @@ "conversion": "Conversion", "renewals": "Renewals", "addonRevenue": "Add-on Revenue", - "manualTopup": "Manual Top-ups", - "refundsCount": "Refunds", - "refundsAmount": "Refunded amount" + "manualTopup": "Manual Top-ups" }, "trials": { "total": "Total Trials", diff --git a/src/locales/fa.json b/src/locales/fa.json index 2c744e2..26cde24 100644 --- a/src/locales/fa.json +++ b/src/locales/fa.json @@ -1179,9 +1179,7 @@ "conversion": "تبدیل", "renewals": "تمدید", "addonRevenue": "درآمد خدمات اضافی", - "manualTopup": "شارژ دستی", - "refundsCount": "بازپرداخت‌ها", - "refundsAmount": "مبلغ بازپرداخت" + "manualTopup": "شارژ دستی" }, "trials": { "total": "کل آزمایشی", diff --git a/src/locales/ru.json b/src/locales/ru.json index b77dbec..872bd7c 100644 --- a/src/locales/ru.json +++ b/src/locales/ru.json @@ -1328,9 +1328,7 @@ "conversion": "Конверсия", "renewals": "Продления", "addonRevenue": "Доп. услуги", - "manualTopup": "Ручные пополнения", - "refundsCount": "Возвраты", - "refundsAmount": "Сумма возвратов" + "manualTopup": "Ручные пополнения" }, "trials": { "total": "Всего триалов", diff --git a/src/locales/zh.json b/src/locales/zh.json index 6a9d6a1..dca06ba 100644 --- a/src/locales/zh.json +++ b/src/locales/zh.json @@ -1179,9 +1179,7 @@ "conversion": "转化率", "renewals": "续订", "addonRevenue": "附加服务收入", - "manualTopup": "手动充值", - "refundsCount": "退款", - "refundsAmount": "退款金额" + "manualTopup": "手动充值" }, "trials": { "total": "试用总数", diff --git a/src/pages/AdminSalesStats.tsx b/src/pages/AdminSalesStats.tsx index 0be2563..55cdb8d 100644 --- a/src/pages/AdminSalesStats.tsx +++ b/src/pages/AdminSalesStats.tsx @@ -13,7 +13,6 @@ import { GiftIcon, PercentIcon, RepeatIcon, - ResetIcon, RocketIcon, SparklesIcon, TicketIcon, @@ -116,7 +115,6 @@ export default function AdminSalesStats() { renewals: computeDelta(summary.renewals_count, prevSummary.renewals_count), addonRevenue: computeDelta(summary.addon_revenue_kopeks, prevSummary.addon_revenue_kopeks), manualTopup: computeDelta(summary.manual_topup_kopeks, prevSummary.manual_topup_kopeks), - refunds: computeDelta(summary.refunds_kopeks, prevSummary.refunds_kopeks), }; }, [summary, prevSummary]); @@ -150,7 +148,7 @@ export default function AdminSalesStats() { {t('admin.salesStats.loadError')}
)} -
+
- } - tone="error" - /> - } - tone="error" - delta={deltas?.refunds} - invertDelta - />
{/* Tabs */}