73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|   "usecases": {
 | |
|     "EnregistrerNouveauLivre": {
 | |
|       "input": {
 | |
|         "isbn": "string(13)", 
 | |
|         "titre": "string(required)",
 | |
|         "auteur": "string(required)",
 | |
|         "editeur": "string(required)",
 | |
|         "datePublication": "date",
 | |
|         "prix": "decimal(positive)",
 | |
|         "stockInitial": "integer(min:0)",
 | |
|         "categories": "array<string>",
 | |
|         "description": "string",
 | |
|         "langue": "string"
 | |
|       },
 | |
|       "output": {
 | |
|         "livreId": "uuid"
 | |
|       }
 | |
|     },
 | |
| 
 | |
|     "PasserCommande": {
 | |
|       "input": {
 | |
|         "clientId": "uuid",
 | |
|         "lignesCommande": [{
 | |
|           "livreId": "uuid",
 | |
|           "quantite": "integer(positive)"
 | |
|         }],
 | |
|         "adresseLivraison": {
 | |
|           "rue": "string",
 | |
|           "ville": "string",
 | |
|           "codePostal": "string",
 | |
|           "pays": "string"
 | |
|         },
 | |
|         "modePaiement": "string(enum: CB, PAYPAL, POINTS_FIDELITE)"
 | |
|       },
 | |
|       "output": {
 | |
|         "commandeId": "uuid",
 | |
|         "montantTotal": "decimal",
 | |
|         "pointsFideliteGagnes": "integer"
 | |
|       }
 | |
|     },
 | |
|     "GererAvis": {
 | |
|       "input": {
 | |
|         "clientId": "uuid",
 | |
|         "livreId": "uuid",
 | |
|         "note": "integer(min:1,max:5)",
 | |
|         "commentaire": "string",
 | |
|         "dateAchat": "date"
 | |
|       },
 | |
|       "output": {
 | |
|         "avisId": "uuid"
 | |
|       }
 | |
|     },
 | |
| 
 | |
|     "CreerAbonnement": {
 | |
|       "input": {
 | |
|         "clientId": "uuid",
 | |
|         "duree": "integer(enum: 3,6,12)",
 | |
|         "modePaiement": {
 | |
|           "type": "string(enum: CB, PAYPAL)",
 | |
|           "details": "object"
 | |
|         },
 | |
|         "dateDebutSouhaitee": "date"
 | |
|       },
 | |
|       "output": {
 | |
|         "abonnementId": "uuid",
 | |
|         "dateDebut": "date",
 | |
|         "dateFin": "date",
 | |
|         "montantMensuel": "decimal"
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| } |