| | <!DOCTYPE html> |
| | <html lang="fr"> |
| | <head> |
| | <meta charset="UTF-8"> |
| | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | <title>Remorquage Pro - Dashboard</title> |
| | <link rel="icon" type="image/x-icon" href="/static/favicon.ico"> |
| | <script src="https://cdn.tailwindcss.com"></script> |
| | <link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet"> |
| | <script src="https://unpkg.com/aos@2.3.1/dist/aos.js"></script> |
| | <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> |
| | <script src="https://unpkg.com/feather-icons"></script> |
| | <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> |
| | <style> |
| | .sidebar { |
| | transition: all 0.3s ease; |
| | } |
| | .active-menu { |
| | background-color: #3B82F6; |
| | color: white; |
| | } |
| | .dashboard-card:hover { |
| | transform: translateY(-5px); |
| | box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1); |
| | } |
| | </style> |
| | </head> |
| | <body class="bg-gray-100 flex h-screen"> |
| | |
| | <div class="sidebar bg-blue-800 text-white w-64 space-y-6 py-7 px-2 absolute inset-y-0 left-0 transform -translate-x-full md:relative md:translate-x-0 transition duration-200 ease-in-out" id="sidebar"> |
| | <div class="text-white flex items-center space-x-2 px-4"> |
| | <i data-feather="truck" class="h-8 w-8"></i> |
| | <span class="text-2xl font-extrabold">Remorquage Pro</span> |
| | </div> |
| | <nav> |
| | <a href="index.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="home"></i> |
| | <span>Dashboard</span> |
| | </a> |
| | <a href="clients.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="users"></i> |
| | <span>Clients</span> |
| | </a> |
| | <a href="employes.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="user-check"></i> |
| | <span>Employés</span> |
| | </a> |
| | <a href="vehicules.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="truck"></i> |
| | <span>Véhicules</span> |
| | </a> |
| | <a href="missions.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="map-pin"></i> |
| | <span>Missions</span> |
| | </a> |
| | <a href="assurances.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="shield"></i> |
| | <span>Assurances</span> |
| | </a> |
| | <a href="reglements.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 hover:bg-blue-700"> |
| | <i data-feather="credit-card"></i> |
| | <span>Règlements</span> |
| | </a> |
| | <a href="rapports.html" class="py-2.5 px-4 rounded transition duration-200 flex items-center space-x-2 active-menu"> |
| | <i data-feather="bar-chart-2"></i> |
| | <span>Rapports</span> |
| | </a> |
| | </nav> |
| | </div> |
| |
|
| | |
| | <div class="flex-1 flex flex-col overflow-hidden"> |
| | |
| | <header class="bg-white shadow-sm"> |
| | <div class="flex items-center justify-between p-4"> |
| | <div class="flex items-center"> |
| | <button id="menu-toggle" class="text-gray-500 focus:outline-none md:hidden"> |
| | <i data-feather="menu"></i> |
| | </button> |
| | <h1 class="text-2xl font-semibold text-gray-800 ml-4">Dashboard</h1> |
| | </div> |
| | <div class="flex items-center space-x-4"> |
| | <div class="relative"> |
| | <i data-feather="bell" class="text-gray-500"></i> |
| | <span class="absolute top-0 right-0 h-2 w-2 rounded-full bg-red-500"></span> |
| | </div> |
| | <div class="flex items-center"> |
| | <img src="http://static.photos/people/40x40/10" alt="Profile" class="h-10 w-10 rounded-full"> |
| | <span class="ml-2 text-gray-700">Admin</span> |
| | </div> |
| | </div> |
| | </div> |
| | </header> |
| |
|
| | |
| | <main class="flex-1 overflow-y-auto p-6 bg-gray-100"> |
| | |
| | <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-6"> |
| | <div class="dashboard-card bg-white rounded-lg shadow p-6" data-aos="fade-up"> |
| | <div class="flex items-center"> |
| | <div class="p-3 rounded-full bg-blue-100 text-blue-600"> |
| | <i data-feather="users" class="h-6 w-6"></i> |
| | </div> |
| | <div class="ml-4"> |
| | <p class="text-sm font-medium text-gray-600">Clients</p> |
| | <h3 class="text-2xl font-bold text-gray-800">247</h3> |
| | </div> |
| | </div> |
| | </div> |
| | <div class="dashboard-card bg-white rounded-lg shadow p-6" data-aos="fade-up" data-aos-delay="100"> |
| | <div class="flex items-center"> |
| | <div class="p-3 rounded-full bg-green-100 text-green-600"> |
| | <i data-feather="user-check" class="h-6 w-6"></i> |
| | </div> |
| | <div class="ml-4"> |
| | <p class="text-sm font-medium text-gray-600">Employés</p> |
| | <h3 class="text-2xl font-bold text-gray-800">12</h3> |
| | </div> |
| | </div> |
| | </div> |
| | <div class="dashboard-card bg-white rounded-lg shadow p-6" data-aos="fade-up" data-aos-delay="200"> |
| | <div class="flex items-center"> |
| | <div class="p-3 rounded-full bg-yellow-100 text-yellow-600"> |
| | <i data-feather="map-pin" class="h-6 w-6"></i> |
| | </div> |
| | <div class="ml-4"> |
| | <p class="text-sm font-medium text-gray-600">Missions ce mois</p> |
| | <h3 class="text-2xl font-bold text-gray-800">84</h3> |
| | </div> |
| | </div> |
| | </div> |
| | <div class="dashboard-card bg-white rounded-lg shadow p-6" data-aos="fade-up" data-aos-delay="300"> |
| | <div class="flex items-center"> |
| | <div class="p-3 rounded-full bg-red-100 text-red-600"> |
| | <i data-feather="dollar-sign" class="h-6 w-6"></i> |
| | </div> |
| | <div class="ml-4"> |
| | <p class="text-sm font-medium text-gray-600">Chiffre d'affaires</p> |
| | <h3 class="text-2xl font-bold text-gray-800">24 560 €</h3> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 mb-6"> |
| | <div class="bg-white rounded-lg shadow p-6" data-aos="fade-right"> |
| | <h2 class="text-lg font-semibold text-gray-800 mb-4">Top 3 Missions ce mois</h2> |
| | <div class="space-y-3"> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Remorquage</span> |
| | <span class="font-semibold">38 missions</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Dépannage</span> |
| | <span class="font-semibold">28 missions</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Assistance</span> |
| | <span class="font-semibold">18 missions</span> |
| | </div> |
| | </div> |
| | </div> |
| | <div class="bg-white rounded-lg shadow p-6" data-aos="fade-up"> |
| | <h2 class="text-lg font-semibold text-gray-800 mb-4">Performances mensuelles</h2> |
| | <div class="space-y-3"> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Moyenne KM/mission</span> |
| | <span class="font-semibold">24 km</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Taux de réussite</span> |
| | <span class="font-semibold">98%</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-sm text-gray-600">Temps moyen</span> |
| | <span class="font-semibold">45 min</span> |
| | </div> |
| | </div> |
| | </div> |
| | <div class="bg-white rounded-lg shadow p-6" data-aos="fade-left"> |
| | <h2 class="text-lg font-semibold text-gray-800 mb-4">Statut des missions</h2> |
| | <div class="space-y-3"> |
| | <div class="flex items-center space-x-2"> |
| | <div class="w-3 h-3 rounded-full bg-green-500"></div> |
| | <span class="text-sm text-gray-600">Terminées: 72</span> |
| | </div> |
| | <div class="flex items-center space-x-2"> |
| | <div class="w-3 h-3 rounded-full bg-yellow-500"></div> |
| | <span class="text-sm text-gray-600">En cours: 8</span> |
| | </div> |
| | <div class="flex items-center space-x-2"> |
| | <div class="w-3 h-3 rounded-full bg-blue-500"></div> |
| | <span class="text-sm text-gray-600">Programmées: 4</span> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="bg-white rounded-lg shadow overflow-hidden" data-aos="fade-up"> |
| | <div class="px-6 py-4 border-b border-gray-200"> |
| | <h2 class="text-lg font-semibold text-gray-800">Missions récentes</h2> |
| | </div> |
| | <div class="overflow-x-auto"> |
| | <table class="min-w-full divide-y divide-gray-200"> |
| | <thead class="bg-gray-50"> |
| | <tr> |
| | <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Client</th> |
| | <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Type</th> |
| | <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Véhicule</th> |
| | <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">KM</th> |
| | <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Statut</th> |
| | </tr> |
| | </thead> |
| | <tbody class="bg-white divide-y divide-gray-200"> |
| | <tr> |
| | <td class="px-6 py-4 whitespace-nowrap">Martin Dupont</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Dépannage</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Renault Clio</td> |
| | <td class="px-6 py-4 whitespace-nowrap">15 km</td> |
| | <td class="px-6 py-4 whitespace-nowrap"><span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-green-100 text-green-800">Terminé</span></td> |
| | </tr> |
| | <tr> |
| | <td class="px-6 py-4 whitespace-nowrap">Assurance AXA</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Remorquage</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Peugeot 308</td> |
| | <td class="px-6 py-4 whitespace-nowrap">42 km</td> |
| | <td class="px-6 py-4 whitespace-nowrap"><span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-yellow-100 text-yellow-800">En cours</span></td> |
| | </tr> |
| | <tr> |
| | <td class="px-6 py-4 whitespace-nowrap">Sophie Lambert</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Assistance</td> |
| | <td class="px-6 py-4 whitespace-nowrap">Citroën C3</td> |
| | <td class="px-6 py-4 whitespace-nowrap">8 km</td> |
| | <td class="px-6 py-4 whitespace-nowrap"><span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-blue-100 text-blue-800">Programmé</span></td> |
| | </tr> |
| | </tbody> |
| | </table> |
| | </div> |
| | </div> |
| | </main> |
| | </div> |
| |
|
| | <script> |
| | |
| | document.getElementById('menu-toggle').addEventListener('click', function() { |
| | document.getElementById('sidebar').classList.toggle('-translate-x-full'); |
| | }); |
| | </script> |
| | <script>AOS.init();</script> |
| | <script>feather.replace();</script> |
| | </body> |
| | </html> |
| |
|