Closed Natchii59 closed 3 months ago
Pourquoi wallets
et wallet
? En graphQL tu peux pas changer ta query en fonction de si il y a un id ou pas ?
Pourquoi
wallets
etwallet
? En graphQL tu peux pas changer ta query en fonction de si il y a un id ou pas ?
@Code-Barru les queries/mutations sont liés à un schema GraphQL (qui est généré avec Nestjs). Donc tu peux pas avoir des queries "dynamiques", c'est à dire qui change de type de retour en fonction des arguments.
C'est pour ça que wallet
permet de récupérer un wallet via un id, et wallets
renvoient plusieurs wallets via les nodes ou totalCount.
J'ai bien ajouté le système de wallets comme demandé à l'issue #6
Il est donc possible de créer plusieurs wallet pour un utilisateur. Il est obligatoire d'être connecté pour effectuer des actions sur des wallets. Les actions peuvent être effectué que sur nos propres wallets, et pareil pour les visualiser. Lors de la création il faut renseigner le nom et la devise du wallet. La valeur est optionnelle, si elle n'est pas renseigné, elle est à 0 par défaut (direct en base de données). On peut update ses wallets, mais uniquement le nom.
Il est aussi possible de récupérer ses wallets, sois via la query
wallet
qui demande l'id du wallet, sois viawallets
qui renvoie une système de pagination. Pour la pagination il est possible de filtrer un maximum la recherche des wallets via des arguments/inputs. Il renvoie 2 champsnodes
ettotalCount
. Ils sont indépendants, ce qui veut dire que si je mets que le champtotalCount
il ne va pas aller fetch les données des wallets et donc faire juste uncount
en base de données. Cela permet de gagner en performance si l'utilisateur a plusieurs wallets. Cette base de CRUD va être très utile pour la suite, car j'ai créer un fichierprisma.dto.ts
dans le module common, qui va être utilisé dans tous les systèmes de pagination. Pour la création d'autres CRUD, celui-ci peut être une source d'inspiration pour aider.Je compte sur vous pour tester cette branche en local avant de confirmer la review de code, pour que vous ayez compris le code et le fonctionnement. Si vous avez des questions: Discord ou commentaire dans cette PR.