From bd439f6096b28351ab494c804c7567aed68d31b1 Mon Sep 17 00:00:00 2001 From: MatthieuTD <39524319+MatthieuTD@users.noreply.github.com> Date: Wed, 1 Oct 2025 18:02:06 +0200 Subject: [PATCH] Enrich component model templates with BOM guidance --- scripts/seed-industrial-data.ts | 1012 ++++++++++++++++++++++++++++++- 1 file changed, 1010 insertions(+), 2 deletions(-) diff --git a/scripts/seed-industrial-data.ts b/scripts/seed-industrial-data.ts index 31f7915..a0b12fe 100644 --- a/scripts/seed-industrial-data.ts +++ b/scripts/seed-industrial-data.ts @@ -813,282 +813,1290 @@ const componentModelDefinitions: ComponentModelDefinition[] = [ name: 'Moteur 55 kW IE3', description: 'Motorisation ligne aval.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '55', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucfl207', + quantity: 2, + usage: 'Support pattes moteur', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 6, + usage: 'Fixations supérieures', + }, + ], + maintenanceNotes: 'Contrôle vibrations mensuel, resserrage annuel.', + }, }, { code: 'motor-drive-45', name: 'Moteur 45 kW IE3', description: 'Motorisation convoyeur principal.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '45', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucfl207', + quantity: 2, + usage: 'Palier de sortie', + }, + ], + subComponentTemplates: [ + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-sew'], + notes: 'Prévoir accouplement conique.', + }, + ], + }, }, { code: 'motor-drive-37', name: 'Moteur 37 kW IE3', description: 'Motorisation convoyeur secondaire.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '37', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucp210', + quantity: 2, + usage: 'Roulements moteur', + }, + ], + }, }, { code: 'motor-drive-18', name: 'Moteur 18.5 kW IE3', description: 'Motorisation vis sans fin.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '18.5', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 4, + usage: 'Fixation semelle', + }, + ], + subComponentTemplates: [ + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-sew'], + notes: 'Couple conique pour vis sans fin.', + }, + ], + }, }, { code: 'motor-drive-15', name: 'Moteur 15 kW IE3', description: 'Motorisation vis compact.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '15', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m8x30', + quantity: 6, + usage: 'Fixation petits supports', + }, + ], + }, }, { code: 'motor-drive-110', name: 'Moteur 110 kW IE3', description: 'Motorisation séchoir.', typeCode: 'motor-drive', + structure: { + recommendedCustomFields: { + 'Puissance nominale (kW)': '110', + 'Classe énergétique': 'IE3', + "Indice de protection": 'IP55', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucp210', + quantity: 2, + usage: 'Roulements renforts', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 12, + usage: 'Ancrage châssis', + }, + ], + maintenanceNotes: 'Contrôle isolation bobinage semestriel.', + }, }, { code: 'gearbox-flender', name: 'Réducteur Flender 3200 Nm', description: 'Réducteur à couple élevé.', typeCode: 'gearbox-assembly', + structure: { + recommendedCustomFields: { + 'Rapport de réduction': '1:28', + 'Couple nominal (Nm)': '3200', + 'Type de montage': 'À bride', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 12, + usage: 'Fixation bride réducteur', + }, + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-12', + quantity: 12, + usage: 'Sécurisation boulonnerie', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-75', 'motor-drive-55'], + notes: 'Association moteur IE3 selon besoin.', + }, + ], + }, }, { code: 'gearbox-bonfiglioli', name: 'Réducteur Bonfiglioli TA', description: 'Réducteur montage sur arbre.', typeCode: 'gearbox-assembly', + structure: { + recommendedCustomFields: { + 'Rapport de réduction': '1:24', + 'Couple nominal (Nm)': '2100', + 'Type de montage': 'Sur arbre', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 8, + usage: 'Fixations bras couple', + }, + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-10', + quantity: 8, + usage: 'Sécurisation fixations', + }, + ], + }, }, { code: 'gearbox-sew', name: 'Réducteur SEW K', description: 'Réducteur coaxial pour vis.', typeCode: 'gearbox-assembly', + structure: { + recommendedCustomFields: { + 'Rapport de réduction': '1:18', + 'Couple nominal (Nm)': '1800', + 'Type de montage': 'À bride', + }, + pieceTemplates: [ + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-12', + quantity: 10, + usage: 'Contre-écrous', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-18', 'motor-drive-15'], + notes: 'Motorisation vis standard.', + }, + ], + }, }, { code: 'bucket-head-120', name: 'Tête élévateur 800 mm', description: 'Tête renforcée 800 mm.', typeCode: 'bucket-head-section', + structure: { + recommendedCustomFields: { + 'Largeur tambour (mm)': '820', + 'Type de revêtement': 'Caoutchouc rainuré', + 'Nombre de trappes': '3', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 24, + usage: 'Assemblage flasques', + }, + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-12', + quantity: 24, + usage: 'Sécurisation visserie', + }, + { + typeCode: 'speed-sensor', + modelCode: 'sensor-speed-m12', + quantity: 1, + usage: 'Contrôle vitesse tambour', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-75'], + notes: 'Motorisation tête élévateur', + }, + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-flender'], + notes: 'Réducteur couple élevé', + }, + ], + }, }, { code: 'bucket-head-95', name: 'Tête élévateur 650 mm', description: 'Tête compacte 650 mm.', typeCode: 'bucket-head-section', + structure: { + recommendedCustomFields: { + 'Largeur tambour (mm)': '660', + 'Type de revêtement': 'Polyuréthane', + 'Nombre de trappes': '2', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 18, + usage: 'Assemblage coiffe', + }, + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-10', + quantity: 18, + usage: 'Sécurité assemblage', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-55'], + notes: 'Motorisation compacte', + }, + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-bonfiglioli'], + notes: 'Montage sur arbre', + }, + ], + }, }, { code: 'bucket-boot-heavy', name: 'Pied élévateur renforcé', description: 'Pied avec tension à vis.', typeCode: 'bucket-boot-section', + structure: { + recommendedCustomFields: { + 'Capacité trémie (L)': '480', + 'Mode de tension': 'Vis manuelle', + 'Système de nettoyage': 'Grattoirs', + }, + pieceTemplates: [ + { + typeCode: 'flat-gasket', + modelCode: 'gasket-ht-200', + quantity: 2, + usage: 'Etanchéité trappes', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 16, + usage: 'Assemblage flasques', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-18'], + notes: 'Motorisation vis de nettoyage', + }, + ], + }, }, { code: 'bucket-boot-compact', name: 'Pied élévateur compact', description: 'Pied compact avec tension hydraulique.', typeCode: 'bucket-boot-section', + structure: { + recommendedCustomFields: { + 'Capacité trémie (L)': '320', + 'Mode de tension': 'Vérin hydraulique', + 'Système de nettoyage': 'Trappe déportée', + }, + pieceTemplates: [ + { + typeCode: 'flat-gasket', + modelCode: 'gasket-ht-200', + quantity: 1, + usage: 'Joint inspection', + }, + ], + }, }, { code: 'bucket-leg-3m', name: 'Tronçon 3 m', description: 'Gaine 3 mètres renforcée.', typeCode: 'bucket-leg-section', + structure: { + recommendedCustomFields: { + 'Hauteur section (m)': '3', + 'Type de gaine': 'Boulonnée', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 32, + usage: 'Assemblage brides', + }, + ], + }, }, { code: 'bucket-leg-2-5m', name: 'Tronçon 2,5 m', description: 'Gaine 2,5 mètres compacte.', typeCode: 'bucket-leg-section', + structure: { + recommendedCustomFields: { + 'Hauteur section (m)': '2.5', + 'Type de gaine': 'Soudée', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 24, + usage: 'Assemblage brides', + }, + ], + }, }, { code: 'belt-drive-800', name: "Station entraînement 800", description: 'Station tête 800 mm.', typeCode: 'belt-drive-station', + structure: { + recommendedCustomFields: { + 'Diamètre tambour (mm)': '630', + 'Type de racleur': 'Polyuréthane', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucp210', + quantity: 2, + usage: 'Paliers tambour', + }, + { + typeCode: 'drive-belt', + modelCode: 'belt-hd-800', + quantity: 1, + usage: 'Bande principale', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-45'], + notes: 'Motorisation convoyeur', + }, + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-bonfiglioli'], + notes: 'Réducteur montage sur arbre', + }, + ], + }, }, { code: 'belt-drive-650', name: "Station entraînement 650", description: 'Station tête 650 mm.', typeCode: 'belt-drive-station', + structure: { + recommendedCustomFields: { + 'Diamètre tambour (mm)': '520', + 'Type de racleur': 'Caoutchouc', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucfl207', + quantity: 2, + usage: 'Paliers excentriques', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-37'], + notes: 'Motorisation secondaire', + }, + ], + }, }, { code: 'belt-tail-800', name: 'Station retour 800', description: 'Retour 800 mm avec racleur.', typeCode: 'belt-tail-station', + structure: { + recommendedCustomFields: { + 'Type de racleur retour': 'Racleur bande mousse', + 'Système tension': 'Vis double', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucp210', + quantity: 2, + usage: 'Paliers tambour retour', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 12, + usage: 'Fixation réglages', + }, + ], + }, }, { code: 'belt-tail-650', name: 'Station retour 650', description: 'Retour 650 mm compact.', typeCode: 'belt-tail-station', + structure: { + recommendedCustomFields: { + 'Type de racleur retour': 'Racleur brosse', + 'Système tension': 'Poids', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucfl207', + quantity: 2, + usage: 'Paliers retour', + }, + ], + }, }, { code: 'belt-frame-18m', name: 'Ossature 18 m', description: 'Châssis convoyeur 18 m.', typeCode: 'belt-support-frame', + structure: { + recommendedCustomFields: { + 'Longueur module (m)': '6', + 'Nombre de rouleaux': '45', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 60, + usage: 'Assemblage modules', + }, + ], + }, }, { code: 'belt-frame-25m', name: 'Ossature 25 m', description: 'Châssis convoyeur 25 m.', typeCode: 'belt-support-frame', + structure: { + recommendedCustomFields: { + 'Longueur module (m)': '8.3', + 'Nombre de rouleaux': '68', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 84, + usage: 'Assemblage modules', + }, + ], + }, }, { code: 'gravity-deck-120', name: 'Plateau densimétrique 120', description: 'Plateau haute capacité.', typeCode: 'gravity-vibration-deck', + structure: { + recommendedCustomFields: { + 'Inclinaison plateau (°)': '6', + 'Tamis maille (µm)': '650', + 'Amplitude vibration (mm)': '4.5', + }, + pieceTemplates: [ + { + typeCode: 'speed-sensor', + modelCode: 'sensor-speed-m18', + quantity: 2, + usage: 'Suivi vibrations', + }, + { + typeCode: 'filter-cartridge', + modelCode: 'filter-dust-610', + quantity: 1, + usage: 'Aspiration plateau', + }, + ], + subComponentTemplates: [ + { + typeCode: 'ventilation-fan', + suggestedModelCodes: ['fan-process-45'], + notes: 'Aspiration principale', + }, + ], + }, }, { code: 'gravity-deck-80', name: 'Plateau densimétrique 80', description: 'Plateau compact.', typeCode: 'gravity-vibration-deck', + structure: { + recommendedCustomFields: { + 'Inclinaison plateau (°)': '5', + 'Tamis maille (µm)': '450', + 'Amplitude vibration (mm)': '3.2', + }, + pieceTemplates: [ + { + typeCode: 'speed-sensor', + modelCode: 'sensor-speed-m12', + quantity: 1, + usage: 'Capteur de vibration', + }, + ], + }, }, { code: 'fan-process-45', name: 'Ventilateur 45 kW', description: 'Ventilateur centrifuge 45 kW.', typeCode: 'ventilation-fan', + structure: { + recommendedCustomFields: { + 'Débit (m³/h)': '48000', + 'Pression disponible (Pa)': '3200', + 'Sens de rotation': 'Horaire', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucp210', + quantity: 2, + usage: 'Roulements arbre ventilateur', + }, + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100', + quantity: 1, + usage: 'Surveillance chauffe palier', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-110'], + notes: 'Entraînement direct haute puissance', + }, + ], + }, }, { code: 'fan-process-30', name: 'Ventilateur 30 kW', description: 'Ventilateur centrifuge 30 kW.', typeCode: 'ventilation-fan', + structure: { + recommendedCustomFields: { + 'Débit (m³/h)': '28000', + 'Pression disponible (Pa)': '2200', + 'Sens de rotation': 'Antihoraire', + }, + pieceTemplates: [ + { + typeCode: 'roller-bearing', + modelCode: 'bearing-ucfl207', + quantity: 2, + usage: 'Roulements', + }, + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100-short', + quantity: 1, + usage: 'Sonde palier', + }, + ], + }, }, { code: 'control-panel-m340', name: 'Armoire Schneider M340', description: 'Armoire Schneider Electric.', typeCode: 'control-panel', + structure: { + recommendedCustomFields: { + 'Automate principal': 'Schneider Modicon M340', + 'Indice de protection': 'IP55', + 'Capacité IO': '48', + }, + pieceTemplates: [ + { + typeCode: 'fuse-cartridge', + modelCode: 'fuse-gg-25a', + quantity: 3, + usage: 'Protection générale', + }, + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100-short', + quantity: 1, + usage: 'Sonde ambiance armoire', + }, + ], + subComponentTemplates: [ + { + typeCode: 'control-panel', + suggestedModelCodes: ['control-panel-s7'], + notes: 'Extension communication', + }, + ], + }, }, { code: 'control-panel-s7', name: 'Armoire Siemens S7', description: 'Armoire Siemens S7-1500.', typeCode: 'control-panel', + structure: { + recommendedCustomFields: { + 'Automate principal': 'Siemens S7-1500', + 'Indice de protection': 'IP54', + 'Capacité IO': '64', + }, + pieceTemplates: [ + { + typeCode: 'fuse-cartridge', + modelCode: 'fuse-gg-40a', + quantity: 3, + usage: 'Protection circuits puissance', + }, + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100', + quantity: 1, + usage: 'Sonde coffret', + }, + ], + }, }, { code: 'burner-module-3mw', name: 'Brûleur gaz 3 MW', description: 'Brûleur gaz modulant.', typeCode: 'burner-module', + structure: { + recommendedCustomFields: { + 'Puissance thermique (MW)': '3', + 'Type de combustible': 'Gaz naturel', + 'Taux O2 résiduel (%)': '4', + }, + pieceTemplates: [ + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100', + quantity: 2, + usage: 'Surveillance foyer', + }, + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 1, + usage: 'Alimentation vérin clapet', + }, + ], + subComponentTemplates: [ + { + typeCode: 'dust-filter', + suggestedModelCodes: ['dust-filter-cyclone'], + notes: 'Aspiration fumées', + }, + ], + }, }, { code: 'burner-module-2mw', name: 'Brûleur biomasse 2 MW', description: 'Brûleur biomasse compact.', typeCode: 'burner-module', + structure: { + recommendedCustomFields: { + 'Puissance thermique (MW)': '2', + 'Type de combustible': 'Biomasse', + 'Taux O2 résiduel (%)': '5', + }, + pieceTemplates: [ + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100-short', + quantity: 2, + usage: 'Surveillance foyer', + }, + { + typeCode: 'flat-gasket', + modelCode: 'gasket-ht-200', + quantity: 4, + usage: 'Trappes de visite', + }, + ], + }, }, { code: 'dryer-column-2m', name: 'Segment colonne 2 m', description: 'Segment de colonne zone chaude.', typeCode: 'dryer-column-segment', + structure: { + recommendedCustomFields: { + 'Hauteur segment (m)': '2', + 'Zone procédé': 'Chauffage', + 'Isolation (mm)': '80', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 40, + usage: 'Assemblage panneaux', + }, + { + typeCode: 'flat-gasket', + modelCode: 'gasket-ht-200', + quantity: 6, + usage: 'Joints inspections', + }, + ], + subComponentTemplates: [ + { + typeCode: 'burner-module', + suggestedModelCodes: ['burner-module-3mw'], + notes: 'Brûleur associé zone chaude', + }, + ], + }, }, { code: 'dryer-column-1-5m', name: 'Segment colonne 1,5 m', description: 'Segment zone refroidissement.', typeCode: 'dryer-column-segment', + structure: { + recommendedCustomFields: { + 'Hauteur segment (m)': '1.5', + 'Zone procédé': 'Refroidissement', + 'Isolation (mm)': '60', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 32, + usage: 'Assemblage panneaux', + }, + { + typeCode: 'filter-cartridge', + modelCode: 'filter-dust-480', + quantity: 1, + usage: 'Filtration air', + }, + ], + }, }, { code: 'dust-filter-cyclone', name: 'Filtre cyclone 610', description: 'Filtre cyclone 6 cartouches.', typeCode: 'dust-filter', + structure: { + recommendedCustomFields: { + 'Nombre de cartouches': '6', + 'Surface filtration (m²)': '48', + 'Mode nettoyage': 'Pulse jet', + }, + pieceTemplates: [ + { + typeCode: 'filter-cartridge', + modelCode: 'filter-dust-610', + quantity: 6, + usage: 'Cartouches filtrantes', + }, + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100', + quantity: 1, + usage: 'Sonde température air', + }, + ], + subComponentTemplates: [ + { + typeCode: 'ventilation-fan', + suggestedModelCodes: ['fan-process-45'], + notes: 'Ventilateur extraction', + }, + ], + }, }, { code: 'dust-filter-compact', name: 'Filtre compact 480', description: 'Filtre compact 4 cartouches.', typeCode: 'dust-filter', + structure: { + recommendedCustomFields: { + 'Nombre de cartouches': '4', + 'Surface filtration (m²)': '28', + 'Mode nettoyage': 'Vibration', + }, + pieceTemplates: [ + { + typeCode: 'filter-cartridge', + modelCode: 'filter-dust-480', + quantity: 4, + usage: 'Cartouches filtrantes', + }, + ], + }, }, { code: 'screw-trough-200', name: 'Caisson vis 200', description: 'Caisson pour vis 200 mm.', typeCode: 'screw-trough-section', + structure: { + recommendedCustomFields: { + 'Diamètre vis (mm)': '200', + 'Longueur module (m)': '2', + 'Finition intérieure': 'Galvanisée', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 28, + usage: 'Assemblage couvercles', + }, + { + typeCode: 'lock-washer', + modelCode: 'washer-grower-10', + quantity: 28, + usage: 'Maintien visserie', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-18'], + notes: 'Motorisation vis 200', + }, + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-sew'], + notes: 'Réducteur vis 200', + }, + ], + }, }, { code: 'screw-trough-160', name: 'Caisson vis 160', description: 'Caisson pour vis 160 mm.', typeCode: 'screw-trough-section', + structure: { + recommendedCustomFields: { + 'Diamètre vis (mm)': '160', + 'Longueur module (m)': '1.6', + 'Finition intérieure': 'Peinte', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m8x30', + quantity: 24, + usage: 'Assemblage couvercles', + }, + ], + subComponentTemplates: [ + { + typeCode: 'motor-drive', + suggestedModelCodes: ['motor-drive-15'], + notes: 'Motorisation vis 160', + }, + ], + }, }, { code: 'screw-inlet-200', name: 'Trémie alimentation 200', description: 'Trémie 200 l anti-gravats.', typeCode: 'screw-inlet-hopper', + structure: { + recommendedCustomFields: { + 'Capacité (L)': '200', + 'Type grille': 'Anti-gravats', + 'Présence capteur niveau': 'Oui', + }, + pieceTemplates: [ + { + typeCode: 'speed-sensor', + modelCode: 'sensor-speed-m12', + quantity: 1, + usage: 'Capteur niveau vibrant', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m8x30', + quantity: 12, + usage: 'Fixation grille', + }, + ], + }, }, { code: 'screw-inlet-160', name: 'Trémie alimentation 160', description: 'Trémie 160 l compacte.', typeCode: 'screw-inlet-hopper', + structure: { + recommendedCustomFields: { + 'Capacité (L)': '160', + 'Type grille': 'Maille fine', + 'Présence capteur niveau': 'Non', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m8x30', + quantity: 8, + usage: 'Fixation couvercle', + }, + ], + }, }, { code: 'screw-outlet-vanne', name: 'Goulotte vanne guillotine', description: 'Goulotte sortie vanne guillotine.', typeCode: 'screw-outlet-chute', + structure: { + recommendedCustomFields: { + 'Type de vanne': 'Guillotine', + 'Commande': 'Manuelle', + 'Largeur (mm)': '220', + }, + pieceTemplates: [ + { + typeCode: 'flat-gasket', + modelCode: 'gasket-ht-200', + quantity: 2, + usage: "Joint d'accouplement", + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m10x60', + quantity: 10, + usage: 'Fixation bride', + }, + ], + }, }, { code: 'screw-outlet-flap', - name: 'Goulotte clapet by-pass', - description: 'Goulotte sortie clapet.', + name: 'Goulotte vanne clapet', + description: 'Goulotte sortie vanne clapet.', typeCode: 'screw-outlet-chute', + structure: { + recommendedCustomFields: { + 'Type de vanne': 'Clapet', + 'Commande': 'Pneumatique', + 'Largeur (mm)': '180', + }, + pieceTemplates: [ + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 1, + usage: 'Raccordement vérin', + }, + ], + }, }, { code: 'weigh-frame-5t', name: 'Cadre peseur 5T', description: 'Cadre peseur 5 tonnes.', typeCode: 'weigh-load-frame', + structure: { + recommendedCustomFields: { + 'Capacité pesée (kg)': '5000', + 'Matière': 'Acier galvanisé', + 'Nombre de cellules': '4', + }, + pieceTemplates: [ + { + typeCode: 'load-cell', + modelCode: 'load-cell-5t', + quantity: 4, + usage: 'Cellules de pesée', + }, + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 16, + usage: 'Fixation platines', + }, + ], + }, }, { code: 'weigh-frame-3t', name: 'Cadre peseur 3T', description: 'Cadre peseur 3 tonnes.', typeCode: 'weigh-load-frame', + structure: { + recommendedCustomFields: { + 'Capacité pesée (kg)': '3000', + 'Matière': 'Acier peint', + 'Nombre de cellules': '4', + }, + pieceTemplates: [ + { + typeCode: 'load-cell', + modelCode: 'load-cell-5t', + quantity: 4, + usage: 'Cellules de pesée', + }, + ], + }, }, { code: 'weigh-gate-hydraulic', name: 'Vanne hydraulique', description: 'Vanne hydraulique ouverture rapide.', typeCode: 'weigh-discharge-gate', + structure: { + recommendedCustomFields: { + 'Type d’actionnement': 'Hydraulique', + 'Temps ouverture (s)': '2.5', + 'Pression service (bar)': '180', + }, + pieceTemplates: [ + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 2, + usage: 'Lignes de puissance', + }, + ], + }, }, { code: 'weigh-gate-screw', name: 'Vanne vis motorisée', description: 'Vanne motoréducteur vis.', typeCode: 'weigh-discharge-gate', + structure: { + recommendedCustomFields: { + 'Type d’actionnement': 'Motoréducteur vis', + 'Temps ouverture (s)': '6', + 'Couple (Nm)': '450', + }, + pieceTemplates: [ + { + typeCode: 'motor-drive', + modelCode: 'motor-drive-15', + quantity: 1, + usage: 'Motorisation vanne', + }, + ], + subComponentTemplates: [ + { + typeCode: 'gearbox-assembly', + suggestedModelCodes: ['gearbox-sew'], + notes: 'Réducteur vanne', + }, + ], + }, }, { code: 'hydraulic-pack-tele', name: 'Groupe hydraulique 140 l/min', description: 'Groupe hydraulique Manitou.', typeCode: 'hydraulic-power-pack', + structure: { + recommendedCustomFields: { + 'Débit nominal (l/min)': '140', + 'Pression nominale (bar)': '250', + 'Nombre de distributeurs': '3', + }, + pieceTemplates: [ + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 4, + usage: 'Lignes auxiliaires', + }, + { + typeCode: 'lubrication-cartridge', + modelCode: 'grease-cartridge-400', + quantity: 2, + usage: 'Graissage articulations', + }, + ], + }, }, { code: 'tele-boom-8m', name: 'Flèche télescopique 8 m', description: 'Flèche 4 sections 8 m.', typeCode: 'telehandler-boom', + structure: { + recommendedCustomFields: { + 'Hauteur max (m)': '8', + 'Nombre de sections': '4', + 'Traitement anticorrosion': 'Peinture époxy', + }, + pieceTemplates: [ + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 3, + usage: 'Vérins télescopiques', + }, + ], + subComponentTemplates: [ + { + typeCode: 'hydraulic-power-pack', + suggestedModelCodes: ['hydraulic-pack-tele'], + notes: 'Alimentation vérins', + }, + ], + }, }, { code: 'tele-cab-premium', name: 'Cabine premium climatisée', description: 'Cabine Manitou climatisée.', typeCode: 'telehandler-cab-module', + structure: { + recommendedCustomFields: { + 'Climatisation': 'Oui', + 'Suspension cabine': 'Hydraulique', + 'Siège chauffant': 'Oui', + }, + pieceTemplates: [ + { + typeCode: 'temperature-probe', + modelCode: 'temp-probe-pt100-short', + quantity: 1, + usage: 'Sonde confort cabine', + }, + ], + }, }, { code: 'tele-carrier-quick', name: 'Attache rapide universelle', description: 'Support d’outils Manitou.', typeCode: 'telehandler-attachment-carrier', + structure: { + recommendedCustomFields: { + 'Type attache': 'Euro', + 'Capacité (kg)': '3500', + 'Verrouillage hydraulique': 'Oui', + }, + pieceTemplates: [ + { + typeCode: 'hex-screw', + modelCode: 'screw-m12x80', + quantity: 10, + usage: 'Fixation crochets', + }, + { + typeCode: 'hydraulic-hose', + modelCode: 'hydraulic-hose-2w', + quantity: 1, + usage: 'Commande verrouillage', + }, + ], + }, }, ];