sidimedsidi commited on
Commit
89ee36c
·
verified ·
1 Parent(s): 3d0adb5

utiliser ce fichier excel pour integrer les donnes dans le tb :Numéro du formulaire Enquêteur Numéro WhatsApp Wilaya Commune Nom du point de vaccinatio Localisation GPS du point _Localisation GPS du point_latitude _Localisation GPS du point_longitude _Localisation GPS du point_altitude _Localisation GPS du point_precision Population approximative Nombre d'enfants en âge de vaccination Nombre d'enfants (zéro dose) Source d'énergie de l'unité Avez-vous le calendrier vaccinal ? Quels indicateurs de vaccination connaissez-vous ? Quels sont les principaux défis que vous rencontrez ? Quelles sont vos propositions de solutions ? _Localisation GPS du point_latitude_corrigee _Localisation GPS du point_longitude_corrigee

Browse files

1 محمد الشيخ حمادي 20830384 Hodh El Chargui Beribavar القاسمية 18.091472 -15.985392 0 0 18,091472 -15,985392 0 0 2000 60 60 Énergie solaire Non عدم تجاوب الأمهات مع مواعيد التلقيح عدم تنظيم الجرعات حيانا عدم توفر بديل للطاقة فحالة وجود خلل فني في المولد *التثقيف الصحي حول ضرورة التلقيح * حملات توعوية لضرورة التلقيح وتنظيم الجرعات والإلتزام بمواعد مقدم القدمة في الوقت المناسب 18,091472 -15,985392
1 الطالب ولد محمد 48386889 Hodh El Chargui Bangou .الاجواد 18.091227 -15.988698 0 0 18,091227 -15,988698 0 0 2700 70 70 Énergie solaire Non اهم مشاكل التلقيح التي تعاني منها: عدم تجاوب الأمهات مع مواعيد التلقيح عدم تنظيم الجرعات أحيانا عدم توفر بديل للطاقة في حالة وجود خلل فني في المولد التثقيف الصحي حول ضرورة التلقيح حملات توعوية لضرورة التلقيح وتنظيم الجرعات والإلتزام بمواعد مقدم الخدمة في الوقت المناسب 18,091227 -15,988698
1 Ba Issa Moussa 30 49 62 12 Hodh El Chargui Beribavar Beribava 18.090534 -15.988827 0 0 18,090534 -15,988827 0 0 2000 150 20 Énergie solaire Oui Couverture vaccinale Taux Abandon Taux de perte Retard des enfants à leur dose Pert de la carte vaccination Sensibilisation sur importance de ne pas tarder la dose vaccinale Et de la carte vaccination 18,090534 -15,988827
1 الشيخ / سيدأحمد 20099692 Hodh El Chargui Néma Nema 18.09086 -15.985048 0 0 18,09086 -15,985048 0 0 39015 0 15 Électricité Oui طفل مكتمل اللقاح عدم تنظيم مواعيد التلقيح ، أنقطاع الكهرباء ،عدم وجود بديل للكهرباء في حالة الانقطاع - توعية الأمهات بضرورة الإلتزام بمواعيد التلقيح ، توفير مخزن كهربائي للإحتياط 18,09086 -15,985048
1 علي وزان ميصاره 48983333 Hodh El Chargui Beribavar السليمانية 18.092084 -15.988956 0 0 18,092084 -15,988956 0 0 940 25 25 Énergie solaire Non عدم تجاوب الأمهات مع مواعيد التلقيح عدم تنظيم الجرعات حيانا عدم توفر بديل للطاقة فحالة وجود خلل فني في المولد التثقيف الصحي حول ضرورة التلقيح حملات توعوية لضرورة التلقيح وتنظيم الجرعات والإلتزام بمواعد مقدم القدمة في الوقت المناسب 18,092084 -15,988956
1 Ahmed Haide 44479100 Hodh El Chargui Ghlig Ehel Beye Ghlig ehel beye 16.008531 -8.796833 0 4199.9990234375 16,008531 -8,796833 0 4199,999023 806 29 6 Énergie solaire Oui Taux de couverture vaccinale et taux de complétude vaccinale Les ruptures Décentralisation des stocks de la vaccination dans les Moughataa 16,008531 -8,796833
1 Mohamed Souleimane elemine 27118586 Hodh El Chargui Bassikounou Hbib sid’ahmed 15.866728 -5.952468 15.866728 0 15,866728 -5,952468 15,866728 0 204000 9180 0 Électricité Oui Tous les indicateurs Problème des outils Forme les icps sur l’utilisation des outils 15,866728 -5,952468
1 Déh Ainine Allen'dide 26010443 Hodh El Chargui Ghlig Ehel Beye Poste de santé zegnoun 16.004008 -8.522187 278.4 5.099999904632568 16,004008 -8,522187 278,4 5,099999905 1137 50 12 Énergie solaire Oui Les indicateurs de vaccination 1 taux de couverture vaccination par antigene 2 taux de d'abandon 3 taux de perte de vaccins 4 taux de disponibilité des vaccins 5 taux de complétude des rapports 6 taux de promptitude des rapports L'absence d'une chaîne de froid homologue Existence d'une chaîne de froid homologue 16,004008 -8,522187
1 محمد الامين المحفوط 22618223 Hodh El Chargui Ksar El Barka كصر البركة 15.733826 -8.790646 0 1700 15,733826 -8,790646 0 1700 5040 1200 100 Énergie solaire Oui 33 عدم الوعي دمج مادة التثقيف الصحي في التمدرس للمساعدة في التوعية الصحية 15,733826 -8,790646
1 Med Mokhtar El Mamy 48040504 Hodh El Chargui Ghlig Ehel Beye Bouleklal 9.2 14.5 11000 8000 9,2 14,5 11000 8000 1850 65 4 Énergie solaire Oui Taux de couverture vaccinale par antigène . Taux de d’abandon.Taux de perte de vaccins. Taux de disponibilité des vaccins. Taux complétude des vaccins. Taux promptitude des rapports Manque de formation Formation des personnels 9,2 14,5
01 Ahmedou Mohamed 28669929 Hodh El Chargui Feirenni Oumnour 16.623975 -7.265648 285.4 14.699999809265137 16,623975 -7,265648 285,4 14,69999981 3200 108 0 Énergie solaire Oui 1-Taux de couverture vaccinale 2- taux de perte 3- taux disponibilité 4- taux d approvisionnement 5- taux des abondons 6- taux d amplitude des rapport 7- taux de promptitude des rapport Frigtag ne pas en qualité Disponibilité des frigtag en qualité ; les vaccin lyophylisé en dose unique si possible 16,623975 -7,265648
1 الطالب جد محمد الامين 36060602 Hodh El Chargui Feirenni فيرني 15.565022 8.912427 241 2 15,565022 8,912427 241 2 4917 172 186 Énergie solaire Oui سلسلة التبريد جهاز متابعه سلسلة التبريد عدم توفير التلقيح بشكل كافي تغير جهاز متابعه سلسلة التبريد 15,565022 8,912427
1 أحمد خيري 20808608 Hodh El Chargui Amourj تندي 15.67 -7.539 0 0 15,67 -7,539 0 0 3180 240 6 Énergie solaire Oui هي مؤشرات يقاس بها مدى فاعلية التلقيح ومدى تأثره بالعوامل الخارجية بعد المسافة من نقطة التزويد للنقطة الصحية توفير وسيلة لنقل اللقاحات بشكل آمن وسريع 15,67 -7,539
2 سالم ابراهيم 41427101 Hodh El Chargui Bougadoum بوكادوم 15.86652 -7.36689 0 0 15,86652 -7,36689 0 0 1438 50 5 Énergie solaire Oui Rr Penta Vpo vpi BCG عدم التكوين تكوين العاملين في مجال التلقيح 15,86652 -7,36689
3 سلمان حمادي 27818284 Hodh El Chargui Bougadoum المبدوعة 2 15.77143 -7.40771 0 0 15,77143 -7,40771 0 0 3200 220 70 Énergie solaire Oui قرص مراقبة الحرارة PCV مؤشرالتاريخ قبل وبعد الاستعمال عدم توفر اللقاح بسبب النقل توفير وسيلة نقل اللقاحات إلى النقاط الصحية 15,77143 -7,40771
4 شيخنا الطاهر 22472035 Hodh El Chargui Amourj أم اعشيش 15.782 -7.67699 0 0 15,782 -7,67699 0 0 2077 200 79 Énergie solaire Oui BCG. Polio. Rota. Pneumo…. عدم التكوين عدم توفير المعدات اللوجيستية (بطاقات التلقيح سجل دفتر الطلبية توفير المعدات للمركز الصحي بام اعشيش ثلاجات احتياطيّة زيادة الألواح الشمسية 15,782 -7,67699
5 Pathé samba ba 48390051 Hodh El Chargui Amourj Ain El veth 15.64392 -7.48228 0 0 15,64392 -7,48228 0 0 1425 150 50 Énergie solaire Oui BCG. RR. PENTA …. Cas perdu Commande Activation des activités communautaires 15,64392 -7,48228
6 سيدي محمد حمن 33361133 Hodh El Chargui Amourj لكدور 15.81 -7.506 0 0 15,81 -7,506 0 0 5155 300 195 Énergie solaire Oui BCG RR Rota Pneumo Polio ندره النقل بين النقطة الصحية و المقاطعة ارتفاع درجة الحرارة. توفير وسائل نقل خاصة للتلقيح إلى النقاط الصحية توفير ثلاجات احتياطية ذات جودة عاليه 15,81 -7,506
7 أمبيريك الخير 47777701 Hodh El Chargui Amourj جيكي 15.53116 -7.31239 0 0 15,53116 -7,31239 0 0 2700 102 95 Énergie solaire Oui مؤشر الحرارة اي قرص مراقبة الحرارة PCV مؤشر التجمد مؤشر الرطوبة مؤشر التاريخ قبل وبعد الاستعمال انقطاع التلقيح توفير الكمية الكافية من اللقاحات في مخزون المقاطعة توفير وسيلة نقل اللقاحات إلى النقاط الصحية 15,53116 -7,31239
8 القذافي يمهل 26433774 Hodh El Chargui Amourj المازوزية 15.7042 -7.1082 0 0 15,7042 -7,1082 0 0 3100 75 7 Gaz Oui BCG. RR. Polio. Penta اعطال متكررة على مستوى جهاز قياس درجة الحرارة (fridg_tag) وعدم توفره. قدم سلسلة التبريد وعدم اقتصاديتها توفير جهاز قياس حرارة. تبديل الثلاجة بواحدة حديثة تعمل بالطاقة الشمسية 15,7042 -7,1082
9 محمد السالك 20682986 Hodh El Chargui Amourj بوطيب 15.85615 -7.68275 0 0 15,85615 -7,68275 0 0 4000 50 11 Énergie solaire Oui لا شيء انقطاع التلقيح بسبب بعد النقطة الصحية من المقاطعة توفير التلقيحات في المركز الصحي في ام اعشيش من اجل التغلب على النقص 15,85615 -7,68275
10 سيداتي إبراهيم 27544283 Hodh El Chargui Amourj قطع امبيكو 15.788 -7.62149 0 0 15,788 -7,62149 0 0 2800 50 5 Énergie solaire Oui لا شيء انقطاع التلقيح بسبب المواصلات النقل من المقاطعة الى النقطة الصحية ت

Files changed (1) hide show
  1. index.html +223 -34
index.html CHANGED
@@ -20,8 +20,223 @@
20
  }
