diff --git a/src/components/Header.jsx b/src/components/Header.jsx index cae6452..84bc9ad 100644 --- a/src/components/Header.jsx +++ b/src/components/Header.jsx @@ -3,7 +3,7 @@ import { Link, useNavigate } from "react-router-dom"; import { useAuth } from "../AuthContext"; const Header = () => { - const { isAuthenticated, logout } = useAuth(); + const { isAuthenticated, role, logout } = useAuth(); const navigate = useNavigate(); const user = JSON.parse(localStorage.getItem("user")); @@ -25,41 +25,45 @@ const Header = () => { Заказы -
  • - - Компоненты - -
  • -
  • - - Города - -
  • -
  • - - Федеральные округа - -
  • -
  • - - Роли - -
  • -
  • - - Статусы - -
  • -
  • - - Грузовики - -
  • -
  • - - Пользователи - -
  • + {role === "admin" && ( + <> +
  • + + Компоненты + +
  • +
  • + + Пользователи + +
  • +
  • + + Города + +
  • +
  • + + Грузовики + +
  • +
  • + + Статусы + +
  • +
  • + + Федеральные округа + +
  • +
  • + + Роли + +
  • + + )}
    {isAuthenticated ? ( diff --git a/src/pages/DeliveryOrderDetails.jsx b/src/pages/DeliveryOrderDetails.jsx index 5aa56f6..2748b20 100644 --- a/src/pages/DeliveryOrderDetails.jsx +++ b/src/pages/DeliveryOrderDetails.jsx @@ -2,6 +2,7 @@ import React, { useState, useEffect } from "react"; import { getDeliveryAccessories, getDeliveryOrderDetails } from "../api.jsx"; import { useParams } from "react-router-dom"; import { getCoordinates } from "../geocoder.jsx"; +import { useNavigate } from "react-router-dom"; import { MapContainer, TileLayer, @@ -28,6 +29,7 @@ const DeliveryOrderDetails = () => { const [totalCost, setTotalCost] = useState(0); const [truckCount, setTruckCount] = useState(0); const [truckName, settruckName] = useState(""); + const navigate = useNavigate(); useEffect(() => { fetchDeliveryAccessories(); @@ -54,9 +56,6 @@ const DeliveryOrderDetails = () => { longitude: accessory.longitude, }; } else { - if (error.response && error.response.status === 401) { - navigate("/login"); - } const coords = await getCoordinates(accessory.city_name); return { city: accessory.city_name, ...coords }; } @@ -82,6 +81,9 @@ const DeliveryOrderDetails = () => { } } } catch (error) { + if (error.response && error.response.status === 401) { + navigate("/login"); + } console.error("Ошибка при загрузке доставок:", error); } finally { setLoading(false);