This commit is contained in:
KONE SOREL 2026-04-10 18:32:06 +00:00
parent a632de2da7
commit 46a54279ef
2 changed files with 131 additions and 135 deletions

View File

@ -52313,90 +52313,58 @@ function actualisercollege_temp(){
// 17/11/2020 // 17/11/2020
//afficher_tauxajustement_garant //afficher_tauxajustement_garant
function afficher_bareme_accessoire_garant(){ /**
* Charge et affiche le barème des accessoires pour le garant sélectionné
var codeGcAssureur = $('#codeGcAssureur').val(); */
var codeLangue = $("#codeLangue").val(); function afficher_bareme_accessoire_garant() {
const codeGcAssureur = $('#codeGcAssureur').val();
afficheBoutons(0); const codeLangue = $("#codeLangue").val();
const racineWeb = $("#racineWeb").val();
donnees = 'codeGcAssureur='+codeGcAssureur; const $divLister = $('#div_lister_table');
if (!codeGcAssureur) return;
$.ajax({ // 1. Feedback visuel (SaaS UX)
url: $("#racineWeb").val()+"Ajaxlisterbaremeaccessoiregarant/", const loadingMsg = (codeLangue === "en_US") ? "Loading schedule..." : "Chargement du barème...";
type : 'post', $divLister.html(`
data: donnees, <div class="d-flex flex-column align-items-center justify-content-center p-5 text-primary">
error: function(errorData){ <div class="spinner-border mb-3" role="status"></div>
//alert("Erreur : "+errorData); <h6 class="fw-bold text-uppercase small">${loadingMsg}</h6>
}, </div>
success: function(data) { `);
$('#div_lister_table').html(data);
// 2. Appel AJAX
if(codeLangue=="en_US") $.ajax({
{ url: racineWeb + "Ajaxlisterbaremeaccessoiregarant/",
$('#tableLister').DataTable({ type: 'post',
responsive: true, data: { codeGcAssureur: codeGcAssureur },
"order": [[ 1, "desc" ],[6, "asc"],[2, "asc"]], success: function(data) {
"lengthMenu": [ 20, 50, 100], // Injection des données
"language": { $divLister.hide().html(data).fadeIn(300);
"lengthMenu":"Display _MENU_ records per page",
"zeroRecords": "Nothing found - sorry", // 3. Initialisation via SmartTable (Gestion auto de la langue et du style)
"info": "Showing page _PAGE_ of _PAGES_", const titreExport = (codeLangue === "en_US") ? "Guarantee Fees Schedule" : "Barème Accessoires Garant";
"infoEmpty": "No records available",
"search": "Search:", /**
"paginate": { * Tri multi-colonnes demandé :
"next": "►", * [1, 'desc'] -> Type Contrat
"previous": "◄", * [6, 'asc'] -> Application
"first": "|◄", * [2, 'asc'] -> Minimale
"last": "►|" */
}, const multiOrder = [[1, "desc"], [6, "asc"], [2, "asc"]];
"infoFiltered": "(filtered from _MAX_ total records)",
"aoColumnDefs": [ setTimeout(() => {
{ "bSearchable": false, "aTargets": [ 0 ] } //initSmartTable('#tableLister', titreExport, multiOrder, true);
] initSmartTable('#tableLister', titreExport, false, true);
} }, 100);
}); },
} error: function() {
else $divLister.html('<div class="alert alert-danger">Erreur de chargement.</div>');
{ }
$('#tableLister').DataTable({ });
responsive: true,
"order": [[ 1, "desc" ],[6, "asc"],[2, "asc"]],
"lengthMenu": [ 20, 50, 100],
"language": {
"lengthMenu":"Affiche _MENU_ par page",
"zeroRecords": "Désolé - Aucune donnée trouvée",
"info": "_PAGE_ sur _PAGES_ pages",
"infoEmpty": "Pas d'enregistrement valable",
"search": "Recherche:",
"paginate": {
"next": "►",
"previous": "◄",
"first": "|◄",
"last": "►|"
},
"infoFiltered": "(filtré de _MAX_ total enregistrements)",
"aoColumnDefs": [
{ "bSearchable": false, "aTargets": [ 0 ] }
]
}
});
}
},
complete: function() {
}
});
} }
// 23/11/2020 // 23/11/2020
function changer_lien_parente_consulter_college_temp() function changer_lien_parente_consulter_college_temp()

View File