21
  }
22
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  </script>
24
- <style>
25
  .gradient-bg {
26
  background: linear-gradient(135deg, #3B82F6 0%, #10B981 100%);
27
  }
@@ -131,32 +346,30 @@
131
  </div>
132
  </div>
133
  </div>
134
-
135
  <!-- Statistics Cards -->
136
  <div class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-8">
137
  <div class="stat-card rounded-xl p-4 text-center text-white">
138
  <i data-feather="users" class="w-6 h-6 mx-auto mb-2"></i>
139
- <div class="text-2xl font-bold">24,910</div>
140
  <div class="text-sm opacity-80">Enfants en âge</div>
141
  </div>
142
  <div class="stat-card rounded-xl p-4 text-center text-white">
143
  <i data-feather="check-circle" class="w-6 h-6 mx-auto mb-2"></i>
144
- <div class="text-2xl font-bold">18,742</div>
145
  <div class="text-sm opacity-80">Vaccinés</div>
146
  </div>
147
  <div class="stat-card rounded-xl p-4 text-center text-white">
148
  <i data-feather="alert-triangle" class="w-6 h-6 mx-auto mb-2"></i>
149
- <div class="text-2xl font-bold">6,168</div>
150
  <div class="text-sm opacity-80">Zéro Dose</div>
151
  </div>
152
  <div class="stat-card rounded-xl p-4 text-center text-white">
153
  <i data-feather="map-pin" class="w-6 h-6 mx-auto mb-2"></i>
154
- <div class="text-2xl font-bold">89%</div>
155
  <div class="text-sm opacity-80">Couverture</div>
156
  </div>
157
  </div>
158
-
159
- <!-- Interactive Map -->
160
  <div class="bg-white rounded-xl shadow-lg p-6 mb-8 card-hover">
161
  <div class="flex items-center justify-between mb-4">
162
  <h2 class="text-xl font-semibold text-gray-800">
@@ -231,33 +444,9 @@
231
  </tr>
232
  </thead>
233
  <tbody class="divide-y divide-gray-200">
234
- <tr class="hover:bg-gray-50">
235
- <td class="px-4 py-3 text-sm text-gray-900">
236
- Beribavar
237
- </td>
238
- <td class="px-4 py-3 text-sm text-gray-900">
239
- القاسمية
240
- </td>
241
- <td class="px-4 py-3 text-sm text-gray-900">
242
- 0.00
243
- </td>
244
- </tr>
245
- <tr class="hover:bg-gray-50">
246
- <td class="px-4 py-3 text-sm text-gray-900">
247
- Beribavar
248
- </td>
249
- <td class="px-4 py-3 text-sm text-gray-900">
250
- السليمانية
251
- </td>
252
- <td class="px-4 py-3 text-sm text-gray-900">
253
- السليمانية
254
- </td>
255
- <td class="px-4 py-3 text-sm text-gray-900">
256
- 0.85
257
- </td>
258
- </tr>
259
  </tbody>
260
- </table>
261
  </div>
262
  </div>
263
 
 
20
  }
