# Création de la table t_benne

## Fichier ajouté

- `database/migrations/2026_10_13_1200_V905001_NB_t_benne.php`

## Structure

| Champ | Type |
|---|---|
| `id_benne` | integer non signé, auto-incrémenté, clé primaire |
| `benne_code` | varchar(12), index unique |
| `benne_libelle` | varchar(50), défaut `''` |
| `benne_tare` | decimal(10,3), défaut `0` (tonnes) |
| `benne_date_tare` | date, nullable |

## Décisions

- Pas de colonnes `created_at` / `updated_at` : le futur modèle Eloquent devra déclarer `$timestamps = false`.
- Création protégée par `Schema::hasTable` pour pouvoir relancer la migration sans erreur.
- `parametre_version` n'est pas modifié par cette migration.

## Fiche Benne (CRUD)

Calquée sur la fiche Moyen déchargement (même comportement, mêmes droits, même JS).

| Fichier | Rôle |
|---|---|
| `app/Models/benne.php` | Modèle, `$timestamps = false`, tri global sur `benne_code` |
| `app/Http/Controllers/benne_controller.php` | `index`, `data_table`, `afficher_formulaire` (création / modification / recherche par code), `enregistrer`, `supprimer` |
| `routes/web/benne.php` | Groupe `/benne` (chargé automatiquement par `RouteServiceProvider`) |
| `resources/views/benne/index.blade.php` | Liste DataTable (code, libellé, tare, date tare, supprimer) + export Excel |
| `resources/views/benne/form.blade.php` | Formulaire affiché en surimpression dans la liste |

- Droits : `profil_fichier_divers` (comme les autres fiches diverses) : 0 = aucun accès, création interdite pour 0/1/3, modification interdite pour 0/1/2, suppression réservée à 5.
- Validation : code obligatoire ≤ 12 et unique, libellé obligatoire ≤ 50, tare décimale ≥ 0 (vide → 0), date tare optionnelle.
- Traçabilité : `ecrire_traca_std("Benne", code, action)` sur création, modification et suppression.
- Suppression : refusée si la benne est utilisée dans `t_badge_bascule.benne_id` (« Benne utilisée dans la fiche badge ! »). Modèle `app/Models/badge_bascule.php` créé pour ce contrôle (migration `2026_10_13_1330_V905001_NB_t_badge_bascule.php`). À compléter si d'autres tables référencent `benne_id`.
- Pas d'entrée de menu (demandé explicitement) : accès par l'URL `/benne`.
