{
    "uuid": "7316afd116de253cdee5861080f58327",
    "schema_kind": "intervention",
    "lang": "fr",
    "title": "Fiche d'intervention - Inspection cages marines d'aquaculture",
    "description": "Inspection technique et sanitaire d'une cage d'élevage marin flottante (salmoniculture, daurade, bar) : structure flottante, filets et ragages, ancrages, antifouling, fixations et protection anti-prédateurs.",
    "export_date": "2026-05-29 10:00:00",
    "dolibarr_version": "18.0.0",
    "extrafields": [
        {
            "name": "cage_exploitant",
            "label": "Exploitant \/ Ferme marine",
            "type": "varchar",
            "size": "200",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Raison sociale exploitant",
            "pos": 100,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_zone_concession",
            "label": "Zone de concession \/ DPM",
            "type": "varchar",
            "size": "200",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Référence concession domaine public maritime",
            "pos": 110,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_identifiant",
            "label": "Identifiant de la cage",
            "type": "varchar",
            "size": "50",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Numéro ou code cage",
            "pos": 120,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_type",
            "label": "Type de cage",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "circulaire_pehd": "Cage circulaire PEHD",
                    "rectangulaire_metal": "Cage rectangulaire métallique",
                    "submersible": "Cage submersible",
                    "offshore_haute_mer": "Cage offshore haute mer",
                    "etang_cotier": "Cage en étang côtier"
                }
            },
            "help": "Typologie",
            "pos": 130,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "circulaire_pehd",
            "alwayseditable": 0
        },
        {
            "name": "cage_diametre_m",
            "label": "Diamètre \/ Côté (m)",
            "type": "double",
            "size": "5,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Dimension caractéristique",
            "pos": 140,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_profondeur_filet_m",
            "label": "Profondeur du filet (m)",
            "type": "double",
            "size": "4,1",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Profondeur immergée du filet",
            "pos": 150,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_espece_elevee",
            "label": "Espèce élevée",
            "type": "select",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "saumon_atlantique": "Saumon atlantique",
                    "truite_mer": "Truite de mer",
                    "bar_loup": "Bar (loup)",
                    "daurade_royale": "Daurade royale",
                    "maigre": "Maigre",
                    "thon_rouge": "Thon rouge",
                    "autre": "Autre"
                }
            },
            "help": "Espèce principale en élevage",
            "pos": 160,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "bar_loup",
            "alwayseditable": 0
        },
        {
            "name": "cage_biomasse_kg",
            "label": "Biomasse estimée (kg)",
            "type": "double",
            "size": "10,2",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Poids vif total estimé",
            "pos": 170,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "type_intervention",
            "label": "Type d'intervention",
            "type": "select",
            "size": "",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": {
                "options": {
                    "inspection_routine": "Inspection de routine",
                    "inspection_post_tempete": "Inspection post-tempête",
                    "inspection_pre_calage": "Inspection avant calage",
                    "inspection_pre_recolte": "Inspection avant récolte",
                    "controle_securite_concession": "Contrôle sécurité de la concession"
                }
            },
            "help": "Nature de l'inspection",
            "pos": 200,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "inspection_routine",
            "alwayseditable": 0
        },
        {
            "name": "verif_collerette_flotteurs",
            "label": "Collerette \/ Flotteurs PEHD OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Pas de fissure, étanchéité, flottabilité",
            "pos": 300,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_main_courante",
            "label": "Main courante et plateforme de service OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Sécurité accès opérateur",
            "pos": 310,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_filet_elevage",
            "label": "Filet d'élevage OK (mailles, déchirures)",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Inspection visuelle et plongée",
            "pos": 320,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_filet_anti_predateurs",
            "label": "Filet anti-prédateurs OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Protection phoques, oiseaux plongeurs",
            "pos": 330,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_ragages_lests",
            "label": "Lests et tube de lest OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Maintien de la forme du filet en profondeur",
            "pos": 340,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_antifouling",
            "label": "État antifouling \/ envahissement biologique",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Nettoyage requis si encrassement excessif",
            "pos": 350,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_ancrages_chaines",
            "label": "Ancrages et chaînes OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Chaînes principales, ancres ou corps morts",
            "pos": 360,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_manilles_emerillons",
            "label": "Manilles, émerillons, ridoirs OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Quincaillerie marine pas usée ni corrodée",
            "pos": 370,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_signalisation_maritime",
            "label": "Signalisation maritime OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Bouées lumineuses, feux, marquage",
            "pos": 380,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "verif_systeme_distrib_aliment",
            "label": "Distributeur d'aliment OK",
            "type": "boolean",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Si présent : tuyauterie, soufflerie, vidéo",
            "pos": 390,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "1",
            "alwayseditable": 0
        },
        {
            "name": "cage_mortalite_periode",
            "label": "Mortalité sur la période (nb individus)",
            "type": "int",
            "size": "7",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Cumul depuis dernière inspection",
            "pos": 400,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "cage_evasions_estimees",
            "label": "Évasions estimées (nb individus)",
            "type": "int",
            "size": "7",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "À déclarer si > 0",
            "pos": 410,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "0",
            "alwayseditable": 0
        },
        {
            "name": "anomalies_constatees",
            "label": "Anomalies constatées",
            "type": "text",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 0,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Description des défauts relevés",
            "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éparations, remplacements, plongée prévue",
            "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": "CONFORME",
                    "conforme_reserve": "CONFORME avec réserves",
                    "non_conforme": "NON CONFORME - intervention requise"
                }
            },
            "help": "Décision de conformité",
            "pos": 600,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "conforme",
            "alwayseditable": 0
        },
        {
            "name": "date_prochaine_inspection",
            "label": "Date prochaine inspection",
            "type": "date",
            "size": "",
            "required": 0,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Selon plan de surveillance",
            "pos": 610,
            "enabled": 1,
            "perms": "",
            "langfile": "",
            "computed": "",
            "default": "",
            "alwayseditable": 0
        },
        {
            "name": "inspecteur_nom",
            "personal_data": 1,
            "label": "Nom de l'inspecteur",
            "type": "varchar",
            "size": "100",
            "required": 1,
            "unique": 0,
            "visible": 1,
            "totalizable": 0,
            "printable": 1,
            "param": [],
            "help": "Plongeur, technicien ou cadre",
            "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": "Plongeur classe 1B, scaphandrier, certifié",
            "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": "Inspection cage marine d'aquaculture",
            "subtitle": "Structure, filets, ancrages et bien-être animal",
            "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": "À conserver dans le registre d'exploitation"
        },
        "sections": [
            {
                "id": "identification",
                "title": "Identification de la cage",
                "layout": "two_columns",
                "fields": [
                    "cage_exploitant",
                    "cage_zone_concession",
                    "cage_identifiant",
                    "cage_type",
                    "cage_diametre_m",
                    "cage_profondeur_filet_m",
                    "cage_espece_elevee",
                    "cage_biomasse_kg"
                ]
            },
            {
                "id": "intervention",
                "title": "Type d'intervention",
                "layout": "single_column",
                "fields": ["type_intervention"]
            },
            {
                "id": "structure",
                "title": "Structure flottante et accès",
                "layout": "checklist",
                "fields": [
                    "verif_collerette_flotteurs",
                    "verif_main_courante"
                ]
            },
            {
                "id": "filets",
                "title": "Filets et lests",
                "layout": "checklist",
                "fields": [
                    "verif_filet_elevage",
                    "verif_filet_anti_predateurs",
                    "verif_ragages_lests",
                    "verif_antifouling"
                ]
            },
            {
                "id": "ancrage",
                "title": "Ancrage et signalisation",
                "layout": "checklist",
                "fields": [
                    "verif_ancrages_chaines",
                    "verif_manilles_emerillons",
                    "verif_signalisation_maritime",
                    "verif_systeme_distrib_aliment"
                ]
            },
            {
                "id": "performance",
                "title": "Mortalité et évasions",
                "layout": "two_columns",
                "fields": [
                    "cage_mortalite_periode",
                    "cage_evasions_estimees"
                ]
            },
            {
                "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_prochaine_inspection"]
            },
            {
                "id": "signatures",
                "title": "Inspecteur",
                "layout": "signature_block",
                "fields": ["inspecteur_nom", "qualification"],
                "signature_boxes": [
                    { "label": "Signature inspecteur", "for_field": "inspecteur_nom" },
                    { "label": "Visa exploitant", "for_field": null }
                ]
            }
        ],
        "field_render": {
            "cage_exploitant": { "style": "bold" },
            "cage_diametre_m": { "suffix": " m" },
            "cage_profondeur_filet_m": { "suffix": " m" },
            "cage_biomasse_kg": { "suffix": " kg" },
            "conclusion": {
                "style": "highlight",
                "color_by_value": {
                    "conforme": "#1f8a1f",
                    "conforme_reserve": "#e69500",
                    "non_conforme": "#c00000"
                }
            },
            "anomalies_constatees": { "min_height": 30, "show_if_empty": false },
            "actions_correctives": { "min_height": 30, "show_if_empty": false }
        }
    }
}
