Skip to content

Instantly share code, notes, and snippets.

@jazzytomato
Created December 11, 2015 23:31
Show Gist options
  • Save jazzytomato/04d9f4fb469ba3a247fb to your computer and use it in GitHub Desktop.
Save jazzytomato/04d9f4fb469ba3a247fb to your computer and use it in GitHub Desktop.
exo ruby

un systeme de calcul de dettes dans le terminal

les données sont persistées dans un ou des fichiers (json ou yaml).

exemple d'utilisation :

ruby dettes.rb
Login
> Identifier vous : 
0- Creer un compte
1- Jeremy
2- Toto
$ 1
> Mot de passe:
$ password2015

Si 0, creation utilisateur puis Authentification :

$ 0
> Nom ?
$ Thomas
> Mot de passe:
$ helloworld

les mots de passent ne doivent pas être stockés en clair :)

Menu principal
> Bonjour Thomas, actions possibles :
1- Je dois de l'argent
2- Quelqu'un me doit de l'argent
3- Afficher mes dettes et creances
4- Quitter
$ 1
> A qui ?
1- Jeremy
2- Toto
$ 2
> Combien ?
$ 30.50
> OK. Toto te dois maintenant 100.50€ 
> Bonjour Thomas, actions possibles :
..

si 2, c'est similaire. Si 3 :

$ 3
> Dettes et créances :
Jeremy : + 15€
Toto :   + 100.50€
Titi:    - 50€
---------------
Solde:    65.50€
> Bonjour Thomas, actions possibles :
..

Bonus, gerer different devises avec la gem Money https://github.com/RubyMoney/money

ex:

> Combien ?
$ 15.50 EUR

Avec une devise par defaut configurable, ce qui permet de ne pas la preciser. Les dettes et creances sont affichées dans la devise par defaut

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment