0

我正在尝试编写可靠的方法来检查给定的以太币是否足以购买我的硬币。如果足够,我会给他们相应数量的硬币,但如果以太币不够,我需要发回用于购买硬币的以太币。有什么方法可以做到这一点吗?

这是我写的购买硬币的方法。

function buyTokens(uint256 noOfCoins) public payable returns (bool success){
    if(CoinValue*noOfCoins <= msg.value)
    {
        balances[msg.sender] += noOfCoins;
        return true;
    }
    else{

        emit TokenIssues("You doesnt have enough balances to purchase these quartz base coins");
        msg.sender.transfer(msg.value);
        return false;
    }
}
4

1 回答 1

0

如果msg.value低于您所期望的金额,则只需其放入 else 子句中即可。这样,以太币将返回给用户。

于 2019-02-22T14:05:28.127 回答