fix: Update status display to use proper Russian labels throughout frontend
- Updated RealSupplyOrdersTab to use proper Russian status labels (SUPPLIER_APPROVED, LOGISTICS_CONFIRMED, SHIPPED) - Added backward compatibility for legacy statuses (CONFIRMED, IN_TRANSIT) with "(устаревший)" suffix - Updated statistics counting to include new status types - All status badges now display proper Russian text instead of technical enum names - Improved user experience with clearer status descriptions 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -441,25 +441,38 @@ export function RealSupplyOrdersTab() {
|
|||||||
const getStatusBadge = (status: string) => {
|
const getStatusBadge = (status: string) => {
|
||||||
const statusConfig = {
|
const statusConfig = {
|
||||||
PENDING: {
|
PENDING: {
|
||||||
label: "Ожидает",
|
label: "Ожидает одобрения",
|
||||||
className: "bg-yellow-500/20 text-yellow-300 border-yellow-500/30",
|
className: "bg-yellow-500/20 text-yellow-300 border-yellow-500/30",
|
||||||
},
|
},
|
||||||
|
SUPPLIER_APPROVED: {
|
||||||
|
label: "Ожидает подтверждения логистики",
|
||||||
|
className: "bg-blue-500/20 text-blue-300 border-blue-500/30",
|
||||||
|
},
|
||||||
|
LOGISTICS_CONFIRMED: {
|
||||||
|
label: "Готово к отправке",
|
||||||
|
className: "bg-cyan-500/20 text-cyan-300 border-cyan-500/30",
|
||||||
|
},
|
||||||
|
SHIPPED: {
|
||||||
|
label: "В пути",
|
||||||
|
className: "bg-orange-500/20 text-orange-300 border-orange-500/30",
|
||||||
|
},
|
||||||
|
DELIVERED: {
|
||||||
|
label: "Доставлено",
|
||||||
|
className: "bg-green-500/20 text-green-300 border-green-500/30",
|
||||||
|
},
|
||||||
|
CANCELLED: {
|
||||||
|
label: "Отменено",
|
||||||
|
className: "bg-red-500/20 text-red-300 border-red-500/30",
|
||||||
|
},
|
||||||
|
// Устаревшие статусы для обратной совместимости
|
||||||
CONFIRMED: {
|
CONFIRMED: {
|
||||||
label: "Одобрена",
|
label: "Одобрено (устаревший)",
|
||||||
className: "bg-green-500/20 text-green-300 border-green-500/30",
|
className: "bg-green-500/20 text-green-300 border-green-500/30",
|
||||||
},
|
},
|
||||||
IN_TRANSIT: {
|
IN_TRANSIT: {
|
||||||
label: "В пути",
|
label: "В пути (устаревший)",
|
||||||
className: "bg-blue-500/20 text-blue-300 border-blue-500/30",
|
className: "bg-blue-500/20 text-blue-300 border-blue-500/30",
|
||||||
},
|
},
|
||||||
DELIVERED: {
|
|
||||||
label: "Доставлена",
|
|
||||||
className: "bg-emerald-500/20 text-emerald-300 border-emerald-500/30",
|
|
||||||
},
|
|
||||||
CANCELLED: {
|
|
||||||
label: "Отменена",
|
|
||||||
className: "bg-red-500/20 text-red-300 border-red-500/30",
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const config = statusConfig[status as keyof typeof statusConfig] || {
|
const config = statusConfig[status as keyof typeof statusConfig] || {
|
||||||
@ -561,10 +574,10 @@ export function RealSupplyOrdersTab() {
|
|||||||
(order) => order.status === "PENDING"
|
(order) => order.status === "PENDING"
|
||||||
).length;
|
).length;
|
||||||
const approvedOrders = incomingSupplyOrders.filter(
|
const approvedOrders = incomingSupplyOrders.filter(
|
||||||
(order) => order.status === "CONFIRMED"
|
(order) => order.status === "SUPPLIER_APPROVED" || order.status === "LOGISTICS_CONFIRMED" || order.status === "CONFIRMED"
|
||||||
).length;
|
).length;
|
||||||
const inTransitOrders = incomingSupplyOrders.filter(
|
const inTransitOrders = incomingSupplyOrders.filter(
|
||||||
(order) => order.status === "IN_TRANSIT"
|
(order) => order.status === "SHIPPED" || order.status === "IN_TRANSIT"
|
||||||
).length;
|
).length;
|
||||||
|
|
||||||
// Подсчет общих итогов для отображения в строке итогов
|
// Подсчет общих итогов для отображения в строке итогов
|
||||||
|
Reference in New Issue
Block a user