API Réapprovisionnements
L'API Réapprovisionnements permet de gérer les commandes de réapprovisionnement avec des opérations CRUD complètes.
Créer un réapprovisionnement
- URL :
/api/publique/restock - Méthode :
POST - Description : Créer une nouvelle commande de réapprovisionnement
Corps de la requête
{
"name": "Réapprovisionnement Q1 2024",
"storeId": "STORE-001",
"createdBy": "user@example.com",
"status": "waiting",
"deliveryDate": "2024-02-15T00:00:00Z",
"items": [
{
"sku": "SKU-001",
"quantity": 10
},
{
"sku": "SKU-002",
"quantity": 5
}
]
}
Réponse
{
"id": 1,
"name": "Réapprovisionnement Q1 2024",
"storeId": "STORE-001",
"createdBy": "user@example.com",
"status": "waiting",
"deliveryDate": "2024-02-15T00:00:00Z",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z",
"items": [
{
"id": 1,
"restockId": 1,
"sku": "SKU-001",
"quantity": 10
},
{
"id": 2,
"restockId": 1,
"sku": "SKU-002",
"quantity": 5
}
]
}
Obtenir tous les réapprovisionnements
- URL :
/api/publique/restock - Méthode :
GET - Description : Récupérer toutes les commandes de réapprovisionnement
Réponse
[
{
"id": 1,
"name": "Réapprovisionnement Q1 2024",
"storeId": "STORE-001",
"createdBy": "user@example.com",
"status": "waiting",
"deliveryDate": "2024-02-15T00:00:00Z",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
]
Obtenir un réapprovisionnement par ID
- URL :
/api/publique/restock/{id} - Méthode :
GET - Description : Récupérer une commande de réapprovisionnement spécifique par ID
Paramètres de chemin
id: ID du réapprovisionnement (nombre)
Réponse
{
"id": 1,
"name": "Réapprovisionnement Q1 2024",
"storeId": "STORE-001",
"createdBy": "user@example.com",
"status": "waiting",
"deliveryDate": "2024-02-15T00:00:00Z",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z",
"items": [
{
"id": 1,
"restockId": 1,
"sku": "SKU-001",
"quantity": 10
}
]
}
Mettre à jour un réapprovisionnement
- URL :
/api/publique/restock/{id} - Méthode :
PATCH - Description : Mettre à jour une commande de réapprovisionnement
Paramètres de chemin
id: ID du réapprovisionnement (nombre)
Corps de la requête (tous les champs optionnels)
{
"name": "Nom de réapprovisionnement mis à jour",
"status": "approved",
"deliveryDate": "2024-02-20T00:00:00Z"
}
Supprimer un réapprovisionnement
- URL :
/api/publique/restock/{id} - Méthode :
DELETE - Description : Supprimer une commande de réapprovisionnement
Paramètres de chemin
id: ID du réapprovisionnement (nombre)
Réponse
204 No Content
Modèles de données
Statut de réapprovisionnement
type RestockStatus = 'approved' | 'waiting' | 'delivered' | 'canceled';
Réapprovisionnement
interface Restock {
id: number;
name: string;
storeId: string;
createdBy: string;
status: RestockStatus;
deliveryDate: Date;
createdAt: Date;
updatedAt: Date;
items: RestockItem[];
}
interface RestockItem {
id: number;
restockId: number;
sku: string;
quantity: number;
}
Codes d'erreur possibles
400 Bad Request: Données de requête invalides ou produits inexistants404 Not Found: Réapprovisionnement non trouvé500 Internal Server Error: Erreur serveur lors de la création/mise à jour