Обновлены компоненты для отображения статистики и данных о складах. Заменены моковые данные на нулевые значения, чтобы отразить отсутствие информации. Изменены комментарии для улучшения понимания кода. Добавлен автоматический выбор активных кампаний в AdvertisingTab для удобства пользователя.

This commit is contained in:
Bivekich
2025-07-28 14:38:35 +03:00
parent 74cc0ee35a
commit f182112cd4
5 changed files with 78 additions and 109 deletions

View File

@ -389,8 +389,8 @@ export function FulfillmentWarehouseDashboard() {
return {
products: {
current: totalProductsFromOrders, // Реальное количество товаров на складе
change: productsReceivedToday - productsUsedToday, // Реальное изменение за сутки
current: 0, // Нет данных о готовых продуктах для продажи
change: 0, // Нет данных об изменениях продуктов
},
goods: {
current: 0, // Нет реальных данных о готовых товарах
@ -695,20 +695,8 @@ export function FulfillmentWarehouseDashboard() {
)
);
// Реальные изменения товаров для этого партнера
const partnerProductsChange =
totalProducts > 0
? Math.floor(
(totalProducts /
(allProducts.reduce(
(sum, p: any) => sum + (p.orderedQuantity || 0),
0
) || 1)) *
(productsReceivedToday - productsUsedToday)
)
: Math.floor(
(productsReceivedToday - productsUsedToday) / totalVirtualPartners
);
// Нет данных об изменениях продуктов для этого партнера
const partnerProductsChange = 0;
// Реальные изменения расходников селлера для этого партнера
const partnerSuppliesChange =
@ -720,9 +708,9 @@ export function FulfillmentWarehouseDashboard() {
sum + (supply.currentStock || 0),
0
) || 1)) *
suppliesReceivedToday
(suppliesReceivedToday - suppliesUsedToday)
)
: Math.floor(suppliesReceivedToday / totalVirtualPartners);
: Math.floor((suppliesReceivedToday - suppliesUsedToday) / totalVirtualPartners);
return {
id: `virtual-partner-${index + 1}`,
@ -977,9 +965,6 @@ export function FulfillmentWarehouseDashboard() {
change: number;
description: string;
}) => {
// Генерируем случайные значения для положительных и отрицательных изменений
const positiveChange = Math.floor(Math.random() * 50) + 10; // от 10 до 59
const negativeChange = Math.floor(Math.random() * 30) + 5; // от 5 до 34
const percentChange = current > 0 ? (change / current) * 100 : 0;
return (
@ -993,7 +978,7 @@ export function FulfillmentWarehouseDashboard() {
</div>
<span className="text-white text-xs font-semibold">{title}</span>
</div>
{/* Процентное изменение */}
{/* Процентное изменение - всегда показываем */}
<div className="flex items-center space-x-0.5 px-1.5 py-0.5 rounded bg-blue-500/20">
{change >= 0 ? (
<TrendingUp className="h-3 w-3 text-green-400" />
@ -1013,17 +998,15 @@ export function FulfillmentWarehouseDashboard() {
<div className="text-lg font-bold text-white">
{formatNumber(current)}
</div>
{/* Изменения - всегда показываем */}
<div className="flex items-center space-x-1">
{/* Положительное изменение */}
<div className="flex items-center space-x-0.5 px-1 py-0.5 rounded bg-green-500/20">
<span className="text-xs font-bold text-green-400">
+{positiveChange}
</span>
</div>
{/* Отрицательное изменение */}
<div className="flex items-center space-x-0.5 px-1 py-0.5 rounded bg-red-500/20">
<span className="text-xs font-bold text-red-400">
-{negativeChange}
<div className={`flex items-center space-x-0.5 px-1 py-0.5 rounded ${
change >= 0 ? 'bg-green-500/20' : 'bg-red-500/20'
}`}>
<span className={`text-xs font-bold ${
change >= 0 ? 'text-green-400' : 'text-red-400'
}`}>
{change >= 0 ? '+' : ''}{change}
</span>
</div>
</div>
@ -1483,12 +1466,12 @@ export function FulfillmentWarehouseDashboard() {
<div className="flex items-center justify-end space-x-1">
<div className="flex items-center space-x-0.5">
<span className="text-[9px] font-bold text-green-400">
+0 {/* ТЕСТ: Временно захардкожено для проверки */}
+{Math.max(totals.sellerSuppliesChange, 0)}
</span>
</div>
<div className="flex items-center space-x-0.5">
<span className="text-[9px] font-bold text-red-400">
-0 {/* ТЕСТ: Временно захардкожено для проверки */}
-{Math.max(-totals.sellerSuppliesChange, 0)}
</span>
</div>
<div className="flex items-center space-x-0.5">