-- #migration 2026_07_08_063
-- objectif/checklist/mesure.questions pour C-071 à C-080

UPDATE card_guide SET checklist_json = '[{"id": "taux_horaire_perso", "type": "boolean", "label": "Définir un taux horaire personnel réaliste", "detail": "Ce taux doit couvrir tes charges sociales, tes frais professionnels et un revenu décent."}, {"id": "chronometrer_temps_reel", "type": "boolean", "label": "Chronométrer le temps réel par création", "detail": "Au-delà du temps « à l''établi », inclus la conception, la préparation, le nettoyage et l''emballage."}, {"id": "integrer_cout_final", "type": "boolean", "label": "Intégrer ce coût dans le calcul final", "detail": "Coût matière + (temps total × taux horaire) + part de frais fixes = prix de revient complet."}]', objectif_label = 'Intégrer le vrai coût de ton temps dans le calcul de tes prix.', objectif_metric_principale = 'prix_ajustes' WHERE card_id = 'C-071';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-071', 'prix_ajustes', 'Combien de prix as-tu ajustés après ce calcul ?', 'number', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "indicateurs_essentiels", "type": "boolean", "label": "Définir les indicateurs essentiels à suivre", "detail": "CA mensuel, charges totales, marge nette, et trésorerie disponible."}, {"id": "structure_simple", "type": "boolean", "label": "Créer une structure simple et réutilisable", "detail": "Un tableur avec une ligne par mois et ces colonnes essentielles suffit."}, {"id": "rdv_mensuel", "type": "boolean", "label": "Bloquer un moment mensuel fixe de mise à jour", "detail": "Un rendez-vous régulier avec ce tableau, même 30 minutes, garantit que l''outil reste vivant."}]', objectif_label = 'Avoir une vision financière mensuelle claire de ton activité.', objectif_metric_principale = 'suivi_mensuel_fait' WHERE card_id = 'C-072';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-072', 'suivi_mensuel_fait', 'As-tu mis à jour ton tableau de bord ce mois-ci ?', 'boolean', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "identifier_canaux", "type": "boolean", "label": "Identifier tous tes canaux de vente actifs", "detail": "Marchés, boutique en ligne, B2B, ateliers — liste chaque source de revenu distincte."}, {"id": "suivre_ca_temps", "type": "boolean", "label": "Suivre séparément CA et temps investi par canal", "detail": "Le temps réel consacré à chaque canal révèle sa rentabilité véritable."}, {"id": "comparer_decider", "type": "boolean", "label": "Comparer et décider où concentrer tes efforts", "detail": "Le canal qui rapporte le plus par heure investie mérite généralement plus d''attention."}]', objectif_label = 'Savoir précisément quel canal de vente rapporte vraiment le plus.', objectif_metric_principale = 'canal_plus_rentable' WHERE card_id = 'C-073';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-073', 'canal_plus_rentable', 'Quel est ton canal le plus rentable par heure investie ce mois-ci ?', 'text', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "identifier_cycles", "type": "boolean", "label": "Identifier les cycles saisonniers de ton activité", "detail": "Repère les mois historiquement forts et faibles."}, {"id": "projeter_3_6_mois", "type": "boolean", "label": "Projeter entrées et sorties sur 3 à 6 mois", "detail": "Estime le CA attendu et les charges pour chaque mois à venir, en tenant compte de la saisonnalité."}, {"id": "marge_securite", "type": "boolean", "label": "Préparer une marge de sécurité pour les périodes creuses", "detail": "Constitue une réserve pendant les mois forts pour absorber sereinement les périodes plus calmes."}]', objectif_label = 'Anticiper les creux saisonniers de ton activité plutôt que les subir.', objectif_metric_principale = 'reserve_constituee' WHERE card_id = 'C-074';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-074', 'reserve_constituee', 'As-tu constitué une réserve ce mois-ci ?', 'boolean', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "lister_achats", "type": "boolean", "label": "Lister et analyser tes achats actuels", "detail": "Recense tes principaux postes de dépense en matières premières et fournitures."}, {"id": "comparer_alternatives", "type": "boolean", "label": "Comparer avec des alternatives sur le marché", "detail": "Recherche 2-3 fournisseurs alternatifs pour tes postes de dépense les plus importants."}, {"id": "negocier_mutualiser", "type": "boolean", "label": "Négocier ou mutualiser pour réduire les coûts", "detail": "La fidélité ou le volume peuvent justifier une négociation de tarif."}]', objectif_label = 'Réduire tes coûts matière sans toucher à ton prix de vente.', objectif_metric_principale = 'economie_realisee' WHERE card_id = 'C-075';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-075', 'economie_realisee', 'Quelle économie as-tu réalisée sur tes achats ce mois-ci ?', 'number', '€', 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "cartographier_temps_forts", "type": "boolean", "label": "Cartographier les temps forts de l''année", "detail": "Identifie les périodes de forte demande, les marchés prévus et les lancements de collection."}, {"id": "estimer_capacite", "type": "boolean", "label": "Estimer la capacité de production réelle par période", "detail": "Calcule combien de pièces tu peux réellement produire par mois."}, {"id": "repartir_anticipant", "type": "boolean", "label": "Répartir la production en anticipant les pics", "detail": "Produis en avance pour les périodes de forte demande prévisible."}]', objectif_label = 'Aligner ta production sur les pics de demande prévisibles de l''année.', objectif_metric_principale = 'ruptures_evitees' WHERE card_id = 'C-076';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-076', 'ruptures_evitees', 'As-tu évité une rupture de stock ce mois-ci grâce à cette planification ?', 'boolean', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "points_essentiels", "type": "boolean", "label": "Identifier les points essentiels à couvrir", "detail": "Délais de livraison, conditions de retour, modalités du sur-mesure, acomptes, responsabilité en cas de dommage."}, {"id": "langage_clair", "type": "boolean", "label": "Rédiger en langage clair et accessible", "detail": "Évite le jargon juridique excessif."}, {"id": "rendre_accessibles", "type": "boolean", "label": "Rendre les CGV facilement accessibles", "detail": "Publie-les sur ton site et référence-les dans tes confirmations de commande."}]', objectif_label = 'Avoir des conditions générales de vente claires qui protègent toi et tes clients.', objectif_metric_principale = 'litiges_evites' WHERE card_id = 'C-077';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-077', 'litiges_evites', 'Combien de litiges as-tu évités grâce à tes CGV ce mois-ci ?', 'number', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "planifier_hausses", "type": "boolean", "label": "Planifier les hausses de prix prévisibles", "detail": "Anticipe les hausses liées à l''évolution de tes coûts matière ou à ta montée en compétence."}, {"id": "moments_promotion", "type": "boolean", "label": "Définir les moments de promotion stratégiques", "detail": "Décide à l''avance des périodes où une promotion fait sens."}, {"id": "communiquer_coherence", "type": "boolean", "label": "Communiquer cette stratégie avec cohérence", "detail": "Ta stratégie de prix doit rester stable et prévisible pour tes clients."}]', objectif_label = 'Planifier ta stratégie de prix à l''avance plutôt que de l''improviser.', objectif_metric_principale = 'hausse_planifiee' WHERE card_id = 'C-078';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-078', 'hausse_planifiee', 'As-tu une hausse de prix planifiée pour les prochains mois ?', 'boolean', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "couts_reels_marche", "type": "boolean", "label": "Calculer tous les coûts réels d''un marché", "detail": "Frais de stand, transport, temps de préparation et de présence, matériel d''exposition."}, {"id": "mesurer_ca_contacts", "type": "boolean", "label": "Mesurer le CA et les contacts générés", "detail": "Comptabilise les leads qualifiés collectés qui ont une valeur future."}, {"id": "bilan_comparer", "type": "boolean", "label": "Calculer un bilan complet et comparer entre marchés", "detail": "CA + valeur des leads collectés - tous les coûts = bilan réel."}]', objectif_label = 'Décider objectivement quels marchés valent vraiment la peine.', objectif_metric_principale = 'bilan_marches_positif' WHERE card_id = 'C-079';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-079', 'bilan_marches_positif', 'Ton dernier marché a-t-il eu un bilan positif ?', 'boolean', NULL, 30, 1);

UPDATE card_guide SET checklist_json = '[{"id": "outil_facturation", "type": "boolean", "label": "Choisir un outil adapté à ton volume d''activité", "detail": "Des outils simples et gratuits ou peu coûteux existent pour générer des factures conformes."}, {"id": "standardiser_contenu", "type": "boolean", "label": "Standardiser le contenu de chaque facture", "detail": "Informations légales obligatoires, description claire des prestations, conditions de paiement."}, {"id": "automatiser_relances", "type": "boolean", "label": "Automatiser le suivi et les relances de paiement", "detail": "La plupart des outils de facturation modernes permettent un suivi automatique et des relances programmées."}]', objectif_label = 'Professionnaliser tes factures et automatiser le suivi des paiements.', objectif_metric_principale = 'delai_paiement_moyen' WHERE card_id = 'C-080';
INSERT INTO card_guide_mesure_questions (card_id, metric, label, type, unit, cadence_jours, sort_order) VALUES
  ('C-080', 'delai_paiement_moyen', 'Quel est ton délai de paiement moyen ce mois-ci (en jours) ?', 'number', NULL, 30, 1);
