RC: auto-check activités complémentaires
This commit is contained in:
parent
e4cb9906b4
commit
cc7d3d9e08
|
|
@ -1911,13 +1911,14 @@ window.initSubmenuForm = initSubmenuForm;// Module IIFE pour éviter la pollutio
|
||||||
|
|
||||||
// Peupler le formulaire avec les données
|
// Peupler le formulaire avec les données
|
||||||
function populateFormData() {
|
function populateFormData() {
|
||||||
//Poupulate select historique (toujours affiché, options ajoutées si présentes)
|
//Poupulate select historique : n'afficher que si des entrées existent
|
||||||
const historiqueDiv = document.getElementById('historiqueDiv');
|
const historiqueDiv = document.getElementById('historiqueDiv');
|
||||||
const idSelect = document.getElementById('idSelect');
|
const idSelect = document.getElementById('idSelect');
|
||||||
|
const hasHistorique = contrat?.historique && contrat.historique.length;
|
||||||
if (historiqueDiv) {
|
if (historiqueDiv) {
|
||||||
historiqueDiv.style.display = "block";
|
historiqueDiv.style.display = hasHistorique ? "block" : "none";
|
||||||
}
|
}
|
||||||
if (idSelect && contrat?.historique && contrat.historique.length) {
|
if (idSelect && hasHistorique) {
|
||||||
contrat.historique.forEach(function (item) {
|
contrat.historique.forEach(function (item) {
|
||||||
var option = document.createElement('option');
|
var option = document.createElement('option');
|
||||||
option.value = item.id;
|
option.value = item.id;
|
||||||
|
|
|
||||||
|
|
@ -954,9 +954,33 @@ window.initSubmenuForm = initSubmenuForm;// Module IIFE pour éviter la pollutio
|
||||||
M.FormSelect.init(idSelect);
|
M.FormSelect.init(idSelect);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Helpers défauts (au cas où aucune donnée côté RC)
|
||||||
|
const ensureDefaultActComplVoiturier = () => {
|
||||||
|
const container = document.querySelector('[name="actComplVoiturier/Loueur"]');
|
||||||
|
if (!container) return;
|
||||||
|
const checkboxes = Array.from(container.querySelectorAll('input[type="checkbox"]'));
|
||||||
|
const anyChecked = checkboxes.some(cb => cb.checked);
|
||||||
|
if (!anyChecked) {
|
||||||
|
checkboxes.forEach((cb, idx) => {
|
||||||
|
if (idx <= 1) cb.checked = true; // Voiturier + Loueur
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const ensureDefaultMarchandisesVoiturier = () => {
|
||||||
|
const container = document.querySelector('[name="marVoiturier/Loueur"]');
|
||||||
|
if (!container) return;
|
||||||
|
const checkboxes = Array.from(container.querySelectorAll('input[type="checkbox"]'));
|
||||||
|
const anyChecked = checkboxes.some(cb => cb.checked);
|
||||||
|
if (!anyChecked && checkboxes.length > 0) {
|
||||||
|
checkboxes[0].checked = true; // Marchandises ordinaires par défaut
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// ===== PRÉ-REMPLIR LE FORMULAIRE AVEC LES DONNÉES RC DE LA BASE =====
|
// ===== PRÉ-REMPLIR LE FORMULAIRE AVEC LES DONNÉES RC DE LA BASE =====
|
||||||
if (!rc) {
|
if (!rc) {
|
||||||
console.log('Aucune donnée RC à pré-remplir');
|
console.log('Aucune donnée RC à pré-remplir');
|
||||||
|
ensureDefaultActComplVoiturier();
|
||||||
|
ensureDefaultMarchandisesVoiturier();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1131,6 +1155,10 @@ window.initSubmenuForm = initSubmenuForm;// Module IIFE pour éviter la pollutio
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Valeurs par défaut si aucune marchandise/activité compl. remontée
|
||||||
|
ensureDefaultActComplVoiturier();
|
||||||
|
ensureDefaultMarchandisesVoiturier();
|
||||||
|
|
||||||
// Pré-remplir les pourcentages (depuis tarifRC)
|
// Pré-remplir les pourcentages (depuis tarifRC)
|
||||||
// Préférer l'objet tarif si présent, sinon retomber sur l'expansion RC
|
// Préférer l'objet tarif si présent, sinon retomber sur l'expansion RC
|
||||||
const tarifSource = tarif || rc?.["@expand"]?.tarifRC || rc?.tarifRC || rc || null;
|
const tarifSource = tarif || rc?.["@expand"]?.tarifRC || rc?.tarifRC || rc || null;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue