This commit is contained in:
Андрей Дувакин 2024-10-07 17:14:11 +05:00
parent 732809a25f
commit bdc4157c21
2 changed files with 45 additions and 39 deletions

View File

@ -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 = () => {
Заказы
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/accessories">
Компоненты
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/cities">
Города
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/federal_districts">
Федеральные округа
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/roles">
Роли
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/statuses">
Статусы
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/trucks">
Грузовики
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/users">
Пользователи
</Link>
</li>
{role === "admin" && (
<>
<li className="nav-item">
<Link className="nav-link" to="/accessories">
Компоненты
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/users">
Пользователи
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/cities">
Города
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/trucks">
Грузовики
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/statuses">
Статусы
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/federal_districts">
Федеральные округа
</Link>
</li>
<li className="nav-item">
<Link className="nav-link" to="/roles">
Роли
</Link>
</li>
</>
)}
</ul>
<div className="d-flex align-items-center ml-auto">
{isAuthenticated ? (

View File

@ -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);