Sauver et éditer les formulaires de consultations dans dossier patient
Publié : 28 juil. 2020, 12:01
Salut à tous !
J'ai besoin d'un avis sur une portion essentielle du script. Elle est bien trop complexe et bien peu lisible pour ce qu'elle fait, mais les raisons historiques existent à cela.
Il s'agit du code qui enregistre un formulaire de consultation et dont je viens de pousser une modification :
https://github.com/MedShake/MedShakeEHR ... CsForm.php
L'idée initiale, la mienne, est la suivante : dans un formulaire l'absence de réponse est aussi une forme de réponse. Enregistrer du vide en base a un sens.
Puis est arrivé le module de Chiropraxie de fr33z00 et ses centaines de variables portées à l'écran graphiquement par le squelette.
Stocker du vide devenait inutile et potentiellement problématique en termes de volume. Nous avons donc mis en place une alternative qui est documentée ici :
https://www.logiciel-cabinet-medical.fr ... rnative-27
Notez que la problématique n'est pas forcément à la saisie initiale d'un formulaire, mais qu'elle pose de vrais problèmes à l'édition. Les checkbox, radio et autres switch compliquent encore le jeu.
Nous avons contourné avec du JavaScript :
https://github.com/MedShake/MedShakeEHR ... al.js#L378
S'ajoute aussi un cas de figure qui m'a fait pousser le dernier commit sur inc-ajax-saveCsForm.php :
https://github.com/MedShake/MedShakeEHR ... 761cd40fb7
En effet dans le module que je termine, le formulaire s'adapte contextuellement en fonction des réponses précédentes : des select, des radio, des checkbox apparaissent ou disparaissent.
Et à l'édition, si des champs existants antérieurement se retrouvent masqués, ils ne donnent plus lieu à des variables en POST ... L'enregistrement initial de cette variable n'était donc ni mis à jour ni supprimé.
Bref, il est peut-être temps de revoir le fonctionnement global de ce script essentiel.
L'idée est de garder les 2 modes de fonctionnement au choix : enregistrer du vide / ne pas enregistrer de vide.
Je soumets donc à votre perspicacité la possible simplification du script :
https://github.com/MedShake/MedShakeEHR ... CsForm.php
et les problèmes éventuels liés à mon dernier commit.
Merci !
B.
J'ai besoin d'un avis sur une portion essentielle du script. Elle est bien trop complexe et bien peu lisible pour ce qu'elle fait, mais les raisons historiques existent à cela.
Il s'agit du code qui enregistre un formulaire de consultation et dont je viens de pousser une modification :
https://github.com/MedShake/MedShakeEHR ... CsForm.php
L'idée initiale, la mienne, est la suivante : dans un formulaire l'absence de réponse est aussi une forme de réponse. Enregistrer du vide en base a un sens.
Puis est arrivé le module de Chiropraxie de fr33z00 et ses centaines de variables portées à l'écran graphiquement par le squelette.
Stocker du vide devenait inutile et potentiellement problématique en termes de volume. Nous avons donc mis en place une alternative qui est documentée ici :
https://www.logiciel-cabinet-medical.fr ... rnative-27
Notez que la problématique n'est pas forcément à la saisie initiale d'un formulaire, mais qu'elle pose de vrais problèmes à l'édition. Les checkbox, radio et autres switch compliquent encore le jeu.
Nous avons contourné avec du JavaScript :
https://github.com/MedShake/MedShakeEHR ... al.js#L378
S'ajoute aussi un cas de figure qui m'a fait pousser le dernier commit sur inc-ajax-saveCsForm.php :
https://github.com/MedShake/MedShakeEHR ... 761cd40fb7
En effet dans le module que je termine, le formulaire s'adapte contextuellement en fonction des réponses précédentes : des select, des radio, des checkbox apparaissent ou disparaissent.
Et à l'édition, si des champs existants antérieurement se retrouvent masqués, ils ne donnent plus lieu à des variables en POST ... L'enregistrement initial de cette variable n'était donc ni mis à jour ni supprimé.
Bref, il est peut-être temps de revoir le fonctionnement global de ce script essentiel.
L'idée est de garder les 2 modes de fonctionnement au choix : enregistrer du vide / ne pas enregistrer de vide.
Je soumets donc à votre perspicacité la possible simplification du script :
https://github.com/MedShake/MedShakeEHR ... CsForm.php
et les problèmes éventuels liés à mon dernier commit.
Merci !
B.