Banc d’essaiStock de Moutiers et AlbertvillePassinsAlbertvilleSt-Clair-de-la-TourMoutiersVu commeRomain seulResponsablesTous les magasins

Travail · Outils vente

Mélangeur

✅ Prêt

Calcul des mélanges et des taux de nicotine.

Les idées

  • Deux versions : le CALCUL DE MÉLANGE PUR (alligation, atteindre un dosage à partir de flacons qu'on a) et le DIY (base + concentré + booster)
  • ⭐ La version LIVE de LiquidFinder se CONSERVE, elle ne se remplace pas. Romain, 16/09 : « cette version live est trop aboutie pour la mettre au rancart, il faut la conserver même si elle ne sert que rarement… c'est une merveille ». Le déconnecté n'est pas son remplaçant, c'est son repli quand le réseau lâche
  • La case « Chercher dans le stock » bascule de l'un à l'autre, décochée par défaut
  • Les 16 réglages d'ajustement sont derrière l'engrenage : lus par tous, changés par Romain seul
  • 🔴 À FAIRE — BRANCHER LES CATÉGORIES NEXTORE sur les contenances de concentré du mode OFF (note 2/2 ; l'autre est dans pages/outil_melangeur.html, à DIY_CAPACITES_CONCENTRE). Romain, 16/09 : « les catégories Nextore vont bien le off, et rien pour le live, car c'est le choix du concentré qui aura raison ». ⚠ Et surtout : mesurer le STOCK ne suffit pas. Les 24 concentrés de Passins sont tous en 30 ml ; on en conclurait qu'il n'existe que ce format, alors que le 60 ml (Goose) se commande chez Levest. Un stock dit ce qu'on a AUJOURD'HUI, une catégorie dit ce qui EXISTE — et elle vaut même coupé du réseau. En attendant : [10, 30, 60] en dur, de mémoire du métier de Romain, plus un « Autre… » qui accepte n'importe quelle contenance.
  • 🎯 CE QUI RESTE À DÉCIDER — OUVRIR L'OUTIL AUX MAGASINS. Il est validé et exploitable depuis le 16/09, mais gardé en visibilité Romain seul, à sa demande : « pour le moment on le garde au chaud ». Le jour où on l'ouvre, vérifier d'abord que les cibles tactiles tiennent au comptoir et que le relais vers la base d'Arthur répond depuis les quatre magasins — pas seulement depuis ce PC.
  • 🎨 À TERME, gadgets assumés (Romain, 16/09) : remplacer les pastilles du résultat par un fac-similé de bouteille, et montrer le nombre de PETITES et de GRANDES fioles plutôt qu'un nombre écrit. Le décompte en flacons existe déjà côté booster (« 7 flacons de 10 ml + 5 ml ») : c'est la moitié du chemin.
  • 🎨 À TERME : animer le remplissage de la fiole DIY, la voir se remplir au fur et à mesure des pourcentages. La fiole SVG et ses trois bandes colorées sont en place (_alRendreFiole) — il n'y manque qu'une transition.
  • 🔧 À DÉVELOPPER PLUS TARD — LES ADDITIFS. Romain, 16/09 : « on pourra à terme penser au calcul des additifs, mais ça en notes car c'est compliqué… car on ne parle plus de ml mais de GOUTTES, donc il faut déterminer le nombre de gouttes dans 10 ml. Bref, ça c'est vraiment pas pressé. » ⚠ La difficulté n'est pas le calcul mais l'UNITÉ : une goutte n'a pas de volume fixe — elle dépend du compte-gouttes, de la viscosité du liquide et de la température. Le rapport gouttes/ml devra donc être un RÉGLAGE administrable, pas une constante, et probablement mesuré par nous sur les flacons qu'on vend réellement.
  • 🔧 À DÉVELOPPER PLUS TARD — DÉCOMPOSER LES KITS TPD. Un « 40+2*10 » n'est pas un bloc de 60 ml à 6 mg : c'est 40 ml de base NEUTRE plus deux fioles de 18 mg, et on en fait ce qu'on veut. Romain, 16/09 : « si la personne avait voulu un 3 et qu'il ne restait que du 6… un 6 est un 40+2*10, donc ça peut se traduire en 40+10+10, et le second 10 peut être autre chose ». Un seul booster donne 50 ml à 3,6 mg ; un booster plus 10 ml de base neutre donne 60 ml à 3 mg pile ; et surtout les 40 ml à 0 mg deviennent disponibles POUR DILUER autre chose — aujourd'hui l'outil ne les voit pas. Le dosage du booster ne figure nulle part, mais il se retrouve exactement : dose x volume / (n x 10) rend 18 mg sur les deux formats connus (50+10 → 3 mg, 40+2*10 → 6 mg). ⭐ Le moteur sait déjà calculer tout ça : il suffit de lui présenter les COMPOSANTS au lieu du bloc, pas une ligne à y toucher. Deux endroits : la saisie du mode coupé, et une lecture du nom « 40+2*10ML » côté page pour le live (le serveur d'Arthur n'a pas à bouger). ⚠ REPORTÉ à dessein : « c'est du tatillonnage, ça arrive mais c'est extrêmement rare, et il n'y a que moi qui sais faire ça de tête ».

À savoir

✅ VALIDÉ le 16/09/2026 par Romain, au terme d'une revue pas à pas des deux calculateurs dans les deux modes : « nous sommes au bout du mélangeur, on peut le considérer comme VALIDÉ et le retirer des travaux à faire ; il est exploitable, mais pour le moment on le garde au chaud ». 🔒 Il reste donc en visibilité ROMAIN SEUL, volontairement : c'est un choix de déploiement, pas un reste de chantier. Le passer aux magasins est une décision à prendre, pas une formalité. ⚠ Ne jamais confondre le ratio PG/VG et le taux de dilution. ⚠ Le mécanisme est repris à la virgule : nicotine_calc.js est une copie conforme (même MD5, vérifié le 16/09). Une erreur de CALCUL se corrige dans LiquidFinder, jamais ici — tout ce qui a bougé en v2 est la saisie du mode coupé et l'habillage. 📐 Écart assumé entre les deux modes sur le choix de la base : en LIVE il se fait à l'étape 2, parce qu'on y choisit un PRODUIT (marque, stock, prix) et que ça demande une liste ; en COUPÉ il se fait dans la carte Base, parce qu'il n'y a qu'un RATIO à cocher. Romain, 16/09 : « ça reste cohérent même si c'est disparate ». Forcer la symétrie coûterait plus qu'elle ne rapporte : soit une étape inutile en coupé, soit une liste de produits tassée dans une carte de 310 px. Ne pas « corriger » sans relire ceci.

D’où ça vient

LiquidFinder — calculateur nicotine

Les bases

recettes À nous
Les recettes de liquides : ingrédients, gammes, capacités, textures
LA SEULE table reprise de LiquidFinder — 1 138 lignes de savoir métier.

Les liens avec la base centrale

/api/nicotine_calc/rechercher_aromesLecture
Les liquides du catalogue qui correspondent à une recherche.
À la migration : Lire la table `produits` de la v2, filtrée sur les liquides.
/api/nicotine_calc/doses_disponiblesLecture
Les dosages d'un liquide RÉELLEMENT en stock, avec contenance et quantité.
À la migration : Lire `produits` + `stocks` par établissement. C'est ce lien qui apporte le stock : sans lui, aucune combinaison n'est écartée comme impossible.
/api/nicotine_calc/rechercher_concentres_diyLecture
Les arômes concentrés en stock, avec leur taux de dilution de fiche.
À la migration : Lire `produits` filtrés sur les concentrés, + le champ dilution.
/api/nicotine_calc/bases_disponiblesLecture
Les bases en stock et leur ratio PG/VG.
À la migration : Lire `produits` filtrés sur les bases.
/api/nicotine_calc/boosters_disponiblesLecture
Les boosters en stock, leur dosage et leur ratio PG/VG.
À la migration : Lire `produits` filtrés sur les boosters.
/api/parametres/calculLecture
Les réglages d'ajustement du calculateur (dilution, maturation, arrondis).
À la migration : DÉJÀ PRÊT côté v2 : coquille/reglages.py les porte et sait les éditer. Il reste à confronter les valeurs des deux côtés le jour J.