← Retour à la marketplaceVoir les projets →
📦
Gestion Stock
Inventaire produits, mouvements de stock, alertes de seuil et valorisation.
E-commerceMoyen~7 joursv1.1.0
Module de gestion des stocks avec catalogue produits, suivi des mouvements d'entrée/sortie, alertes de stock bas, valorisation FIFO/moyen pondéré et historique complet des opérations.
inventorystockproductswarehousemovements
Dépendances requises :
📋 Schéma Prisma
// === Module Stock ===
enum MovementType {
IN
OUT
ADJUSTMENT
TRANSFER
}
model Product {
id String @id @default(cuid())
sku String @unique
name String
description String?
unit String @default("pcs")
minStock Int @default(0)
currentStock Int @default(0)
costPrice Decimal?
sellPrice Decimal?
isActive Boolean @default(true)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
movements StockMovement[]
@@map("products")
}
model StockMovement {
id String @id @default(cuid())
productId String
product Product @relation(fields: [productId], references: [id])
type MovementType
quantity Int
reason String?
reference String?
createdAt DateTime @default(now())
@@map("stock_movements")
}🔌 Endpoints API
## API Stock GET /api/products # Catalogue (filtres: low-stock, active) POST /api/products # Créer produit PUT /api/products/:id # Modifier GET /api/products/:id/movements # Historique mouvements POST /api/stock/movement # Créer un mouvement (IN/OUT/ADJUSTMENT) GET /api/stock/alerts # Produits en dessous du seuil minimum GET /api/stock/valuation # Valorisation du stock total
🛠️ Guide d'implémentation
## Implémentation Stock ### Étape 1 — Catalogue produits CRUD produits avec validation SKU unique. ### Étape 2 — Moteur de mouvements Créer src/lib/stock/movement.ts : - Transaction Prisma pour créer le mouvement ET mettre à jour currentStock - Validation : pas de stock négatif en sortie ### Étape 3 — Alertes seuil Query périodique ou trigger pour détecter minStock > currentStock. ### Étape 4 — UI - Catalogue avec indicateurs de stock (vert/jaune/rouge) - Fiche produit avec historique des mouvements - Formulaire de mouvement rapide
Prêt à installer ce module ?
Ajoutez-le à un projet existant depuis la page modules du projet.