refactor: corriger formulaire organisation et supprimer alias morts

Formulaire organisation-form.xhtml:
- Fix binding numeroRegistre→numeroEnregistrement (bug silencieux)
- Fix réseaux sociaux: JSON brut→format lisible un par ligne
- Fix tooltips: "Côte d'Ivoire"→générique multi-pays

OrganisationsBean:
- Villes: 20 CI→70+ villes UEMOA/CEMAC/Maroc
- Régions: 19 CI→60+ régions multi-pays

nouvelle.xhtml:
- Supprimer bouton "Enregistrer" doublon dans le header

detail.xhtml:
- numeroRegistre→numeroEnregistrement
- nomOrganisationParente→organisationParenteNom
- typeLibelle→typeOrganisationLibelle

OrganisationDetailBean:
- getTypeLibelle()→getTypeOrganisationLibelle()
This commit is contained in:
dahoud
2026-04-17 20:01:02 +00:00
parent 634cc5e30d
commit cbdd5571f9
5 changed files with 70 additions and 52 deletions

View File

@@ -321,13 +321,10 @@ public class OrganisationDetailBean implements Serializable {
}
/**
* Alias pour la vue (detail.xhtml) : libellé du type d'organisation.
* Délègue à typeLibelle du DTO si présent, sinon typeOrganisationLibelle.
* Libellé du type d'organisation pour la vue.
*/
public String getTypeLibelle() {
public String getTypeOrganisationLibelle() {
if (organisation == null) return "";
String libelle = organisation.getTypeLibelle();
if (libelle != null && !libelle.isBlank()) return libelle;
return organisation.getTypeOrganisationLibelle() != null ? organisation.getTypeOrganisationLibelle() : "";
}

View File

@@ -552,14 +552,42 @@ public class OrganisationsBean implements Serializable {
}
/**
* Autocomplétion pour les villes de Côte d'Ivoire.
* Autocomplétion pour les principales villes d'Afrique de l'Ouest et Centrale.
*/
public List<String> completerVilles(String query) {
List<String> villes = List.of(
// Côte d'Ivoire
"Abidjan", "Bouaké", "Daloa", "Korhogo", "San-Pédro",
"Yamoussoukro", "Man", "Divo", "Gagnoa", "Abengourou",
"Grand-Bassam", "Bingerville", "Anyama", "Agboville",
"Dabou", "Adzopé", "Bouaflé", "Issia", "Sinfra", "Vavoua");
"Grand-Bassam", "Bingerville",
// Sénégal
"Dakar", "Thiès", "Saint-Louis", "Kaolack", "Ziguinchor",
"Rufisque", "Touba", "Mbour", "Diourbel", "Tambacounda",
// Mali
"Bamako", "Sikasso", "Mopti", "Koutiala", "Ségou",
"Kayes", "Gao", "Tombouctou",
// Burkina Faso
"Ouagadougou", "Bobo-Dioulasso", "Koudougou", "Banfora",
"Ouahigouya", "Kaya",
// Guinée
"Conakry", "Kankan", "Kindia", "Nzérékoré", "Labé",
// Togo
"Lomé", "Sokodé", "Kara", "Kpalimé", "Atakpamé",
// Bénin
"Cotonou", "Porto-Novo", "Parakou", "Abomey-Calavi", "Bohicon",
// Niger
"Niamey", "Zinder", "Maradi", "Agadez", "Tahoua",
// Cameroun
"Douala", "Yaoundé", "Bafoussam", "Garoua", "Maroua",
// Gabon
"Libreville", "Port-Gentil", "Franceville",
// Congo
"Brazzaville", "Pointe-Noire",
// RD Congo
"Kinshasa", "Lubumbashi", "Mbuji-Mayi", "Kisangani",
// Maroc
"Casablanca", "Rabat", "Marrakech", "Fès", "Tanger", "Agadir"
);
if (query == null || query.trim().isEmpty()) {
return villes;
}
@@ -570,14 +598,32 @@ public class OrganisationsBean implements Serializable {
}
/**
* Autocomplétion pour les régions de Côte d'Ivoire.
* Autocomplétion pour les régions d'Afrique de l'Ouest et Centrale.
*/
public List<String> completerRegions(String query) {
List<String> regions = List.of(
// Côte d'Ivoire
"Lagunes", "Haut-Sassandra", "Savanes", "Vallée du Bandama",
"Moyen-Comoé", "Worodougou", "Sud-Comoé", "Marahoué",
"Sud-Bandama", "Gbêkê", "Nawa", "Gbôklé", "Cavally",
"Guémon", "Tonkpi", "Bagoué", "Poro", "Tchologo", "Béré");
"Gbêkê", "Nawa", "Tonkpi", "Poro", "Sud-Comoé",
// Sénégal
"Dakar", "Thiès", "Diourbel", "Saint-Louis", "Ziguinchor",
"Kaolack", "Fatick", "Louga", "Matam", "Tambacounda",
// Mali
"Bamako", "Sikasso", "Mopti", "Ségou", "Kayes", "Koulikoro",
// Burkina Faso
"Centre", "Hauts-Bassins", "Boucle du Mouhoun", "Sahel",
// Guinée
"Conakry", "Kindia", "Nzérékoré", "Kankan", "Faranah",
// Togo
"Maritime", "Plateaux", "Centrale", "Kara", "Savanes",
// Bénin
"Littoral", "Atlantique", "Ouémé", "Borgou", "Zou",
// Cameroun
"Centre", "Littoral", "Ouest", "Nord", "Extrême-Nord",
// Maroc
"Casablanca-Settat", "Rabat-Salé-Kénitra", "Marrakech-Safi",
"Fès-Meknès", "Tanger-Tétouan-Al Hoceïma"
);
if (query == null || query.trim().isEmpty()) {
return regions;
}