迪斯卡(Disca)眾籌質押挖礦系統專案開發/Solidity編寫

飛機號JT9119發表於2023-05-08

迪斯卡(Disca)是一個去中心化交易平臺(DEX),類似於Uniswap和PancakeSwap。它使用智慧合約在Ethereum和

Binance Smart Chain(BSC)上執行,支援ERC20和BEP20代幣交易。Disca DEX致力於提供安全、高效、低成本的交易

環境,使交易者能夠自由地交易各種加密貨幣。


為了促進平臺的發展和使用者的參與,Disca推出了眾籌質押挖礦活動。在該活動中,使用者可以透過質押Disca代幣來獲取平臺

代幣獎勵,這些獎勵可以用於交易費用、投資專案或贖回以獲取原始代幣。以下是有關Disca眾籌質押挖礦的更多資訊。


眾籌質押挖礦規則


眾籌期間:Disca眾籌期為30天,從開始日期到結束日期。


參與方式:使用者需要在Disca DEX平臺上購買和持有Disca代幣,然後將其質押到挖礦合約中。


挖礦週期:使用者可以選擇挖礦週期,即質押期限,可以是7天、14天或30天。


收益計算:Disca會根據使用者質押的代幣數量和質押期限計算挖礦收益。每個週期結束後,挖礦收益將自動發放到使用者的錢包中。


挖礦收益:使用者獲得的挖礦收益將以Disca代幣的形式發放,可以用於交易費用、投資專案或贖回以獲取原始代幣。


以下是用Solidity編寫的Disca眾籌質押挖礦智慧合約程式碼示例:

csharpCopy codepragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
contract DiscaMining { 
   uint public constant MINING_PERIOD = 30 days; 
      uint public constant MINIMUM_STAKE = 1000 ether;
    IERC20 public discaToken; 
       uint public startTime;  
         struct Stake {
        address staker;   
             uint amount;    
                uint start;      
                  uint period;       
                   bool withdrawn;
    }
    mapping(address => Stake[]) public stakes;  
      event Staked(address indexed staker, uint amount, uint period);  
        event Unstaked(address indexed staker, uint amount);  
          event Withdrawn(address indexed staker, uint amount);
    constructor(IERC20 _discaToken) {
        discaToken = _discaToken;
        startTime = block.timestamp;
    }    
    function stake(uint amount, uint period) external {
        require(amount >= MINIMUM_STAKE, "Amount too low");


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70028134/viewspace-2950660/,如需轉載,請註明出處,否則將追究法律責任。

相關文章