{
    "uuid": "2b5473f1884b83794aafcad786ebbd2e",
    "schema_kind": "intervention",
    "lang": "fr",
    "title": "Fiche d'intervention - Contrôle température chambre froide funéraire",
    "description": "Contrôle de la température et de la traçabilité d'une chambre froide funéraire. Relevés journaliers, alarmes vérifiées, sondes étalonnées, journal de traçabilité des corps.",
    "export_date": "2026-05-26 10:00:00",
    "dolibarr_version": "18.0.0",
    "extrafields": [
        {
            "name": "tfun_etablissement",
            "label": "Établissement",
            "type": "varchar",
            "size": "200",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Établissement funéraire et adresse",
            "pos": 100,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_site",
            "label": "Site",
            "type": "varchar",
            "size": "150",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Site / agence",
            "pos": 110,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_identifiant_chambre",
            "label": "Identifiant chambre froide",
            "type": "varchar",
            "size": "100",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Numéro d'inventaire de la chambre froide funéraire",
            "pos": 120,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_nb_cases",
            "label": "Nombre de cases",
            "type": "int",
            "size": "3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Nombre de cases de conservation",
            "pos": 130,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_referent",
            "label": "Référent exploitant",
            "type": "varchar",
            "size": "150",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Responsable de l'établissement funéraire",
            "pos": 140,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_periodicite",
            "label": "Périodicité du contrôle",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "journaliere": "Journalière",
                    "hebdomadaire": "Hebdomadaire",
                    "mensuelle": "Mensuelle",
                    "annuelle": "Annuelle"
                }
            },
            "help": "Fréquence du relevé",
            "pos": 200,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "mensuelle",
            "alwayseditable": 0
        },
        {
            "name": "tfun_date_releve",
            "label": "Date du relevé",
            "type": "date",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Date du contrôle",
            "pos": 205,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_temp_consigne_c",
            "label": "Température de consigne (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Consigne paramétrée (entre 2 et 6 °C)",
            "pos": 210,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "4",
            "alwayseditable": 0
        },
        {
            "name": "tfun_temp_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é au moment du contrôle",
            "pos": 215,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_temp_min_periode_c",
            "label": "Température min période (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Minimum enregistré depuis dernier relevé",
            "pos": 220,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_temp_max_periode_c",
            "label": "Température max période (°C)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Maximum enregistré depuis dernier relevé",
            "pos": 225,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_nb_corps_presents",
            "label": "Nombre de corps présents",
            "type": "int",
            "size": "3",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Au moment du contrôle",
            "pos": 230,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_releves_journaliers",
            "label": "Relevés journaliers tenus",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Registre quotidien à jour et signé",
            "pos": 300,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_alarme_haute",
            "label": "Alarme haute température testée",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Test du déclenchement de l'alarme",
            "pos": 310,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_alarme_distante",
            "label": "Report d'alarme distant vérifié",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Transmission alarme vers astreinte",
            "pos": 320,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_sondes_etalonnees",
            "label": "Sondes étalonnées",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Certificat d'étalonnage à jour",
            "pos": 330,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_enregistreur",
            "label": "Enregistreur de température OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Datalogger opérationnel et déchargé",
            "pos": 340,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_etancheite_portes",
            "label": "Etanchéité des portes OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Joints et fermeture des cases",
            "pos": 350,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_nettoyage",
            "label": "Nettoyage et désinfection OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "État de propreté satisfaisant",
            "pos": 360,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_journal_tracabilite",
            "label": "Journal traçabilité corps à jour",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Identification, entrées et sorties consignées",
            "pos": 370,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_verif_secours_alimentation",
            "label": "Alimentation de secours testée",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Onduleur / groupe électrogène",
            "pos": 380,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "tfun_anomalies_constatees",
            "label": "Anomalies constatées",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 0,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Description des écarts ou dépassements",
            "pos": 500,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_mesures_correctives",
            "label": "Mesures correctives",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 0,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Actions réalisées (réglage, dégivrage, etc.)",
            "pos": 510,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_conclusion",
            "label": "Conclusion",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "apte": "APTE - Conforme",
                    "apte_reserve": "APTE avec réserves",
                    "inapte": "INAPTE - Anomalie majeure"
                }
            },
            "help": "Résultat du contrôle",
            "pos": 600,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "apte",
            "alwayseditable": 0
        },
        {
            "name": "tfun_date_prochaine_verif",
            "label": "Date prochain contrôle",
            "type": "date",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Selon périodicité retenue",
            "pos": 610,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_technicien_nom",
            "personal_data": 1,
            "label": "Nom du technicien",
            "type": "varchar",
            "size": "100",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Intervenant",
            "pos": 700,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "tfun_qualification",
            "label": "Qualification",
            "type": "varchar",
            "size": "100",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Habilitation froid / responsable funéraire",
            "pos": 710,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        }
    ],
    "pdf_layout": {
        "version": "1.0",
        "page": {
            "format": "A4",
            "orientation": "portrait",
            "margins": { "top": 20, "right": 15, "bottom": 20, "left": 15 },
            "font_family": "helvetica",
            "font_size": 10
        },
        "header": {
            "title": "Fiche de contrôle température chambre froide funéraire",
            "subtitle": "Relevés, alarmes et traçabilité",
            "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": "Document à conserver au registre de l'établissement funéraire"
        },
        "sections": [
            {
                "id": "identification",
                "title": "Identification de la chambre froide",
                "layout": "two_columns",
                "fields": [
                    "tfun_etablissement",
                    "tfun_site",
                    "tfun_identifiant_chambre",
                    "tfun_nb_cases",
                    "tfun_referent"
                ]
            },
            {
                "id": "releves",
                "title": "Relevés de température",
                "layout": "two_columns",
                "fields": [
                    "tfun_periodicite",
                    "tfun_date_releve",
                    "tfun_temp_consigne_c",
                    "tfun_temp_mesuree_c",
                    "tfun_temp_min_periode_c",
                    "tfun_temp_max_periode_c",
                    "tfun_nb_corps_presents"
                ]
            },
            {
                "id": "alarmes_metrologie",
                "title": "Alarmes et métrologie",
                "layout": "checklist",
                "fields": [
                    "tfun_verif_releves_journaliers",
                    "tfun_verif_alarme_haute",
                    "tfun_verif_alarme_distante",
                    "tfun_verif_sondes_etalonnees",
                    "tfun_verif_enregistreur",
                    "tfun_verif_secours_alimentation"
                ]
            },
            {
                "id": "exploitation",
                "title": "Exploitation et traçabilité",
                "layout": "checklist",
                "fields": [
                    "tfun_verif_etancheite_portes",
                    "tfun_verif_nettoyage",
                    "tfun_verif_journal_tracabilite"
                ]
            },
            {
                "id": "observations",
                "title": "Anomalies et mesures correctives",
                "layout": "full_width",
                "fields": [
                    "tfun_anomalies_constatees",
                    "tfun_mesures_correctives"
                ]
            },
            {
                "id": "conclusion",
                "title": "Conclusion du contrôle",
                "layout": "highlight_box",
                "fields": [
                    "tfun_conclusion",
                    "tfun_date_prochaine_verif"
                ]
            },
            {
                "id": "signatures",
                "title": "Technicien",
                "layout": "signature_block",
                "fields": [
                    "tfun_technicien_nom",
                    "tfun_qualification"
                ],
                "signature_boxes": [
                    { "label": "Signature technicien", "for_field": "tfun_technicien_nom" },
                    { "label": "Signature exploitant", "for_field": null }
                ]
            }
        ],
        "field_render": {
            "tfun_etablissement": { "style": "bold" },
            "tfun_identifiant_chambre": { "style": "bold", "frame": true },
            "tfun_conclusion": {
                "style": "highlight",
                "color_by_value": {
                    "apte": "#1f8a1f",
                    "apte_reserve": "#e69500",
                    "inapte": "#c00000"
                }
            },
            "tfun_anomalies_constatees": { "min_height": 30, "show_if_empty": false },
            "tfun_mesures_correctives": { "min_height": 30, "show_if_empty": false },
            "tfun_temp_consigne_c": { "suffix": " °C" },
            "tfun_temp_mesuree_c": { "suffix": " °C" },
            "tfun_temp_min_periode_c": { "suffix": " °C" },
            "tfun_temp_max_periode_c": { "suffix": " °C" }
        }
    }
}