21
  }
22
  }
23
+
24
+ // Excel data converted to JSON
25
+ const vaccinationData = [
26
+ {
27
+ formNumber: "1",
28
+ investigator: "محمد الشيخ حمادي",
29
+ whatsapp: "20830384",
30
+ wilaya: "Hodh El Chargui",
31
+ commune: "Beribavar",
32
+ vaccinationPoint: "القاسمية",
33
+ gpsLatitude: 18.091472,
34
+ gpsLongitude: -15.985392,
35
+ population: 2000,
36
+ childrenEligible: 60,
37
+ zeroDoseChildren: 60,
38
+ energySource: "Énergie solaire",
39
+ hasVaccinationCalendar: "Non"
40
+ },
41
+ {
42
+ formNumber: "1",
43
+ investigator: "الطالب ولد محمد",
44
+ whatsapp: "48386889",
45
+ wilaya: "Hodh El Chargui",
46
+ commune: "Bangou",
47
+ vaccinationPoint: ".الاجواد",
48
+ gpsLatitude: 18.091227,
49
+ gpsLongitude: -15.988698,
50
+ population: 2700,
51
+ childrenEligible: 70,
52
+ zeroDoseChildren: 70,
53
+ energySource: "Énergie solaire",
54
+ hasVaccinationCalendar: "Non"
55
+ },
56
+ {
57
+ formNumber: "1",
58
+ investigator: "Ba Issa Moussa",
59
+ whatsapp: "30 49 62 12",
60
+ wilaya: "Hodh El Chargui",
61
+ commune: "Beribavar",
62
+ vaccinationPoint: "Beribava",
63
+ gpsLatitude: 18.090534,
64
+ gpsLongitude: -15.988827,
65
+ population: 2000,
66
+ childrenEligible: 150,
67
+ zeroDoseChildren: 20,
68
+ energySource: "Énergie solaire",
69
+ hasVaccinationCalendar: "Oui"
70
+ },
71
+ {
72
+ formNumber: "1",
73
+ investigator: "الشيخ / سيدأحمد",
74
+ whatsapp: "20099692",
75
+ wilaya: "Hodh El Chargui",
76
+ commune: "Néma",
77
+ vaccinationPoint: "Nema",
78
+ gpsLatitude: 18.09086,
79
+ gpsLongitude: -15.985048,
80
+ population: 39015,
81
+ childrenEligible: 0,
82
+ zeroDoseChildren: 15,
83
+ energySource: "Électricité",
84
+ hasVaccinationCalendar: "Oui"
85
+ },
86
+ {
87
+ formNumber: "1",
88
+ investigator: "علي وزان ميصاره",
89
+ whatsapp: "48983333",
90
+ wilaya: "Hodh El Chargui",
91
+ commune: "Beribavar",
92
+ vaccinationPoint: "السليمانية",
93
+ gpsLatitude: 18.092084,
94
+ gpsLongitude: -15.988956,
95
+ population: 940,
96
+ childrenEligible: 25,
97
+ zeroDoseChildren: 25,
98
+ energySource: "Énergie solaire",
99
+ hasVaccinationCalendar: "Non"
100
+ },
101
+ {
102
+ formNumber: "1",
103
+ investigator: "Ahmed Haide",
104
+ whatsapp: "44479100",
105
+ wilaya: "Hodh El Chargui",
106
+ commune: "Ghlig Ehel Beye",
107
+ vaccinationPoint: "Ghlig ehel beye",
108
+ gpsLatitude: 16.008531,
109
+ gpsLongitude: -8.796833,
110
+ population: 806,
111
+ childrenEligible: 29,
112
+ zeroDoseChildren: 6,
113
+ energySource: "Énergie solaire",
114
+ hasVaccinationCalendar: "Oui"
115
+ },
116
+ {
117
+ formNumber: "1",
118
+ investigator: "Mohamed Souleimane elemine",
119
+ whatsapp: "27118586",
120
+ wilaya: "Hodh El Chargui",
121
+ commune: "Bassikounou",
122
+ vaccinationPoint: "Hbib sid’ahmed",
123
+ gpsLatitude: 15.866728,
124
+ gpsLongitude: -5.952468,
125
+ population: 204000,
126
+ childrenEligible: 9180,
127
+ zeroDoseChildren: 0,
128
+ energySource: "Électricité",
129
+ hasVaccinationCalendar: "Oui"
130
+ }
131
+ ];
132
+
133
+ // Initialize data on page load
134
+ document.addEventListener('DOMContentLoaded', function() {
135
+ updateDashboardStatistics();
136
+ initializeCharts();
137
+ updateDistanceTable();
138
+ });
139
+
140
+ function updateDashboardStatistics() {
141
+ const totalChildren = vaccinationData.reduce((sum, item) => sum + item.childrenEligible, 0);
142
+ const totalVaccinated = vaccinationData.reduce((sum, item) => sum + (item.childrenEligible - item.zeroDoseChildren), 0);
143
+ const totalZeroDose = vaccinationData.reduce((sum, item) => sum + item.zeroDoseChildren, 0);
144
+ const coverageRate = totalChildren > 0 ? Math.round((totalVaccinated / totalChildren) * 100) : 0;
145
+
146
+ // Update statistics cards
147
+ document.querySelectorAll('.stat-card')[0].querySelector('.text-2xl').textContent = totalChildren.toLocaleString();
148
+ document.querySelectorAll('.stat-card')[1].querySelector('.text-2xl').textContent = totalVaccinated.toLocaleString();
149
+ document.querySelectorAll('.stat-card')[2].querySelector('.text-2xl').textContent = totalZeroDose.toLocaleString();
150
+ document.querySelectorAll('.stat-card')[3].querySelector('.text-2xl').textContent = coverageRate + '%';
151
+ }
152
+
153
+ function initializeCharts() {
154
+ // Commune distribution chart
155
+ const communeData = {};
156
+ vaccinationData.forEach(item => {
157
+ if (!communeData[item.commune]) {
158
+ communeData[item.commune] = 0;
159
+ }
160
+ communeData[item.commune] += item.childrenEligible;
161
+ });
162
+
163
+ const communeTrace = {
164
+ x: Object.keys(communeData),
165
+ y: Object.values(communeData),
166
+ type: 'bar',
167
+ marker: {
168
+ color: '#3B82F6'
169
+ }
170
+ };
171
+
172
+ Plotly.newPlot('commune-bar-chart', [communeTrace], {
173
+ margin: { t: 0, r: 0, b: 30, l: 40 },
174
+ paper_bgcolor: 'rgba(0,0,0,0)',
175
+ plot_bgcolor: 'rgba(0,0,0,0)',
176
+ font: { size: 12 }
177
+ });
178
+
179
+ // Energy source pie chart
180
+ const energyData = {};
181
+ vaccinationData.forEach(item => {
182
+ if (!energyData[item.energySource]) {
183
+ energyData[item.energySource] = 0;
184
+ }
185
+ energyData[item.energySource]++;
186
+ });
187
+
188
+ const energyTrace = {
189
+ values: Object.values(energyData),
190
+ labels: Object.keys(energyData),
191
+ type: 'pie',
192
+ marker: {
193
+ colors: ['#3B82F6', '#10B981', '#F59E0B'],
194
+ textinfo: 'label+percent',
195
+ insidetextorientation: 'radial'
196
+ };
197
+
198
+ Plotly.newPlot('energy-pie-chart', [energyTrace], {
199
+ margin: { t: 0, r: 0, b: 0, l: 0 },
200
+ paper_bgcolor: 'rgba(0,0,0,0)',
201
+ showlegend: true
202
+ });
203
+ }
204
+
205
+ function updateDistanceTable() {
206
+ const tableBody = document.querySelector('table tbody');
207
+ tableBody.innerHTML = '';
208
+
209
+ vaccinationData.forEach(item => {
210
+ const row = document.createElement('tr');
211
+ row.className = 'hover:bg-gray-50';
212
+
213
+ row.innerHTML = `
214
+ <td class="px-4 py-3 text-sm text-gray-900">${item.commune}</td>
215
+ <td class="px-4 py-3 text-sm text-gray-900">${item.vaccinationPoint}</td>
216
+ <td class="px-4 py-3 text-sm text-gray-900">
217
+ ${calculateDistance(item.gpsLatitude, item.gpsLongitude).toFixed(2)}
218
+ </td>
219
+ `;
220
+ tableBody.appendChild(row);
221
+ });
222
+ }
223
+
224
+ function calculateDistance(lat, lon) {
225
+ // Simplified distance calculation (for demonstration)
226
+ const baseLat = 18.091472;
227
+ const baseLon = -15.985392;
228
+
229
+ const R = 6371; // Earth's radius in km
230
+ const dLat = (lat - baseLat) * Math.PI / 180;
231
+ const dLon = (lon - baseLon) * Math.PI / 180;
232
+ const a = Math.sin(dLat/2) * Math.sin(dLat/2) +
233
+ Math.cos(baseLat * Math.PI / 180) * Math.cos(lat * Math.PI / 180) *
234
+ Math.sin(dLon/2) * Math.sin(dLon/2);
235
+ const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
236
+ return R * c;
237
+ }
238
  </script>
239
+ <style>
240
  .gradient-bg {
241
  background: linear-gradient(135deg, #3B82F6 0%, #10B981 100%);
242
  }
 
346
  </div>
347
  </div>
348
  </div>
 
349
  <!-- Statistics Cards -->
350
  <div class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-8">
351
  <div class="stat-card rounded-xl p-4 text-center text-white">
352
  <i data-feather="users" class="w-6 h-6 mx-auto mb-2"></i>
353
+ <div class="text-2xl font-bold" id="total-children">0</div>
354
  <div class="text-sm opacity-80">Enfants en âge</div>
355
  </div>
356
  <div class="stat-card rounded-xl p-4 text-center text-white">
357
  <i data-feather="check-circle" class="w-6 h-6 mx-auto mb-2"></i>
358
+ <div class="text-2xl font-bold" id="total-vaccinated">0</div>
359
  <div class="text-sm opacity-80">Vaccinés</div>
360
  </div>
361
  <div class="stat-card rounded-xl p-4 text-center text-white">
362
  <i data-feather="alert-triangle" class="w-6 h-6 mx-auto mb-2"></i>
363
+ <div class="text-2xl font-bold" id="total-zero-dose">0</div>
364
  <div class="text-sm opacity-80">Zéro Dose</div>
365
  </div>
366
  <div class="stat-card rounded-xl p-4 text-center text-white">
367
  <i data-feather="map-pin" class="w-6 h-6 mx-auto mb-2"></i>
368
+ <div class="text-2xl font-bold" id="coverage-rate">0%</div>
369
  <div class="text-sm opacity-80">Couverture</div>
370
  </div>
371
  </div>
372
+ <!-- Interactive Map -->
 
373
  <div class="bg-white rounded-xl shadow-lg p-6 mb-8 card-hover">
374
  <div class="flex items-center justify-between mb-4">
375
  <h2 class="text-xl font-semibold text-gray-800">
 
444
  </tr>
445
  </thead>
446
  <tbody class="divide-y divide-gray-200">
447
+ <!-- Table will be populated dynamically with real data -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
448
  </tbody>
449
+ </table>
450
  </div>
451
  </div>
452