From 27ac41228d265e515f773fc7ba3691a21b5e31fd Mon Sep 17 00:00:00 2001 From: KONE SOREL Date: Wed, 18 Mar 2026 12:57:43 +0000 Subject: [PATCH] df --- Js/fonctions.js | 94 ++++++++++++++++++++++++++++--------------------- 1 file changed, 54 insertions(+), 40 deletions(-) diff --git a/Js/fonctions.js b/Js/fonctions.js index 91bb5075..98312a38 100755 --- a/Js/fonctions.js +++ b/Js/fonctions.js @@ -15785,49 +15785,63 @@ function afficher_lite_prestataire_lot() { } -function selection_prestataire_lot() -{ - var nbcoche = $('#nbcoche').val(); - - - donnees = ""; - donnees_retour = ""; - - - - codeTypePrestataire = $("#codeTypePrestataire").val(); - categoriePresataire = $("#categoriePresataire").val(); - libelle = $("#libelle").val(); +function selection_prestataire_lot() { + // 1. Collecte des critères de filtrage (pour savoir quoi cocher/décocher sur le serveur) + const donnees = { + codeTypePrestataire: $("#codeTypePrestataire").val(), + categoriePresataire: $("#categoriePresataire").val(), + libelle: $("#libelle").val(), + codePays: $("#codePays").val(), + codeVille: $("#codeVille").val(), + codeLocalite: $("#codeLocalite").val() + }; - codePays = $("#codePays").val(); - codeVille = $("#codeVille").val(); - codeLocalite = $("#codeLocalite").val(); - - donnees += 'codeTypePrestataire=' + codeTypePrestataire; - donnees += '&categoriePresataire=' + categoriePresataire; - donnees += '&libelle=' + libelle; + // 2. Loader Standard Neutral Pro + const isEng = ($("#codeLangue").val() === 'en_US'); + const loader = ` +
+
+
+
+ ${isEng ? 'Processing selection...' : 'Traitement de la sélection...'} +
+
+
`; + + $("#div_liste_prestataire").html(loader); + + $.ajax({ + url: $("#racineWeb").val() + "Ajaxlisteprestataireparlot/selectionnetout/", + type: 'POST', + data: donnees, + success: function(data) { + // 3. Injection du nouveau tableau mis à jour + $("#div_liste_prestataire").html(data); + + // 4. Mise à jour des compteurs dans la vue parente + const nbreFiltre = $("#nbligne_info").val() || 0; + if (typeof updateLotCounter === 'function') { + updateLotCounter(nbreFiltre); + } else { + $("#nbligne").val("Lignes : " + nbreFiltre); + } - donnees += '&codePays=' + codePays; - donnees += '&codeVille=' + codeVille; - donnees += '&codeLocalite=' + codeLocalite; + // 5. Réactivation des composants si nécessaire + if (typeof actualiserSelectPicker === 'function') { + actualiserSelectPicker('.selectpicker'); + } - $("#div_liste_prestataire").html('
' + '
'); - - $.ajax({ - url: $("#racineWeb").val()+"Ajaxlisteprestataireparlot/selectionnetout/", - type : 'post', - data: donnees, - error: function(errorData) { - }, - success: function(data) { - donnees_retour = data; - }, - complete: function() { - $("#div_liste_prestataire").html(donnees_retour); - $("#nbligne").val("Lignes : "+$("#nbligne_info").val()); - dataTableSpeciale(); - } - }); + // 6. Initialisation de la DataTable spéciale + if (typeof dataTableSpeciale === 'function') { + dataTableSpeciale(); + } + }, + error: function(xhr, status, error) { + console.error("Erreur Sélection Lot:", error); + const msg = isEng ? "Error during bulk selection" : "Erreur lors de la sélection par lot"; + $("#div_liste_prestataire").html(`
${msg}
`); + } + }); } function afficher_prestataire_id(idPrestataire)