diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index eabafed53f357c2da43f9b01f199fdac584b6448..c56dca203649c60c8f1e30d59d15fe3280ecb74f 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -6,7 +6,7 @@ spring.datasource.password=jessie #spring.datasource.password=mypass spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.jpa.database-platform=org.hibernate.dialect.MySQL8Dialect -spring.jpa.hibernate.ddl-auto=create-drop +spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.format_sql=true spring.thymeleaf.prefix=classpath:/templates/ diff --git a/src/main/resources/static/images/admin2.png b/src/main/resources/static/images/admin2.png new file mode 100644 index 0000000000000000000000000000000000000000..2fdfd6bba46a5c337e669201c258035ea92870c7 Binary files /dev/null and b/src/main/resources/static/images/admin2.png differ diff --git a/src/main/resources/static/images/background1.png b/src/main/resources/static/images/background1.png new file mode 100644 index 0000000000000000000000000000000000000000..9bf35b7c1bf96f2f20da05a8a1b251aab5874cd5 Binary files /dev/null and b/src/main/resources/static/images/background1.png differ diff --git a/src/main/resources/static/images/medecins.png b/src/main/resources/static/images/medecins.png new file mode 100644 index 0000000000000000000000000000000000000000..d9a3e30fe236ebb4802c12dfc576ffd62e0a8629 Binary files /dev/null and b/src/main/resources/static/images/medecins.png differ diff --git a/src/main/resources/static/images/patient.png b/src/main/resources/static/images/patient.png new file mode 100644 index 0000000000000000000000000000000000000000..9d8bc57dc502178297e2a985fbbb70615d838418 Binary files /dev/null and b/src/main/resources/static/images/patient.png differ diff --git a/src/main/resources/static/images/patient1.png b/src/main/resources/static/images/patient1.png new file mode 100644 index 0000000000000000000000000000000000000000..fe7bc95c3f0a65d3d9eb051d05e4165c78ac411e Binary files /dev/null and b/src/main/resources/static/images/patient1.png differ diff --git a/src/main/resources/templates/admin-appointments.html b/src/main/resources/templates/admin-appointments.html index 6d1410e55fdd2831e9f643062d3c4a62245c5f24..513df0345ed21f503ece3b188b7cac1a0cb271d4 100644 --- a/src/main/resources/templates/admin-appointments.html +++ b/src/main/resources/templates/admin-appointments.html @@ -9,7 +9,7 @@ <body class="bg-gray-100 font-sans leading-normal tracking-normal flex flex-col min-h-screen"> <!-- Header --> -<header class="bg-white shadow-md"> +<header class="bg-white shadow-md sticky top-0 z-50"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12"> <div class="flex justify-between items-center py-6"> <h1 class="text-2xl font-bold text-blue-900 tracking-wide">📅 Liste des rendez-vous</h1> @@ -19,15 +19,15 @@ </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-16"> - <!-- Image légèrement plus haute --> - <div class="w-full max-w-xs mt-[-20px]"> - <img src="/images/appointments.jpg" alt="Liste des rendez-vous" class="w-full rounded-lg shadow-lg"> + <!-- Image --> + <div class="w-full max-w-sm mb-8 transform transition hover:scale-105"> + <img src="/images/appointments.jpg" alt="Liste des rendez-vous" class="w-full rounded-lg shadow-lg opacity-90"> </div> <!-- Contenu --> - <div class="mt-6 w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> + <div class="w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-16"> <h2 class="text-3xl font-bold text-blue-900">📅 Liste des rendez-vous</h2> <p class="mt-4 text-lg text-gray-700">Consultez et gérez les rendez-vous médicaux facilement.</p> @@ -77,7 +77,7 @@ </main> -<!-- Footer en bas --> +<!-- Footer --> <footer class="bg-white shadow-md mt-auto"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 py-4 text-center"> <p class="text-sm text-gray-600">© 2025 Gestion Dossiers Médicaux. Tous droits réservés.</p> diff --git a/src/main/resources/templates/admin-dashboard.html b/src/main/resources/templates/admin-dashboard.html index d48a780261a5ace394746c81150c02dc01d76445..070ccd21dbe22cf310efec5a471686beda216903 100644 --- a/src/main/resources/templates/admin-dashboard.html +++ b/src/main/resources/templates/admin-dashboard.html @@ -24,7 +24,7 @@ <!-- Image illustrant le tableau de bord admin --> <div class="w-full max-w-md"> - <img src="/images/admindashboard.png" alt="Tableau de bord admin" class="w-full rounded-lg shadow-lg"> + <img src="/images/admin2.png" alt="Tableau de bord admin" class="w-full rounded-lg shadow-lg"> </div> <!-- Conteneur du tableau de bord --> @@ -77,7 +77,7 @@ </main> -<!-- Footer toujours en bas --> +<!-- Footer --> <footer class="bg-white shadow-md mt-auto"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 py-4 text-center"> <p class="text-sm text-gray-600">© 2025 Gestion Dossiers Médicaux. Tous droits réservés.</p> diff --git a/src/main/resources/templates/create-appointment-admin.html b/src/main/resources/templates/create-appointment-admin.html index d00aae76c797e3f3f5dd716d52a1b4b621f90682..7cce2fde283b2478d761a9424fdb3229c225be8b 100644 --- a/src/main/resources/templates/create-appointment-admin.html +++ b/src/main/resources/templates/create-appointment-admin.html @@ -9,33 +9,33 @@ <body class="bg-gray-100 font-sans leading-normal tracking-normal flex flex-col min-h-screen"> <!-- Header --> -<header class="bg-white shadow-md"> +<header class="bg-white shadow-md sticky top-0 z-50"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12"> <div class="flex justify-between items-center py-6"> - <h1 class="text-2xl font-bold text-blue-900 tracking-wide"> 📅 Créer un rendez-vous</h1> + <h1 class="text-2xl font-bold text-blue-900 tracking-wide">📅 Créer un rendez-vous</h1> <a href="/admin/admin-appointments" class="px-4 py-2 bg-blue-600 text-white rounded-lg shadow-md hover:bg-blue-700 transition">🏠 Retour</a> </div> </div> </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-16"> <!-- Image centrée --> - <div class="w-full max-w-lg mt-[-10px]"> - <img src="/images/createappointment.jpg" alt="Créer un rendez-vous" class="w-full rounded-lg shadow-lg"> + <div class="w-full max-w-sm mb-8 transform transition hover:scale-105"> + <img src="/images/createappointment.jpg" alt="Créer un rendez-vous" class="w-full rounded-lg shadow-lg opacity-90"> </div> <!-- Formulaire --> - <div class="mt-6 w-full max-w-xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> + <div class="w-full max-w-xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-16"> <h2 class="text-3xl font-bold text-blue-900">📅 Nouveau rendez-vous</h2> <p class="mt-2 text-lg text-gray-700">Planifiez un rendez-vous médical facilement.</p> <form method="post" th:action="@{/admin/admin-appointments/create}" class="mt-6"> <!-- Sélecteur du Patient --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">👤 Patient :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">👤 Patient :</label> <select class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="patientId" required> <option value="">Sélectionner un patient</option> <option th:each="patient : ${patients}" th:value="${patient.id}" th:text="${patient.firstName + ' ' + patient.lastName}"></option> @@ -43,8 +43,8 @@ </div> <!-- Sélecteur du Médecin --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">👨⚕️ Médecin :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">👨⚕️ Médecin :</label> <select class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="doctorId" required> <option value="">Sélectionner un médecin</option> <option th:each="doctor : ${doctors}" th:value="${doctor.id}" th:text="${doctor.firstName + ' ' + doctor.lastName}"></option> @@ -52,30 +52,29 @@ </div> <!-- Date et Heure --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">📅 Date et heure :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">📅 Date et heure :</label> <input type="datetime-local" class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="dateTime" required> </div> <!-- Motif --> - <div class="mb-6"> - <label class="block text-left text-gray-800 font-semibold">📝 Motif :</label> + <div class="mb-6 text-left"> + <label class="block text-gray-800 font-semibold">📝 Motif :</label> <input type="text" class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="reason" required> </div> <!-- Boutons --> <div class="flex justify-center space-x-4"> - <button type="submit" class="px-6 py-3 bg-green-500 text-white font-semibold rounded-lg shadow-md hover:bg-green-600 transition flex items-center space-x-2"> + <button type="submit" class="px-6 py-3 bg-green-500 text-white font-semibold rounded-lg shadow-md hover:bg-green-600 transition flex items-center"> <span>Créer le rendez-vous</span> </button> <a href="/admin/admin-appointments" th:href="@{/admin/admin-appointments}" - class="px-6 py-3 bg-gray-500 text-white font-semibold rounded-lg shadow-md hover:bg-gray-600 transition flex items-center space-x-2"> + class="px-6 py-3 bg-gray-500 text-white font-semibold rounded-lg shadow-md hover:bg-gray-600 transition flex items-center"> <span>Annuler</span> </a> </div> </form> </div> - </main> <!-- Footer en bas --> @@ -86,4 +85,4 @@ </footer> </body> -</html> +</html> \ No newline at end of file diff --git a/src/main/resources/templates/create-appointment-doctor.html b/src/main/resources/templates/create-appointment-doctor.html index f82704959adeb03963f144cea38d2e38a4a19107..925c4d10eca4b353e6b8f958a3b1f7938191e826 100644 --- a/src/main/resources/templates/create-appointment-doctor.html +++ b/src/main/resources/templates/create-appointment-doctor.html @@ -9,7 +9,7 @@ <body class="bg-gray-100 font-sans leading-normal tracking-normal flex flex-col min-h-screen"> <!-- Header (identique à "Liste des rendez-vous") --> -<header class="bg-white shadow-md"> +<header class="bg-white shadow-md sticky top-0 z-50"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12"> <div class="flex justify-between items-center py-6"> <h1 class="text-2xl font-bold text-blue-900 tracking-wide"> 📅 Créer un rendez-vous</h1> @@ -21,23 +21,23 @@ </header> <!-- Conteneur principal --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-16"> <!-- Image centrée --> - <div class="w-full max-w-lg mt-[-10px]"> - <img src="/images/createappointment.jpg" alt="Création de rendez-vous" class="w-full rounded-lg shadow-lg"> + <div class="w-full max-w-sm mb-8 transform transition hover:scale-105"> + <img src="/images/createappointment.jpg" alt="Création de rendez-vous" class="w-full rounded-lg shadow-lg opacity-90"> </div> <!-- Formulaire (réduit en largeur) --> - <div class="mt-6 w-full max-w-xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> + <div class="w-full max-w-xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-16"> <h2 class="text-3xl font-bold text-blue-900">📅 Nouveau Rendez-vous</h2> <p class="mt-2 text-lg text-gray-700">Planifiez un rendez-vous médical facilement.</p> <form method="post" th:action="@{/doctors/appointments/create}" class="mt-6"> <!-- Sélecteur du Patient --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">👤 Patient :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">👤 Patient :</label> <select class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="patientId" required> <option value="">Sélectionner un patient</option> <option th:each="patient : ${patients}" th:value="${patient.id}" th:text="${patient.firstName + ' ' + patient.lastName}"></option> @@ -45,22 +45,22 @@ </div> <!-- Médecin --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">👨⚕️ Médecin :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">👨⚕️ Médecin :</label> <input type="hidden" name="doctorId" th:value="${doctor.id}"> <input type="text" class="w-full px-4 py-2 border rounded-lg shadow-sm bg-gray-100" th:value="'Dr. ' + ${doctor.firstName} + ' ' + ${doctor.lastName}" readonly> </div> <!-- Date et Heure --> - <div class="mb-4"> - <label class="block text-left text-gray-800 font-semibold">📅 Date et heure :</label> + <div class="mb-4 text-left"> + <label class="block text-gray-800 font-semibold">📅 Date et heure :</label> <input type="datetime-local" class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="dateTime" required> </div> <!-- Motif --> - <div class="mb-6"> - <label class="block text-left text-gray-800 font-semibold">📝 Motif :</label> + <div class="mb-6 text-left"> + <label class="block text-gray-800 font-semibold">📝 Motif :</label> <input type="text" class="w-full px-4 py-2 border rounded-lg shadow-sm focus:ring focus:ring-blue-300" name="reason" required> </div> diff --git a/src/main/resources/templates/doctor-appointments.html b/src/main/resources/templates/doctor-appointments.html index c6dd3aa060000185704b7d1186d696892d295f08..c6cf03251a6512f7d44eb8db87b861d3efef7ac7 100644 --- a/src/main/resources/templates/doctor-appointments.html +++ b/src/main/resources/templates/doctor-appointments.html @@ -9,7 +9,7 @@ <body class="bg-gray-100 font-sans leading-normal tracking-normal flex flex-col min-h-screen"> <!-- Header --> -<header class="bg-white shadow-md"> +<header class="bg-white shadow-md sticky top-0 z-50"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12"> <div class="flex justify-between items-center py-6"> <h1 class="text-2xl font-bold text-blue-900 tracking-wide">📅 Liste des rendez-vous</h1> @@ -19,15 +19,15 @@ </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-16"> - <!-- Image légèrement plus haute --> - <div class="w-full max-w-xs mt-[-20px]"> <!-- Taille réduite + position légèrement remontée --> - <img src="/images/appointments.jpg" alt="Liste des rendez-vous" class="w-full rounded-lg shadow-lg"> + <!-- Image --> + <div class="w-full max-w-sm mb-8 transform transition hover:scale-105"> + <img src="/images/appointments.jpg" alt="Liste des rendez-vous" class="w-full rounded-lg shadow-lg opacity-90"> </div> <!-- Contenu --> - <div class="mt-6 w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> + <div class="w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-16"> <h2 class="text-3xl font-bold text-blue-900">📅 Liste des rendez-vous</h2> <p class="mt-4 text-lg text-gray-700">Consultez et gérez vos rendez-vous médicaux facilement.</p> @@ -71,10 +71,9 @@ <a href="/doctors/dashboard" class="px-6 py-3 bg-gray-500 text-white rounded-lg shadow-md hover:bg-gray-600 transition">🔙 Retour au tableau de bord</a> </div> </div> - </main> -<!-- Footer en bas --> +<!-- Footer --> <footer class="bg-white shadow-md mt-auto"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 py-4 text-center"> <p class="text-sm text-gray-600">© 2025 Gestion Dossiers Médicaux. Tous droits réservés.</p> diff --git a/src/main/resources/templates/doctor-dashboard.html b/src/main/resources/templates/doctor-dashboard.html index 72850f762af50b3791abfb38768bbc7279edb0cc..5df6227377ab2ded296217e70788b28747deb6ab 100644 --- a/src/main/resources/templates/doctor-dashboard.html +++ b/src/main/resources/templates/doctor-dashboard.html @@ -19,18 +19,19 @@ </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 mt-6 mb-6"> - <!-- Image au centre --> - <div class="w-full max-w-lg"> - <img src="/images/doctorsdashboard.jpg" alt="Médecin au travail" class="w-full rounded-lg shadow-lg"> + <!-- Image --> + <div class="w-full max-w-md mb-6"> + <img src="/images/doctorsdashboard.jpg" alt="Tableau de bord médecin" class="w-full rounded-lg shadow-lg"> </div> - <!-- Contenu sous l'image --> - <div class="mt-8 max-w-3xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> - <h2 class="text-4xl font-bold text-blue-900">👨⚕️ Bienvenue sur votre tableau de bord</h2> + <!-- Conteneur du tableau de bord --> + <div class="w-full max-w-4xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-10"> + <h2 class="text-3xl font-bold text-blue-900">👨⚕️ Bienvenue sur votre tableau de bord</h2> <p class="mt-4 text-lg text-gray-700">📁 Consultez vos dossiers médicaux et gérez vos patients efficacement.</p> + <!-- Menu des options pour les médecins --> <div class="mt-8 grid grid-cols-1 md:grid-cols-3 gap-6"> <a href="/doctors/patients" class="p-6 bg-white shadow-md rounded-lg hover:shadow-lg transition border border-blue-300"> <h3 class="text-xl font-semibold text-blue-800">👨⚕️ Mes Patients</h3> @@ -51,13 +52,12 @@ <h3 class="text-xl font-semibold text-blue-800">💰 Mes Factures</h3> <p class="mt-2 text-gray-600">Consulter et gérer vos factures de consultations.</p> </a> - </div> </div> </main> -<!-- Footer toujours en bas --> +<!-- Footer --> <footer class="bg-white shadow-md mt-auto"> <div class="max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 py-4 text-center"> <p class="text-sm text-gray-600">© 2025 Gestion Dossiers Médicaux. Tous droits réservés.</p> diff --git a/src/main/resources/templates/patient-dashboard.html b/src/main/resources/templates/patient-dashboard.html index 67c035fa19dd9decc5937da0138f89f476364c9a..193b64d338d2d5304fe53857e630375ae4574a7b 100644 --- a/src/main/resources/templates/patient-dashboard.html +++ b/src/main/resources/templates/patient-dashboard.html @@ -24,7 +24,7 @@ <!-- Image au centre --> <div class="w-full max-w-lg"> - <img src="/images/patientdashboard.png" alt="Tableau de bord patient" class="w-full rounded-lg shadow-lg"> + <img src="/images/patient1.png" alt="Tableau de bord patient" class="w-full rounded-lg shadow-lg"> </div> <!-- Contenu sous l'image --> diff --git a/src/main/resources/templates/view-medical-file-admin.html b/src/main/resources/templates/view-medical-file-admin.html index 1c2f7e9c3ca9279c23b02646e2733b8dbe85341c..e7182f0bf7c113e49472b496fe8a2f2157f3d761 100644 --- a/src/main/resources/templates/view-medical-file-admin.html +++ b/src/main/resources/templates/view-medical-file-admin.html @@ -20,10 +20,10 @@ </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-12"> <!-- Contenu --> - <div class="mt-6 w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300"> + <div class="w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300 mb-12"> <div th:if="${medicalFile}"> <h2 class="text-3xl font-bold text-blue-900">📁 Dossier médical</h2> diff --git a/src/main/resources/templates/view-medical-file-doctor.html b/src/main/resources/templates/view-medical-file-doctor.html index dce948dfc41a1e407cd8ec70fe9a8e385d976205..c44d3a8e3e9db360325c5593b4d7167ecc5acb3a 100644 --- a/src/main/resources/templates/view-medical-file-doctor.html +++ b/src/main/resources/templates/view-medical-file-doctor.html @@ -20,7 +20,7 @@ </header> <!-- Main Section --> -<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12"> +<main class="flex-grow flex flex-col justify-center items-center text-center px-6 sm:px-8 lg:px-12 py-12 mb-12"> <!-- Contenu --> <div class="mt-6 w-full max-w-5xl bg-white bg-opacity-90 backdrop-blur-lg shadow-lg rounded-xl p-8 border border-blue-300">