En tant qu’organisateur du festival, il faut gérer la quantité nécessaire d’oxygène pour les festivaliers et tenir un rapport afin de savoir la quantité de bonbonnes nécessaires et la quantité de ressources utilisées.
Il existe 2 manières d’obtenir de l’oxygène:
-
Acheter des bonbonnes d’oxygène déjà prêtes pour l’utilisation
- Coût unitaire pour une bonbonne d’oxygène: 5000$
- La qualité d’oxygène de ces bonbonnes est de catégorie E.
-
Fabriquer l’oxygène: 2 méthodes de fabrication:
-
À partir de l’électrolyse
- Coût: 8000$ pour 4 bonbonnes (disponible seulement en paquet de 4)
- La qualité d’oxygène de ces bonbonnes est de catégorie B
- Temps de fabrication: 10 jours
- Entreposer après la fabrication
-
À partir de bougies
- Coût: 7500$ pour 5 bonbonnes (disponible seulement en paquet de 5)
- La qualité d’oxygène de ces bonbonnes est de catégorie A
- Temps de fabrication: 20 jours
- Entreposer après la fabrication
-
Les différentes options de passes pour le festival nécessitent une quantité d’oxygène différente:
VIP | Premium | Standard | |
---|---|---|---|
Besoin quotidien d’oxygène | 5 bonbonnes / jour | 3 bonbonnes / jour | 3 bonbonnes / jour |
Qualité minimale requise | Catégorie E | Catégorie B | Catégorie A |
Dès l’achat de passes, les bonbonnes d’oxygène sont achetées et la fabrication débute.
Note: La qualité de l’oxygène de grade E est supérieure à celle de grade B et A (E > B > A). Dans le cadre du projet, tenez compte qu’il n’y a que ces 3 grades. Pour en savoir plus sur la gradation des bonbonnes d’oxygène: http://www-personal.umich.edu/~lpt/oxlabel.htm
Note 2 : Attention, il s’agit de besoins quotidiens, donc pour un forfait, il faut multiplier le besoin quotidien par le nombre de jours du festival.
Conditions de succès
Condition | Descript |
---|---|
COS 1 | Le plus bas grade d’oxygène est toujours utilisé en respectant la qualité minimale requise par l’option de passe et en s’assurant que le délai de production le permet |
COS 2 | Toutes les bonbonnes d’oxygène nécessaires doivent être prêtes dès le début du festival (17 juillet 2060, inclusivement). |
COS 3 | L’excédent de bonbonnes produites doit être utilisé avant de produire d’autres bonbonnes (pour une même catégorie). |
COS 4 | Pouvoir connaître l’inventaire de bonbonnes d’oxygène de chaque catégorie. |
COS 5 | Il est possible d’obtenir le coût total d’approvisionnement en O2 pour le festival |
COS 6 | Le log doit être en ordre chronologique de date. |
Note 1: L’historique affiche les quantités utilisées/fabriquées/achetées pour une date précise donc ne pas faire la sommation de toutes les quantités jusqu’à cette date. Seul l’inventaire est cumulatif.
Note 2: Il n’y a pas d’ordre nécessaire dans l’inventaire concernant les grades d’oxygène.
Exemples
Étant donnée l'inventaire suivant E = 0, B = 0, A = 0
Quand on a besoin de 3 grade E, commandé 2 jours avant le début du festival
Alors on achète 3 bonbonnes d'oxygène de grade E
Étant donnée l'inventaire suivant E = 0, B = 0, A = 0
Quand on a besoin de 3 grade A, commandé 30 jours avant le début du festival
Alors on produit 5 bonbonnes d'oxygène de grade A
Étant donnée l'inventaire suivant E = 0, B = 0, A = 0
Quand on a besoin de 3 grade A, commandé 12 jours avant le début du festival
Alors on produit 4 bonbonnes d'oxygène de grade B
Étant donnée l'inventaire suivant E = 0, B = 0, A = 0
Quand on a besoin de 3 grade A, commandé 2 jours avant le début du festival
Alors on achète 3 bonbonnes d'oxygène de grade E
Étant donnée l'inventaire suivant E = 0, B = 1, A = 1
Quand on a besoin de 3 grade A, commandé 2 jours avant le début du festival
Alors on utilise l'inventaire de 1 bonbonne de grade A
Et on utilise l'inventaire de 1 bonbonne de grade B
Et on achète 1 bonbonnes d'oxygène de grade E
Étant donnée l'inventaire suivant E = 0, B = 1, A = 1
Quand on a besoin de 3 grade A, commandé 12 jours avant le début du festival
Alors on utilise l'inventaire de 1 bonbonne de grade A
Et on produit 4 bonbonnes d'oxygène de grade B
Et l'inventaire restant devient E = 0, B = 3, A = 0
Scénario: Celui où le grade minimal d'oxygène requis est utilisé
Étant donné 2 single passes Premium
Quand la transaction est passée le 2060-07-01
Alors 6 bonbonnes d'oxygène sont nécessaires pour répondre aux besoins
Et le 2060-07-01, 16 litres d'eau sont nécessaires à la fabrication d'oxygène
Et 6 bonbonnes de catégorie B sont fabriquées
Et ces bonbonnes sont entreposées le 2060-07-11
API
Requête
GET /reports/o2
{
"inventory": [
{
"gradeTankOxygen": "E || "B" || "A"::string,
"quantity": 0::int
}, ...
],
"totalCost": 0.00::float,
"logs" : [
{
"type": "bought" || "produced" || "inventory-used"::string,
"grade": "E || "B" || "A"::string,
"quantity": 0::int,
"timestamp": "YYYY-MM-DDTHH:MM:SS"::string
},...
]
}
Exemple
GET /reports/o2
{
"inventory": [
{
"gradeTankOxygen": "E",
"quantity": 0
},
{
"gradeTankOxygen": "B",
"quantity": 3
},
{
"gradeTankOxygen": "A",
"quantity": 4
}
],
"totalCost": 20500.00,
"logs": [
{"type": "bought", "grade": "E", "quantity": 1, "timestamp": "2060-06-01T00:00:00"},
{"type": "produced", "grade": "B", "quantity": 4, "timestamp": "2060-06-11T00:00:00"},
{"type": "produced", "grade": "A", "quantity": 5, "timestamp": "2060-06-11T00:00:00"},
{"type": "inventory-used", "grade": "A", "quantity": 1, "timestamp": "2060-07-01T00:00:00"},
{"type": "inventory-used", "grade": "B", "quantity": 1, "timestamp": "2060-07-01T00:00:00"}
]
}
Questions et réponses sur la story:
Est-ce que la date de fin d’une production d’oxygène peut survenir le premier jour du festival (17 juillet)?
Oui.
Si la fabrication d’oxygène commence le 1er, si le délai est de 10 jours, est-ce que l’oxygène est prêt le 10 ou le 11?
L’oxygène sera prêt le 11.
Pouvons-nous présumer qu’il n’y a pas de perte lors de la production d’oxygène?
Oui. Si une production d’oxygène grade A de 5 bonbonnes est entamée, alors dès le départ on peut considérer que la production sera de 5 bonbonnes exactement. C’est pourquoi il n’est pas nécessaire d’attendre la fin de la production d’oxygène pour affirmer qu’il y a un excédent.