Rédigez votre premier contrat intelligent avec Remix IDE | par Burakcan Ekici | Meilleure programmation | Novembre 2020

Online Coding Courses for Kids

La méthode getContractBalance

Maintenant, nous appelons le getContractBalance méthode pour vérifier si les 30 ETH envoyés par les clients existent dans le compte du contrat. Par conséquent, nous cliquons sur le bouton bleu getContractBalance, et il renvoie un montant qui correspond à 30 ETH en Wei.

La méthode getContractBalance

Différente des méthodes que nous avons appliquées jusqu’à présent, cette méthode renvoie simplement une valeur sans modifier aucune variable d’état. Par conséquent, il a été exécuté sans frais, et l’avertissement dans le terminal semble un peu différent.

Le résultat de la méthode getContractBalance

La méthode sendInterest

Après avoir vérifié que le contrat n’est plus vide, nous pouvons envoyer de l’intérêt à nos clients en appelant le sendInterest méthode. Nous sélectionnons le compte que nous avons défini comme compte administrateur auparavant et cliquons sur le bouton rouge sendInterest.

Le résultat de le sendInterest méthode

Le message dans l’image ci-dessus apparaît après l’appel de la méthode dans le terminal. Ce message signifie qu’un ETH a été envoyé avec succès au compte de chaque client. Nous pouvons voir le solde de chaque client passer de 89 à 90 ETH après cette opération.

Les comptes des clients

Nous avons implémenté une restriction qui vérifie si 10 secondes se sont écoulées depuis la sendInterest méthode a été appelée. Pour vérifier ce contrôle, nous appelons la même méthode une fois de plus en 10 secondes. La transaction s’est déroulée comme prévu et le "It’s just been less than 10 seconds!" message est apparu dans le terminal, comme dans l’image ci-dessous.

Le message “Cela ne fait que moins de 10 secondes!” message

La méthode de retrait

Maintenant, nous appelons la dernière méthode que nous avons développée pour retirer un montant du contrat sur le compte du client. Dans la méthode de retrait, nous transférons le montant déclaré dans le msg.value du compte à l’expéditeur qui est représenté dans le msg.sender variable.

À ce stade, il y a un problème réalisé, à savoir que les personnes qui n’ont pas adhéré au contrat en tant que client peuvent également appeler cette méthode. Nous utilisons le onlyClient modificateur pour éviter ce problème.

Lorsque nous sélectionnons un compte appartenant à une personne n’ayant pas adhéré au contrat en tant que client, puis appelons la méthode de retrait via le bouton de retrait rouge, le "Only clients can call this!" est affiché:

Le “Seuls les clients peuvent appeler ça!” message

Si nous sélectionnons une personne ayant adhéré au contrat et cliquons sur le bouton de retrait rouge, nous prévoyons que le montant de l’expéditeur passera de 90 à 99 ETH.

Close Menu