{
    "uuid": "3d90a94eaf9988f21244b4c37197d304",
    "schema_kind": "intervention",
    "lang": "fr",
    "title": "Fiche d'intervention - Contrôle mensuel hygrométrie local de stockage",
    "description": "Contrôle mensuel des conditions climatiques d'un local de stockage sensible (self-storage premium, garde-meubles oeuvres d'art, archives, documents médicaux) : hygrométrie, température, déshumidification, point de rosée, étanchéité et historique de données.",
    "export_date": "2026-05-29 10:00:00",
    "dolibarr_version": "18.0.0",
    "extrafields": [
        {
            "name": "loc_exploitant",
            "label": "Exploitant",
            "type": "varchar",
            "size": "200",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Société de garde-meubles, archives, etc.",
            "pos": 100,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_adresse",
            "label": "Adresse du local",
            "type": "varchar",
            "size": "200",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Adresse postale",
            "pos": 110,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_identifiant",
            "label": "Identifiant local",
            "type": "varchar",
            "size": "50",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Numéro ou nom du local",
            "pos": 120,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_type_stockage",
            "label": "Type de stockage",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "self_storage_premium": "Self-storage premium climatisé",
                    "garde_meubles_oeuvres_art": "Garde-meubles oeuvres d'art",
                    "archives_papier": "Archives papier",
                    "archives_medicales": "Archives médicales",
                    "archives_audiovisuelles": "Archives audiovisuelles (bobines, bandes)",
                    "stockage_vins_particuliers": "Stockage vins particuliers",
                    "instruments_musique": "Instruments de musique",
                    "stockage_textiles_haute_couture": "Textiles \/ Haute couture"
                }
            },
            "help": "Nature des biens stockés",
            "pos": 130,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "self_storage_premium",
            "alwayseditable": 0
        },
        {
            "name": "loc_volume_m3",
            "label": "Volume du local (m3)",
            "type": "double",
            "size": "8,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Volume total",
            "pos": 140,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_consigne_temp_c",
            "label": "Consigne température (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Consigne de régulation",
            "pos": 150,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "18",
            "alwayseditable": 0
        },
        {
            "name": "loc_consigne_hum_pct",
            "label": "Consigne hygrométrie (%)",
            "type": "int",
            "size": "3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Consigne de régulation",
            "pos": 160,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "50",
            "alwayseditable": 0
        },
        {
            "name": "type_intervention",
            "label": "Type d'intervention",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "controle_mensuel": "Contrôle mensuel programmé",
                    "controle_apres_alerte": "Contrôle après alerte capteur",
                    "controle_apres_sinistre": "Contrôle après sinistre (dégât eaux)",
                    "etalonnage_capteurs": "Étalonnage capteurs"
                }
            },
            "help": "Nature du contrôle",
            "pos": 200,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "controle_mensuel",
            "alwayseditable": 0
        },
        {
            "name": "loc_temperature_mesuree_c",
            "label": "Température mesurée (°C)",
            "type": "double",
            "size": "4,1",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Relevé instantané",
            "pos": 300,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_hygrometrie_mesuree_pct",
            "label": "Hygrométrie mesurée (%)",
            "type": "int",
            "size": "3",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Relevé instantané",
            "pos": 310,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_point_rosee_c",
            "label": "Point de rosée (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Calculé ou mesuré",
            "pos": 320,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_temperature_min_mois_c",
            "label": "Température min sur le mois (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Tirée de l'historique de la sonde",
            "pos": 330,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_temperature_max_mois_c",
            "label": "Température max sur le mois (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Tirée de l'historique de la sonde",
            "pos": 340,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_hum_min_mois_pct",
            "label": "Hygrométrie min sur le mois (%)",
            "type": "int",
            "size": "3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Tirée de l'historique",
            "pos": 350,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "loc_hum_max_mois_pct",
            "label": "Hygrométrie max sur le mois (%)",
            "type": "int",
            "size": "3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Tirée de l'historique",
            "pos": 360,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "verif_dans_plage_consigne",
            "label": "Valeurs dans la plage de consigne",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Tolérance constructeur respectée",
            "pos": 370,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_climatisation_fonctionne",
            "label": "Climatisation fonctionne (régulation, débit)",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Unité de production fonctionnelle",
            "pos": 380,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_deshumidificateur",
            "label": "Déshumidificateur \/ Humidificateur OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Selon besoin métier",
            "pos": 390,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_filtres_changes",
            "label": "Filtres CTA propres \/ changés",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Selon plan de maintenance",
            "pos": 400,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_capteurs_etalonnage",
            "label": "Capteurs hygro\/temp étalonnés cette année",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Étalonnage de moins de 12 mois",
            "pos": 410,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_alarme_seuil",
            "label": "Alarmes de seuil opérationnelles",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Test alarme T° haute\/basse et hygro",
            "pos": 420,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_etancheite_local",
            "label": "Étanchéité du local (portes, joints)",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Pas d'entrée d'air parasite",
            "pos": 430,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_absence_condensation",
            "label": "Absence de condensation sur parois",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Pas de traces, pas de moisissure",
            "pos": 440,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_historique_exporte",
            "label": "Historique des données exporté et archivé",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Export CSV ou PDF de la courbe du mois",
            "pos": 450,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "anomalies_constatees",
            "label": "Anomalies constatées",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 0,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Dérives, dépassements, alarmes du mois",
            "pos": 500,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "actions_correctives",
            "label": "Actions correctives engagées",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 0,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Réglage consignes, intervention CTA, etc.",
            "pos": 510,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "conclusion",
            "label": "Conclusion",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "conforme": "Conditions CONFORMES",
                    "surveillance_renforcee": "Surveillance renforcée",
                    "alerte_climatique": "ALERTE - biens à risque"
                }
            },
            "help": "Décision",
            "pos": 600,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "conforme",
            "alwayseditable": 0
        },
        {
            "name": "date_prochain_controle",
            "label": "Date prochain contrôle",
            "type": "date",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Mensuel",
            "pos": 610,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "operateur_nom",
            "personal_data": 1,
            "label": "Nom de l'opérateur",
            "type": "varchar",
            "size": "100",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Responsable site ou prestataire",
            "pos": 700,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "qualification",
            "label": "Qualification",
            "type": "varchar",
            "size": "100",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Frigoriste, archiviste, restaurateur d'art",
            "pos": 710,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        }
    ],
    "pdf_layout": {
        "version": "1.1",
        "page": {
            "format": "A4",
            "orientation": "portrait",
            "margins": { "top": 20, "right": 15, "bottom": 20, "left": 15 },
            "font_family": "helvetica",
            "font_size": 10
        },
        "header": {
            "title": "Contrôle mensuel hygrométrie local de stockage",
            "subtitle": "Garde-meubles sensible, archives, oeuvres",
            "logo_placeholder": "top-right",
            "show_page_number": true,
            "show_generated_date": true
        },
        "footer": {
            "text": "Document généré via schemas.cap-rel.fr",
            "legal_mentions": "À archiver dans le dossier d'exploitation"
        },
        "sections": [
            {
                "id": "identification",
                "title": "Identification du local",
                "layout": "two_columns",
                "fields": [
                    "loc_exploitant",
                    "loc_adresse",
                    "loc_identifiant",
                    "loc_type_stockage",
                    "loc_volume_m3",
                    "loc_consigne_temp_c",
                    "loc_consigne_hum_pct"
                ]
            },
            {
                "id": "intervention",
                "title": "Type d'intervention",
                "layout": "single_column",
                "fields": ["type_intervention"]
            },
            {
                "id": "mesures_instantanees",
                "title": "Mesures instantanées",
                "layout": "two_columns",
                "fields": [
                    "loc_temperature_mesuree_c",
                    "loc_hygrometrie_mesuree_pct",
                    "loc_point_rosee_c"
                ]
            },
            {
                "id": "historique_mois",
                "title": "Historique sur le mois écoulé",
                "layout": "two_columns",
                "fields": [
                    "loc_temperature_min_mois_c",
                    "loc_temperature_max_mois_c",
                    "loc_hum_min_mois_pct",
                    "loc_hum_max_mois_pct",
                    "verif_dans_plage_consigne"
                ]
            },
            {
                "id": "installation",
                "title": "Installation climatique",
                "layout": "checklist",
                "fields": [
                    "verif_climatisation_fonctionne",
                    "verif_deshumidificateur",
                    "verif_filtres_changes",
                    "verif_capteurs_etalonnage",
                    "verif_alarme_seuil"
                ]
            },
            {
                "id": "enveloppe",
                "title": "Enveloppe et données",
                "layout": "checklist",
                "fields": [
                    "verif_etancheite_local",
                    "verif_absence_condensation",
                    "verif_historique_exporte"
                ]
            },
            {
                "id": "observations",
                "title": "Anomalies et actions correctives",
                "layout": "full_width",
                "fields": ["anomalies_constatees", "actions_correctives"]
            },
            {
                "id": "conclusion",
                "title": "Conclusion",
                "layout": "highlight_box",
                "fields": ["conclusion", "date_prochain_controle"]
            },
            {
                "id": "signatures",
                "title": "Opérateur",
                "layout": "signature_block",
                "fields": ["operateur_nom", "qualification"],
                "signature_boxes": [
                    { "label": "Signature opérateur", "for_field": "operateur_nom" },
                    { "label": "Visa exploitant", "for_field": null }
                ]
            }
        ],
        "field_render": {
            "loc_exploitant": { "style": "bold" },
            "loc_volume_m3": { "suffix": " m3" },
            "loc_consigne_temp_c": { "suffix": " °C" },
            "loc_consigne_hum_pct": { "suffix": " %" },
            "loc_temperature_mesuree_c": { "suffix": " °C" },
            "loc_hygrometrie_mesuree_pct": { "suffix": " %" },
            "loc_point_rosee_c": { "suffix": " °C" },
            "loc_temperature_min_mois_c": { "suffix": " °C" },
            "loc_temperature_max_mois_c": { "suffix": " °C" },
            "loc_hum_min_mois_pct": { "suffix": " %" },
            "loc_hum_max_mois_pct": { "suffix": " %" },
            "conclusion": {
                "style": "highlight",
                "color_by_value": {
                    "conforme": "#1f8a1f",
                    "surveillance_renforcee": "#e69500",
                    "alerte_climatique": "#c00000"
                }
            },
            "anomalies_constatees": { "min_height": 30, "show_if_empty": false },
            "actions_correctives": { "min_height": 30, "show_if_empty": false }
        }
    }
}
