DeFi是指让用户在无需依靠中心化机构的情况下,通过部署在智能合约平台上的去中心化应用(Dapp)完成一系列金融服务,持币生息板块,将币存在钱包里可产生一定的收益,其运作的方式可灵活变化。持币生息,和字面意思一样,主要在于恒定,不需要有任何的动作的,玩家只需要存币在平台里面去,根据平台规则比如定时给玩家反多少的利息等,这种和存款获得利息道理是一样的。
质押函数pledgeToken
function pledgeToken() public payable{
require(address(msg.sender) == address(tx.origin), "no contract");
require(_isDIS, "is disable");
require(_leftMiningAmount>0, "less token");
require(msg.value>=_minAmount, "less token");
require(_totalPledegAmount.add(msg.value)<=_maxPledgeAmount, "more token");
require(block.timestamp>=_startTime&&block.timestamp<=_endTime, "is disable");
if(_orders[msg.sender].isExist==false){
keys.push(KeyFlag(msg.sender,true));
size++;
createOrder(msg.value,keys.length.sub(1));
}else{
PledgeOrder storage order=_orders[msg.sender];
order.token=order.token.add(msg.value);
keys[order.index].isExist=true;
}
_totalPledegAmount=_totalPledegAmount.add(msg.value);
进行质押的底层币额度不能少于最小值,质押后也不能超过限定的最大质押额度;
如果该用户之前没有质押过,则建立档案(createOrder),否则仅修改档案