From 2d5514856cbd6b6159148ecbc7df8c3771b723a4 Mon Sep 17 00:00:00 2001 From: Veronika Smirnova Date: Tue, 22 Jul 2025 15:51:16 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=20=D0=BA=D0=BE=D0=BC=D0=BF?= =?UTF-8?q?=D0=BE=D0=BD=D0=B5=D0=BD=D1=82=20"=D0=A2=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D1=80=D1=8B"=20=D0=B2=20=D0=BF=D0=B0=D0=BD=D0=B5=D0=BB=D0=B8?= =?UTF-8?q?=20=D1=83=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D1=84=D1=83=D0=BB=D1=84=D0=B8=D0=BB=D0=BC=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0:=20=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=BD=D1=8B=20?= =?UTF-8?q?=D1=81=D1=82=D0=B8=D0=BB=D0=B8,=20=D0=B4=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=BD=D0=BE=D0=B2=D1=8B=D0=B5?= =?UTF-8?q?=20=D0=B0=D0=BD=D0=B8=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B8=20?= =?UTF-8?q?=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=BD=D0=B0=20=D1=82=D0=B8?= =?UTF-8?q?=D0=BF=D0=BE=D0=B3=D1=80=D0=B0=D1=84=D0=B8=D0=BA=D0=B0.=20?= =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=B8?= =?UTF-8?q?=D0=BD=D0=B4=D0=B8=D0=BA=D0=B0=D1=82=D0=BE=D1=80=D1=8B=20=D1=81?= =?UTF-8?q?=D1=82=D0=B0=D1=82=D1=83=D1=81=D0=B0=20=D0=B8=20=D0=BE=D0=B1?= =?UTF-8?q?=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA=D0=B8=20=D1=82=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D1=80=D0=BE=D0=B2=20=D0=B4=D0=BB=D1=8F=20=D0=B1=D0=BE?= =?UTF-8?q?=D0=BB=D0=B5=D0=B5=20=D0=BD=D0=B0=D0=B3=D0=BB=D1=8F=D0=B4=D0=BD?= =?UTF-8?q?=D0=BE=D0=B3=D0=BE=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fulfillment-warehouse-dashboard.tsx | 210 ++++++++---------- 1 file changed, 92 insertions(+), 118 deletions(-) diff --git a/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx b/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx index c15ac0e..f2174c8 100644 --- a/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx +++ b/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx @@ -273,147 +273,121 @@ export function FulfillmentWarehouseDashboard() { - {/* Уникальный модуль "Товары" */} + {/* Оптимизированный модуль "Товары" */}
-
+
- {/* Анимированный фон */} -
-
-
- - {/* Статус активности */} -
-
-
-
-
-
- ACTIVE -
-
- - {/* Заголовок с двойной иконкой */} -
-
+ {/* Subtle animated background */} +
+ + {/* Header with improved spacing and typography */} +
+
-
- - {/* Мини-индикатор обработки */} -
-
-
+
+
+
+
+
+

Товары

+

Складская обработка

- ТОВАРЫ
- {/* Круговой прогресс эффективности */} -
- - - - -
- {goodsData.efficiency}% + {/* Enhanced efficiency indicator */} +
+
+
+ {goodsData.efficiency}%
- {/* Основное значение */} -
-
- + {/* Main value with improved typography */} +
+
+ {formatNumber(warehouseStats.currentGoods)} -
-
- - LIVE - +
+ единиц
+
+ Всего в процессе +
- {/* Дополнительные значения */} -
- {/* Положительное значение */} -
-
-
- ОБРАБОТКА -
-
- +{formatNumber(goodsData.processing)} -
-
- - {/* Отрицательное значение */} -
-
-
- ОТКЛОНЕНО -
-
- -{formatNumber(goodsData.rejected)} -
-
-
- - {/* Подпись */} -
- В обработке -
- - {/* Волновой прогресс */} -
-
- {/* Волновая анимация */} -
-
-
-
- - {/* Hover эффект с детальной информацией */} -
-
-
ДЕТАЛИ
-
-
-
+{goodsData.processing}
-
Активных
+ {/* Enhanced status cards */} +
+ {/* Delivered status */} +
+
+
+
+ Поставлено
-
-
-{goodsData.rejected}
-
Проблем
-
-
-
{goodsData.efficiency}%
-
Успех
+
+ {((goodsData.processing / (goodsData.processing + goodsData.rejected)) * 100).toFixed(1)}%
+
+ {formatNumber(goodsData.processing)} +
+
+ + {/* Shipped status */} +
+
+
+
+ Отправлено +
+
+ {((goodsData.rejected / (goodsData.processing + goodsData.rejected)) * 100).toFixed(1)}% +
+
+
+ {formatNumber(goodsData.rejected)} +
- {/* Декоративные частицы */} -
-
-
+ {/* Processing summary */} +
+
+ В обработке + + {formatNumber(goodsData.processing + goodsData.rejected)} + +
+ + {/* Enhanced progress bar */} +
+
+
+
+
+ + {/* Progress labels */} +
+ + {formatNumber(goodsData.processing)} поставлено + + + {formatNumber(goodsData.rejected)} отправлено + +
+
+ + {/* Hover effect overlay */} +
From 0a790c538bb5dd0e1de8afd61d50c4129bbd5cc5 Mon Sep 17 00:00:00 2001 From: Veronika Smirnova Date: Tue, 22 Jul 2025 16:42:40 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=B2=D1=8B=D0=B5?= =?UTF-8?q?=20=D0=BC=D0=B5=D1=82=D1=80=D0=B8=D0=BA=D0=B8=20=D1=81=D0=BA?= =?UTF-8?q?=D0=BB=D0=B0=D0=B4=D0=B0,=20=D1=83=D0=BC=D0=BD=D1=8B=D0=B5=20?= =?UTF-8?q?=D1=80=D0=B5=D0=BA=D0=BE=D0=BC=D0=B5=D0=BD=D0=B4=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=B8=20=D0=B1=D1=8B=D1=81=D1=82=D1=80=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=B4=D0=B5=D0=B9=D1=81=D1=82=D0=B2=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=B2=20=D0=BA=D0=BE=D0=BC=D0=BF=D0=BE=D0=BD=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=20FulfillmentStatisticsDashboard.=20=D0=9F=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D1=81=D0=B5=D0=BD=D1=8B=20=D0=B4=D0=B0=D0=BD=D0=BD?= =?UTF-8?q?=D1=8B=D0=B5=20=D0=B8=D0=B7=20FulfillmentWarehouse=20=D0=B8=20?= =?UTF-8?q?=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=BD=D1=8B=20=D1=81=D1=82?= =?UTF-8?q?=D0=B8=D0=BB=D0=B8=20=D0=B4=D0=BB=D1=8F=20=D0=B1=D0=BE=D0=BB?= =?UTF-8?q?=D0=B5=D0=B5=20=D0=BD=D0=B0=D0=B3=D0=BB=D1=8F=D0=B4=D0=BD=D0=BE?= =?UTF-8?q?=D0=B3=D0=BE=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D0=B8=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D0=B8.=20=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=B8=D0=BA=D0=BE=D0=BD=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=B8=20=D1=81=D1=82=D1=80=D1=83=D0=BA=D1=82=D1=83=D1=80=D0=B0?= =?UTF-8?q?=20=D0=BA=D0=BE=D0=B4=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=B2=D1=8B=D1=88=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=83=D0=B4=D0=BE?= =?UTF-8?q?=D0=B1=D1=81=D1=82=D0=B2=D0=B0=20=D0=B8=D1=81=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fulfillment-statistics-dashboard.tsx | 142 +++++++ .../fulfillment-warehouse-dashboard.tsx | 380 +++++++----------- 2 files changed, 280 insertions(+), 242 deletions(-) diff --git a/src/components/fulfillment-statistics/fulfillment-statistics-dashboard.tsx b/src/components/fulfillment-statistics/fulfillment-statistics-dashboard.tsx index 2035b87..1164df3 100644 --- a/src/components/fulfillment-statistics/fulfillment-statistics-dashboard.tsx +++ b/src/components/fulfillment-statistics/fulfillment-statistics-dashboard.tsx @@ -27,6 +27,9 @@ import { DollarSign, Users, Truck, + Warehouse, + Eye, + EyeOff, } from "lucide-react"; export function FulfillmentStatisticsDashboard() { @@ -38,6 +41,9 @@ export function FulfillmentStatisticsDashboard() { marketplaces: true, analytics: false, performance: false, + warehouseMetrics: true, + smartRecommendations: true, + quickActions: true, }); // Мок данные для статистики @@ -67,6 +73,13 @@ export function FulfillmentStatisticsDashboard() { satisfactionTrend: 5, }; + // Данные склада (перенесено из fulfillment-warehouse) + const warehouseStats = { + efficiency: 94.5, + turnover: 2.3, + utilizationRate: 87, + }; + const formatNumber = (num: number) => { return num.toLocaleString("ru-RU"); }; @@ -535,6 +548,135 @@ export function FulfillmentStatisticsDashboard() { )}
+ + {/* Ключевые метрики склада (перенесено из fulfillment-warehouse) */} +
+ + {expandedSections.warehouseMetrics && ( + +
+
+
+
+ +
+
+
+ Эффективность + + {warehouseStats.efficiency}% + +
+
+ Оборачиваемость + + {warehouseStats.turnover}x + +
+
+
+
+
Загрузка склада
+
{warehouseStats.utilizationRate}%
+
+
+
+
+ )} +
+ + {/* Умные рекомендации склада (перенесено из fulfillment-warehouse) */} +
+ + {expandedSections.smartRecommendations && ( + +
+
+
+ +
+

Рекомендации по складу

+
+ + AI-анализ + +
+ +
+
+
+ + Оптимизация +
+

+ Рекомендуется увеличить запас расходников на 15% для покрытия пикового спроса +

+
+ +
+
+ + Прогноз +
+

+ Ожидается рост возвратов на 12% в следующем месяце. Подготовьте дополнительные места +

+
+ +
+
+ + Тренд +
+

+ Эффективность обработки товаров выросла на 8% за последний месяц +

+
+
+
+ )} +
+ + {/* Быстрые действия (перенесено из fulfillment-warehouse) */} +
+ + {expandedSections.quickActions && ( + +
+

Управление складом

+
+ + +
+
+ +
+ +

+ Основная функциональность склада будет добавлена на следующем этапе +

+
+
+ )} +
diff --git a/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx b/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx index f2174c8..cd142ec 100644 --- a/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx +++ b/src/components/fulfillment-warehouse/fulfillment-warehouse-dashboard.tsx @@ -153,16 +153,17 @@ export function FulfillmentWarehouseDashboard() {
- {/* Объединенный блок склада - ПЕРВЫЙ СВЕРХУ */} -
- - {expandedSections.warehouse && ( -
+ {/* Блок состояния склада с shadcn/ui */} + +
+ + {expandedSections.warehouse && ( +
{/* Уникальный модуль "Продукты" */}
@@ -273,267 +274,162 @@ export function FulfillmentWarehouseDashboard() {
- {/* Оптимизированный модуль "Товары" */} + {/* Компактный модуль "Товары" - той же высоты что и "Продукты" */}
-
+
- {/* Subtle animated background */} -
- - {/* Header with improved spacing and typography */} -
-
+ {/* Заголовок с иконкой */} +
+
-
- +
+
-
-
-
-

Товары

-

Складская обработка

+ ТОВАРЫ
- {/* Enhanced efficiency indicator */} -
-
-
- {goodsData.efficiency}% + {/* Индикатор эффективности */} +
+ + + + +
+ {goodsData.efficiency}%
- {/* Main value with improved typography */} -
-
- + {/* Основное значение */} +
+
+ {formatNumber(warehouseStats.currentGoods)} -
- единиц -
-
-
- Всего в процессе
- {/* Enhanced status cards */} -
- {/* Delivered status */} -
-
-
-
- Поставлено -
-
- {((goodsData.processing / (goodsData.processing + goodsData.rejected)) * 100).toFixed(1)}% -
-
-
- {formatNumber(goodsData.processing)} -
-
- - {/* Shipped status */} -
-
-
-
- Отправлено -
-
- {((goodsData.rejected / (goodsData.processing + goodsData.rejected)) * 100).toFixed(1)}% -
-
-
- {formatNumber(goodsData.rejected)} -
-
+ {/* В обработке с числовым значением */} +
+ В обработке: {formatNumber(goodsData.processing + goodsData.rejected)}
- {/* Processing summary */} -
-
- В обработке - - {formatNumber(goodsData.processing + goodsData.rejected)} - -
- - {/* Enhanced progress bar */} -
-
-
-
-
- - {/* Progress labels */} -
- - {formatNumber(goodsData.processing)} поставлено - - - {formatNumber(goodsData.rejected)} отправлено - -
+ {/* Прогресс-бар */} +
+
+
+
+ Поставлено: {((goodsData.processing / (goodsData.processing + goodsData.rejected)) * 100).toFixed(0)}% + Отправлено: {((goodsData.rejected / (goodsData.processing + goodsData.rejected)) * 100).toFixed(0)}%
- {/* Hover effect overlay */} -
+ {/* Декоративные элементы */} +
+
- - - - - - - -
- )} -
- - {/* Компактный заголовок с ключевыми метриками */} -
-
-
-
- -
-
-
- Эффективность - {warehouseStats.efficiency}% + {/* Брак */} + +
+
+
+
+ +
+ Брак +
+ + -{Math.abs(warehouseStats.defectsTrend)}% + +
+
+ {formatNumber(warehouseStats.currentDefects)} +
+
+ Требует утилизации +
-
- Оборачиваемость - {warehouseStats.turnover}x + + + {/* Возвраты с ПВЗ */} + +
+
+
+
+ +
+ Возвраты с ПВЗ +
+ + +{warehouseStats.returnsTrend}% + +
+
+ {formatNumber(warehouseStats.currentReturns)} +
+
+ К обработке +
+
+ + {/* Расходники ФФ */} + +
+
+
+
+ +
+ Расходники ФФ +
+
+
+ {formatNumber(warehouseStats.currentFulfillmentSupplies)} +
+
+ Упаковка, этикетки, пленка +
+
+
+ + {/* Расходники селлеров */} + +
+
+
+
+ +
+ Расходники селлеров +
+
+
+ {formatNumber(warehouseStats.currentSellerSupplies)} +
+
+ Материалы клиентов +
+
+
-
-
-
Загрузка склада
-
{warehouseStats.utilizationRate}%
-
+ )}
-
+ - {/* Нестандартные решения */} -
- {/* Интеллектуальные инсайты */} - -
-
-
- -
-

Умные рекомендации

-
- - AI-анализ - -
- -
-
-
- - Оптимизация -
-

- Рекомендуется увеличить запас расходников на 15% для покрытия пикового спроса -

-
- -
-
- - Прогноз -
-

- Ожидается рост возвратов на 12% в следующем месяце. Подготовьте дополнительные места -

-
- -
-
- - Тренд -
-

- Эффективность обработки товаров выросла на 8% за последний месяц -

-
-
-
- {/* Быстрые действия */} - -
-

Быстрые действия

-
- - -
-
- -
- -

- Основная функциональность склада будет добавлена на следующем этапе -

-
-
-