@ -1,58 +1,86 @@
<?php <?php
$nbreTotal = count($bareme); $nbreTotal = count($bareme);
$nbreAffiche = ($nbreTotal < 10) ? '0'.$nbreTotal : format_N($nbreTotal);
if($nbreTotal < 10){ $superUser = $_SESSION['superUser'];
$nbreTotal = '0'.$nbreTotal;
}else{
$nbreTotal = format_N($nbreTotal);
}
$superUser = $_SESSION['superUser'];
?> ?>
<table style="margin: auto" class="table-responsive"> <div class="d-flex justify-content-start mt-1 mb-2 animate__animated animate__fadeIn">
<tbody> <div class="badge bg-light text-primary border px-3 py-2 shadow-sm" style="border-radius: var(--radius-md);">
<td><input class="form-control" style="text-align: center; font-size:10pt;" type="text" id="nbreTotal" name="nbreTotal" value="<?= _("Lignes Total").": ". $nbreTotal; ?>" readonly> </td> <i class="fas fa-list-ul me-2"></i><?= _("Total") ?> : <span class="fw-bold"><?= $nbreAffiche ?></span> <?= _("lignes") ?>
</tbody> </div>
</table> </div>
<input type="hidden" id="total" value="<?= $nbreTotal; ?>"> <input type="hidden" id="total" value="<?= $nbreTotal; ?>">
<table id="tableLister" class="table table-striped table-bordered table-hover table-condensed table-responsive compact">
<thead> <div class="card border-0 shadow-sm animate__animated animate__fadeInUp">
<tr> <div class="card-body p-0">
<th class="text-center"><?=_("Centre gestion")?></th> <div class="table-responsive">
<th class="text-center"><?=_("Type Contrat")?></th> <table id="tableLister" class="table table-hover align-middle mb-0 datatable-inter compact" style="width:100%">
<th class="text-center"><?=_("Prime Mini")?></th> <thead class="table-light">
<th class="text-center"><?=_("Prime Maxi")?></th> <tr class="text-uppercase small">
<th class="text-center"><?=_("Taux")?></th> <th class="text-center py-3 ps-3"><?= _("Centre") ?></th>
<th class="text-center"><?=_("Accessoire")?></th> <th class="text-center"><?= _("Type Contrat") ?></th>
<th class="text-center"><?=_("Application")?></th> <th class="text-center"><?= _("Prime Mini") ?></th>
<th class="text-center">Action</th> <th class="text-center"><?= _("Prime Maxi") ?></th>
<!--<th class="text-center">Supprimer</th>--> <th class="text-center"><?= _("Taux") ?></th>
</tr> <th class="text-center"><?= _("Accessoire") ?></th>
</thead> <th class="text-center"><?= _("Application") ?></th>
<tbody> <th class="text-center no-export pe-3" width="120px">Action</th>
<?php foreach ($bareme as $v): </tr>
$idData = $this->nettoyer($v['id']); </thead>
$typecontrat = $this->nettoyer($v['typecontrat']); <tbody>
$appli = $this->nettoyer($v['appli']); <?php foreach ($bareme as $v):
if (est_anglophone()){ $idData = $this->nettoyer($v['id']);
$typecontrat = $this->nettoyer($v['typecontratEng']); $typecontrat = est_anglophone() ? $this->nettoyer($v['typecontratEng']) : $this->nettoyer($v['typecontrat']);
$appli = $this->nettoyer($v['appliEng']); $appli = est_anglophone() ? $this->nettoyer($v['appliEng']) : $this->nettoyer($v['appli']);
} ?>
?> <tr>
<tr valign="top"> <td class="text-center fw-bold text-dark ps-3"><?= $this->nettoyer($v['codeSociete']); ?></td>
<td class="text-center" ><?= $this->nettoyer($v['codeSociete']); ?></td> <td class="text-center small"><?= $typecontrat; ?></td>
<td class="text-center" width="15%"><?= $typecontrat; ?></td> <td class="text-center text-primary fw-bold"><?= format_N($this->nettoyer($v['primeMin'])); ?></td>
<td class="text-center" width="10%"><?= format_N($this->nettoyer($v['primeMin'])); ?></td> <td class="text-center text-primary fw-bold"><?= format_N($this->nettoyer($v['primeMax'])); ?></td>
<td class="text-center" width="10%"><?= format_N($this->nettoyer($v['primeMax'])); ?></td> <td class="text-center">
<td class="text-center" width="5%"><?= number_format($this->nettoyer($v['tauxAccessoire']),2); ?></td> <span class="badge bg-light text-dark border">
<td class="text-center" width="10%"><?= format_N($this->nettoyer($v['accessoireForfait'])); ?></td> <?= number_format($this->nettoyer($v['tauxAccessoire']), 2); ?> %
<td class="text-center" width="20%"><?= $appli; ?></td> </span>
<td class="text-center" width="10%"> </td>
<button style="width:100%" class ="form-control btn btn-primary" type="button" id="btn-editer" name="Modifier" <td class="text-center text-success fw-bold"><?= format_N($this->nettoyer($v['accessoireForfait'])); ?></td>
onclick="JAVASCRIPT:formModifTableRef(<?= $idData; ?>);" ><?= _("Modifier") ?></button> <td class="text-center small text-muted"><?= $appli; ?></td>
</td> <td class="text-center pe-3">
</tr> <button type="button"
<?php endforeach; ?> class="btn btn-outline-primary btn-sm rounded-pill px-3 shadow-sm fw-bold w-100"
</tbody> onclick="formModifTableRef(<?= $idData; ?>);">
</table> <i class="fas fa-edit me-1"></i> <?= _("Modifier") ?>
</button>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
</div>
</div>
<style>
#tableLister.compact tbody td { padding: 10px 8px !important; }
#tableLister.compact thead th { font-size: 0.7rem; font-weight: 700; color: #495057; }
.bg-light.text-primary.border { border-color: rgba(13, 110, 253, 0.2) !important; }
</style>
<script>
/**
* Cette vue étant chargée dynamiquement en AJAX après sélection du Garant,
* nous réinitialisons le DataTable avec les paramètres ESI.
*/
$(document).ready(function() {
if ($.fn.DataTable.isDataTable('#tableLister')) {
$('#tableLister').DataTable().destroy();
}
if (typeof initSmartTable === 'function') {
const titreExport = "<?= _('Tableau des tranches accessoires Garant') ?>";
// defaultOrder est mis à false car le tri est géré par la requête SQL
initSmartTable('#tableLister', titreExport, false, true);
}
});
</script>