From 8d1d65e27b62315cd6a4ec7155bec7e734eb9633 Mon Sep 17 00:00:00 2001
From: Nyavokevin <42602932+nyavokevin@users.noreply.github.com>
Date: Thu, 6 Nov 2025 15:09:40 +0300
Subject: [PATCH] add gestion thanato
---
.../CRM/EmployeeDetailPresentation.vue | 164 +++++
.../CRM/employee/EmployeeDetailContent.vue | 105 +++
.../CRM/employee/EmployeeDetailSidebar.vue | 85 +++
.../Employee/EmployeePresentation.vue | 174 +----
.../AddThanatopractitionerPresentation.vue | 501 ++++++++++++++
.../ThanatopractitionerPresentation.vue | 92 +++
.../molecules/Employees/EmployeeTable.vue | 416 ++++++++----
.../ThanatopractitionerTable.vue | 632 ++++++++++++++++++
.../molecules/common/ConfirmModal.vue | 431 ++++++++++++
.../employee/EmployeeActivityTab.vue | 363 ++++++++++
.../employee/EmployeeDocumentsTab.vue | 456 +++++++++++++
.../molecules/employee/EmployeeInfoTab.vue | 332 +++++++++
.../molecules/employee/EmployeeOverview.vue | 346 ++++++++++
.../employee/EmployeePractitionerTab.vue | 420 ++++++++++++
.../employee/EmployeeProfileCard.vue | 140 ++++
.../employee/EmployeeTabNavigation.vue | 54 ++
.../templates/CRM/EmployeeDetailTemplate.vue | 21 +
.../CRM/ThanatopractitionerTemplate.vue | 24 +
.../src/examples/ConfirmModalUsage.vue | 271 ++++++++
.../src/examples/Sidenav/SidenavList.vue | 2 +-
thanasoft-front/src/router/index.js | 23 +-
.../src/services/thanatopractitioner.ts | 286 ++++++++
thanasoft-front/src/stores/employeeStore.ts | 10 +
.../src/stores/thanatopractitionerStore.ts | 421 ++++++++++++
.../src/views/pages/CRM/EmployeeDetails.vue | 107 +++
.../src/views/pages/Employes/Employees.vue | 133 +++-
.../AddThanatopractitioner.vue | 70 ++
.../Thanatopractitioners.vue | 174 +++++
28 files changed, 5941 insertions(+), 312 deletions(-)
create mode 100644 thanasoft-front/src/components/Organism/CRM/EmployeeDetailPresentation.vue
create mode 100644 thanasoft-front/src/components/Organism/CRM/employee/EmployeeDetailContent.vue
create mode 100644 thanasoft-front/src/components/Organism/CRM/employee/EmployeeDetailSidebar.vue
create mode 100644 thanasoft-front/src/components/Organism/Thanatopractitioner/AddThanatopractitionerPresentation.vue
create mode 100644 thanasoft-front/src/components/Organism/Thanatopractitioner/ThanatopractitionerPresentation.vue
create mode 100644 thanasoft-front/src/components/molecules/Thanatopractitioners/ThanatopractitionerTable.vue
create mode 100644 thanasoft-front/src/components/molecules/common/ConfirmModal.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeActivityTab.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeDocumentsTab.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeInfoTab.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeOverview.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeePractitionerTab.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeProfileCard.vue
create mode 100644 thanasoft-front/src/components/molecules/employee/EmployeeTabNavigation.vue
create mode 100644 thanasoft-front/src/components/templates/CRM/EmployeeDetailTemplate.vue
create mode 100644 thanasoft-front/src/components/templates/CRM/ThanatopractitionerTemplate.vue
create mode 100644 thanasoft-front/src/examples/ConfirmModalUsage.vue
create mode 100644 thanasoft-front/src/services/thanatopractitioner.ts
create mode 100644 thanasoft-front/src/stores/thanatopractitionerStore.ts
create mode 100644 thanasoft-front/src/views/pages/CRM/EmployeeDetails.vue
create mode 100644 thanasoft-front/src/views/pages/Thanatopractitioners/AddThanatopractitioner.vue
create mode 100644 thanasoft-front/src/views/pages/Thanatopractitioners/Thanatopractitioners.vue
diff --git a/thanasoft-front/src/components/Organism/CRM/EmployeeDetailPresentation.vue b/thanasoft-front/src/components/Organism/CRM/EmployeeDetailPresentation.vue
new file mode 100644
index 0000000..b6eb2a0
--- /dev/null
+++ b/thanasoft-front/src/components/Organism/CRM/EmployeeDetailPresentation.vue
@@ -0,0 +1,164 @@
+
+
+
+
+
+ Informations du Thanatopractitioner +
+Création du thanatopractitioner...
+| ID | -Nom & Prénom | -Téléphone | -Poste | -Date d'embauche | -Status | -Action | -|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
-
-
- - {{ employee.id }} - - |
+
| ID | +Nom & Prénom | +Téléphone | +Poste | +Date d'embauche | +Status | +Action | +||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
+
+
+ + {{ employee.id }} + + |
-
-
-
-
- {{ employee.last_name }} {{ employee.first_name }}
-
- Thanatopractitioner
+
+
+ |
+
+
-
-
+ {{ employee.last_name }} {{ employee.first_name }}
+
+ Thanatopractitioner
+
|
-
- - {{ employee.email || "N/A" }} - | + ++ {{ employee.email || "N/A" }} + | - -- {{ employee.phone || "N/A" }} - | + ++ {{ employee.phone || "N/A" }} + | - -
-
-
- |
+
+
+
+
+ |
-
- - {{ formatDate(employee.hire_date) }} - | + ++ {{ + formatDate(employee.hire_date) + }} + | - -
-
-
- |
+
+
+
+
+ |
-
-
-
-
+ |
-
+
+
- |
| ID | +Nom & Prénom | +Téléphone | +Numéro diplôme | +Numéro autorisation | +Validité autorisation | +Status | +|
|---|---|---|---|---|---|---|---|
|
+
+
+
+
+ |
+
+
+
+
+
+
+
+ |
+
+
+ + + | + + ++ + | + + ++ + | + + ++ + | + + ++ + | + + +
+
+
+
+
+ |
+
| ID | +Nom & Prénom | +Téléphone | +Numéro diplôme | +Numéro autorisation | +Validité autorisation | +Status | +Action | +|
|---|---|---|---|---|---|---|---|---|
|
+
+
+ + {{ thanatopractitioner.id }} + + |
+
+
+
+
+
+
+ {{
+ thanatopractitioner.employee?.full_name ||
+ `${thanatopractitioner.employee?.first_name || ""} ${
+ thanatopractitioner.employee?.last_name || ""
+ }` ||
+ "N/A"
+ }}
+
+ Thanatopractitioner
+ |
+
+
+ + {{ + thanatopractitioner.employee?.email || "N/A" + }} + | + + ++ {{ + thanatopractitioner.employee?.phone || "N/A" + }} + | + + +
+
+
+ |
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+ {{
+ formatDate(thanatopractitioner.authorization_expiry_date)
+ }}
+
+ |
+
+
+
+
+
+ |
+
+
+
+
+
+ |
+
+ Aucun thanatopractitioner à afficher pour le moment. +
++ Le compte employé a été créé dans le système +
+ {{ + formatDate(employee.created_at) + }} ++ Les informations de l'employé ont été mises à jour +
+ {{ + formatDate(employee.updated_at) + }} ++ Le statut de thanatopractitioner a été ajouté +
+ {{ + formatDate(employee.thanatopractitioner.created_at) + }} +Jours de service
+Documents
+Tâches terminées
+Performance
+| Action | +Description | +Date | +Statut | +
|---|---|---|---|
| + Création + | +Compte employé créé | +{{ formatDate(employee.created_at) }} | ++ Terminé + | +
| + Modification + | +Profil mis à jour | +{{ formatDate(employee.updated_at) }} | ++ Terminé + | +
+ {{ getDocumentTypeLabel(document.type) }} +
++ Commencez par ajouter des documents pour ce praticien. +
+ +Prénom
+Nom
+Téléphone
+{{ formattedHireDate }}
++ {{ employee.job_title || "Non renseigné" }} +
++ {{ + employee.salary ? `${employee.salary} €` : "Non renseigné" + }} +
++ + {{ employee.active ? "Actif" : "Inactif" }} + +
++ {{ + employee.thanatopractitioner.license_number || + "Non renseigné" + }} +
++ {{ + employee.thanatopractitioner.authorization_number || + "Non renseigné" + }} +
++ {{ + formatDate( + employee.thanatopractitioner.authorization_valid_until + ) + }} +
++ {{ formatDate(employee.created_at) }} +
++ {{ formatDate(employee.updated_at) }} +
++ {{ thanatopractitioner.license_number }} +
++ {{ thanatopractitioner.authorization_number }} +
++ {{ formatDate(thanatopractitioner.created_at) }} +
++ {{ formatDate(thanatopractitioner.updated_at) }} +
++ {{ + formatDate(thanatopractitioner.authorization_valid_until) + }} +
++ + {{ + getAuthorizationStatusText( + thanatopractitioner.authorization_valid_until + ) + }} + +
++ Certification initiale en thanatopraxie +
+ {{ + formatDate(thanatopractitioner.created_at) + }} ++ {{ jobTitle }} +
+ + +Date embauche
+Statut
+