5.5 KiB
5.5 KiB
Fichiers modifiés
Ce fichier liste tous les fichiers qui ont été modifiés dans le cadre de l'implémentation de la fonctionnalité de pré-remplissage et de détection d'impact sur le tarif pour la page Projet RC.
Fichiers modifiés
1. /public/js/projet-form-rc.js
Modifications principales :
Pré-remplissage depuis le Tarif
- Ajout de la fonction
prefillFromTarif()pour pré-remplir les données du projet depuis le tarif (activités, marchandises, zones, activités complémentaires, type de cotisation, CA, RCE, Protection Juridique, garanties RCC) - Modification de
populateFormData()pour appelerprefillFromTarif()si un tarif existe - Ajout du pré-remplissage automatique de "Inclure les autres RC" si des extensions RCE sont présentes
Détection d'impact sur le tarif
- Ajout des variables globales pour les modulateurs (modRCActRCC, modRCMar, modRCZone, modRCActCompl, modRCGarAdd)
- Ajout de la fonction
loadModulateurs()pour charger les modulateurs depuis l'API - Ajout de la fonction
saveOriginalTarifData()pour sauvegarder l'état initial du tarif - Ajout de la fonction
checkTarifImpact()pour détecter si une modification impacte le tarif - Ajout des fonctions de détection d'impact spécifiques :
checkActivityImpact(): détecte les modifications d'activités principalescheckMarchandiseImpact(): détecte les modifications de marchandisescheckZoneImpact(): détecte les modifications de zones géographiques (compare les coefficients maximums)checkActiviteComplImpact(): détecte les modifications d'activités complémentairescheckGarantieRCCImpact(): détecte les modifications de garanties RCC impactantes
- Ajout des fonctions de récupération des données actuelles :
getCurrentActivityData(): récupère les activités principales actuellesgetCurrentMarchandiseData(): récupère les marchandises actuellesgetCurrentZoneData(): récupère les zones géographiques actuelles (prend en compte les zones désactivées)getCurrentGarantieRCCData(): récupère les garanties RCC actuellesgetCurrentActiviteComplData(): récupère les activités complémentaires actuelles
Modal d'avertissement
- Ajout de la fonction
showTarifImpactModal()pour afficher le modal d'avertissement avec restauration intelligente des valeurs - Le modal permet de restaurer la valeur originale sans recharger la page
- Ajout d'un flag
isRestoringValuepour éviter les boucles infinies lors de la restauration
Écouteurs d'événements
- Ajout de la fonction
setupTarifImpactListeners()pour configurer les écouteurs d'événements sur tous les champs impactant le tarif :- Sélecteur d'activités
- Sélecteur de marchandises
- Cases à cocher des zones géographiques
- Sélecteur de garanties RCC
- Boutons radio de type de cotisation
- Cases à cocher d'activités complémentaires
- Champs de saisie des capitaux d'activités (avec MutationObserver pour les champs dynamiques)
- Champ CA (Chiffre d'affaires)
- Switch Protection Juridique
Sauvegarde des données
- Modification de
handleSubmitForm()etsaveProjetRC()pour :- Mettre à jour le projetRC existant au lieu de toujours en créer un nouveau
- Envoyer les grilles Ad Valorem comme arrays directement (sans JSON.stringify) car PocketBase les parse automatiquement
- Sauvegarder correctement les zones même si elles sont désactivées
- Amélioration de
extractGrilleAdvalo()pour :- Gérer les tables cachées en les rendant temporairement visibles
- Extraire toutes les valeurs correctement, y compris les valeurs vides
- Restaurer correctement les styles après extraction
Chargement des données
- Amélioration de
populateGrAdvalo()pour :- Ajouter des logs de débogage
- Vérifier que les données existent et sont valides avant de remplir le tableau
- Gérer les erreurs de parsing
- Amélioration de la logique de chargement des grilles Ad Valorem pour :
- Vérifier que les données existent avant de les charger
- Gérer les cas où les données sont vides ou invalides
- Afficher des messages d'avertissement dans la console
Zones géographiques
- Correction de la logique de chargement des zones pour prendre en compte les zones désactivées
- Correction de la logique de sauvegarde pour inclure les zones désactivées (zone1 et zone2 quand zone2 ou zone3 sont sélectionnées)
- Amélioration de
getCurrentZoneData()pour retournertruepour zone1 et zone2 si elles sont désactivées
Protection Juridique et RCE
- Ajout du pré-remplissage de Protection Juridique depuis
tarif.checkPJ - Ajout du pré-remplissage des garanties RCC (contenant-confie, TPPC, ferroutage, etc.) depuis
rc - Ajout de la vérification automatique de "Inclure les autres RC" si des extensions RCE sont présentes
- Ajout de plusieurs vérifications avec setTimeout pour s'assurer que la case est cochée après tous les chargements
Date de modification
Date: 2025-01-27
Notes importantes
- Les grilles Ad Valorem sont maintenant envoyées comme arrays directement (sans JSON.stringify) car PocketBase les parse automatiquement
- Le modal d'avertissement se déclenche uniquement si une modification impacte réellement le tarif (par exemple, pour les zones, seulement si le coefficient maximum change)
- Les zones désactivées (zone1/zone2 quand zone2/zone3 sont sélectionnées) sont maintenant correctement sauvegardées et chargées
- La mise à jour du projetRC existant est maintenant gérée correctement au lieu de toujours créer un nouvel enregistrement