147 lines
8.5 KiB
Markdown
147 lines
8.5 KiB
Markdown
# Glossaire Métier — Inventory
|
|
|
|
## Contexte
|
|
|
|
**Inventory** est une application de gestion de parc machines industriel. Elle permet aux équipes de maintenance de cataloguer leurs machines, leurs sous-ensembles (composants), les pièces de rechange et les consommables associés. Chaque machine est rattachée à un site physique (usine, atelier). L'application gère la hiérarchie complète : Machine → Composants → Pièces/Produits, avec traçabilité (audit), documentation technique et champs personnalisables.
|
|
|
|
---
|
|
|
|
## Concepts Métier
|
|
|
|
### Hiérarchie principale
|
|
|
|
| Terme | Définition | Exemples concrets |
|
|
|-------|-----------|-------------------|
|
|
| **Site** | Lieu physique (usine, atelier, entrepôt). Regroupe les machines d'un même emplacement. | Usine de Lyon, Atelier Nord |
|
|
| **Machine** | Équipement industriel installé sur un site. C'est l'unité de base du parc. Contient des composants, pièces et produits. | Presse hydraulique, Tour CNC, Ligne d'embouteillage |
|
|
| **Composant** | Sous-ensemble fonctionnel d'une machine. Peut contenir des pièces, des produits, et d'autres sous-composants (imbrication). | Moteur, Pompe, Tableau électrique, Vérin |
|
|
| **Pièce** | Pièce mécanique/physique qu'on monte ou remplace. C'est l'unité de maintenance. | Joint, Écrou, Roulement, Capteur, Courroie |
|
|
| **Produit** | Consommable qu'on utilise sans monter. S'use et se renouvelle. | Huile, Dégraissant, Graisse, Liquide de refroidissement |
|
|
|
|
### Configuration et templates
|
|
|
|
| Terme | Définition |
|
|
|-------|-----------|
|
|
| **Modèle Type** (ModelType) | Template réutilisable qui définit la composition attendue d'un composant, d'une pièce ou d'un produit. Par exemple : "Pompe centrifuge XYZ nécessite 2 joints, 1 roulement et de l'huile hydraulique". |
|
|
| **Skeleton** (squelette) | La structure "vide" définie par un modèle type : la liste des emplacements requis (pièces, produits, sous-composants) avant qu'on y mette les éléments réels. |
|
|
| **Slot** (emplacement) | Emplacement concret dans un composant ou une pièce, créé à partir du skeleton. Chaque slot est à remplir avec une pièce, un produit ou un sous-composant réel. Un slot peut rester vide (pas encore sourcé). |
|
|
| **Sync** (synchronisation) | Propagation des modifications d'un modèle type vers tous les composants existants de ce type. Par exemple : ajouter un slot "filtre" au modèle type met à jour tous les composants de ce type. Surtout utilisé en phase de saisie initiale, quand on ajuste les modèles au fur et à mesure qu'on découvre la vraie composition des machines. |
|
|
| **Catégorie de modèle** | Un modèle type est classé en 3 catégories : Composant, Pièce ou Produit. Détermine quels skeletons il peut définir. |
|
|
|
|
### Transverse
|
|
|
|
| Terme | Définition |
|
|
|-------|-----------|
|
|
| **Constructeur** | Fournisseur ou fabricant. Peut être associé à une machine, un composant, une pièce ou un produit. Permet de tracer la chaîne d'approvisionnement. |
|
|
| **Champ personnalisé** (CustomField) | Attribut dynamique défini par l'utilisateur et attaché à une machine ou à un modèle type. Les composants/pièces/produits d'un même modèle type partagent les mêmes champs personnalisés. Exemples : "N° de série", "Date de garantie", "Intervalle de maintenance". |
|
|
| **Document** | Fichier attaché à n'importe quelle entité (machine, composant, pièce, produit, site, commentaire). Typé : Documentation, Devis, Facture, Plan, Photo, Autre. |
|
|
| **Commentaire** | Annotation utilisateur sur une entité, avec un statut ouvert ou résolu. Permet de signaler un problème, poser une question ou laisser une note. Peut contenir des pièces jointes. |
|
|
| **Journal d'audit** (AuditLog) | Historique automatique et immuable de toutes les créations, modifications et suppressions. Enregistre qui a fait quoi, quand, avec le détail des changements. |
|
|
|
|
### Utilisateurs et rôles
|
|
|
|
| Rôle | Droits |
|
|
|------|--------|
|
|
| **Admin** | Accès complet : gestion des utilisateurs, configuration, toutes les opérations |
|
|
| **Gestionnaire** | Créer, modifier, supprimer des machines/composants/pièces/produits |
|
|
| **Viewer** | Consultation seule, pas de modification |
|
|
| **User** | Rôle de base (accès minimal) |
|
|
|
|
---
|
|
|
|
## Workflows Utilisateur
|
|
|
|
### 1. Créer une machine
|
|
1. Choisir le **site** où la machine est installée
|
|
2. Renseigner nom, référence, prix, fournisseur(s)
|
|
3. Ajouter des **composants** à la machine (voir workflow 2)
|
|
4. Ajouter des **pièces** et **produits** directement sur la machine si nécessaire
|
|
5. Ajouter des **champs personnalisés** et des **documents**
|
|
|
|
### 2. Ajouter un composant à une machine
|
|
1. Choisir un **modèle type** pour le composant (ex: "Pompe centrifuge XYZ")
|
|
2. Les **slots** sont pré-créés automatiquement à partir du skeleton du modèle type
|
|
3. Remplir chaque slot en sélectionnant la pièce/produit/sous-composant réel
|
|
4. Les slots peuvent rester vides et être remplis plus tard
|
|
|
|
### 3. Créer ou modifier un modèle type
|
|
1. Nommer le modèle type et choisir sa catégorie (Composant, Pièce ou Produit)
|
|
2. Définir les emplacements requis : quelles pièces, quels produits, quels sous-composants
|
|
3. Définir les champs personnalisés (métadonnées) pour les entités de ce type
|
|
4. Si des composants existent déjà avec ce modèle type → utiliser le **sync** (workflow 4)
|
|
|
|
### 4. Synchroniser un modèle type
|
|
1. Modifier les emplacements du modèle type (ajout/suppression de slots)
|
|
2. Lancer un **sync preview** : visualiser l'impact sur les composants existants
|
|
3. Confirmer → les slots sont ajoutés/supprimés sur tous les composants du type
|
|
4. Surtout utile en phase de saisie initiale quand les données sont ajustées progressivement
|
|
|
|
### 5. Cloner une machine
|
|
1. Sélectionner une machine existante
|
|
2. Lancer le clonage → copie complète (composants, pièces, produits, liens, champs personnalisés)
|
|
3. Renommer la machine clonée et l'affecter à un site
|
|
|
|
### 6. Gérer les documents
|
|
1. Sélectionner une entité (machine, composant, pièce, produit, site)
|
|
2. Uploader un fichier (PDF, image, etc.)
|
|
3. Choisir le type : Documentation, Devis, Facture, Plan, Photo, Autre
|
|
4. Les documents sont consultables et téléchargeables depuis la fiche de l'entité
|
|
|
|
---
|
|
|
|
## Relations — Vue d'ensemble
|
|
|
|
```
|
|
Site
|
|
└── Machine
|
|
├── Composant (→ défini par un Modèle Type)
|
|
│ ├── Slot Pièce → Pièce (joint, écrou…)
|
|
│ ├── Slot Produit → Produit (huile, dégraissant…)
|
|
│ └── Slot Sous-composant → Composant (imbrication)
|
|
├── Pièce (directement sur la machine)
|
|
│ └── Slot Produit → Produit
|
|
└── Produit (directement sur la machine)
|
|
|
|
Modèle Type (template)
|
|
├── Skeleton Pièce Requirement → "il faut une pièce de type X"
|
|
├── Skeleton Produit Requirement → "il faut un produit de type Y"
|
|
└── Skeleton Sous-composant Requirement → "il faut un composant de type Z"
|
|
|
|
Transverse (attachable à toute entité) :
|
|
• Constructeur (fournisseur)
|
|
• Document (fichier)
|
|
• Commentaire (annotation)
|
|
• Champ personnalisé (métadonnée dynamique)
|
|
• Journal d'audit (historique automatique)
|
|
```
|
|
|
|
---
|
|
|
|
## Correspondance Métier ↔ Code
|
|
|
|
| Terme métier | Entité code | Table PG |
|
|
|-------------|-------------|----------|
|
|
| Site | `Site` | `site` |
|
|
| Machine | `Machine` | `machine` |
|
|
| Composant | `Composant` | `composant` |
|
|
| Pièce | `Piece` | `piece` |
|
|
| Produit | `Product` | `product` |
|
|
| Modèle Type | `ModelType` | `model_type` |
|
|
| Slot pièce (composant) | `ComposantPieceSlot` | `composant_piece_slot` |
|
|
| Slot produit (composant) | `ComposantProductSlot` | `composant_product_slot` |
|
|
| Slot sous-composant | `ComposantSubcomponentSlot` | `composant_subcomponent_slot` |
|
|
| Slot produit (pièce) | `PieceProductSlot` | `piece_product_slot` |
|
|
| Skeleton pièce | `SkeletonPieceRequirement` | `skeleton_piece_requirement` |
|
|
| Skeleton produit | `SkeletonProductRequirement` | `skeleton_product_requirement` |
|
|
| Skeleton sous-composant | `SkeletonSubcomponentRequirement` | `skeleton_subcomponent_requirement` |
|
|
| Constructeur | `Constructeur` | `constructeur` |
|
|
| Champ personnalisé | `CustomField` | `custom_field` |
|
|
| Valeur champ perso | `CustomFieldValue` | `custom_field_value` |
|
|
| Document | `Document` | `document` |
|
|
| Commentaire | `Comment` | `comment` |
|
|
| Journal d'audit | `AuditLog` | `audit_log` |
|
|
| Utilisateur | `Profile` | `profile` |
|
|
| Lien machine-composant | `MachineComponentLink` | `machine_component_link` |
|
|
| Lien machine-pièce | `MachinePieceLink` | `machine_piece_link` |
|
|
| Lien machine-produit | `MachineProductLink` | `machine_product_link` |
|