拍卖竞拍智能合约

mac2024-01-25  38

pragma solidity^0.4.24; contract auction{ address public seller;//卖家 //最高出价者 address public buyer; uint public auctionAmount;//最高价 uint auctionEndTime;//竞拍结束时间 bool isFinished;//shi fou wnacheng //1卖家 2,时间间隔 构造函数 constructor(address _seller,uint _duration)public { seller =_seller; auctionEndTime =_duration +now;//jie'shu结束de结束的shi'jian结束的时间 isFinished =false; } //竞拍 function bid() public payable{ require(!isFinished);//是否结束 require(now<auctionEndTime);//还没有竞拍结束 require(msg.value>auctionAmount);//买家出价大于最高出价 if (auctionAmount>0&&address(0)!=buyer){ buyer.transfer(auctionAmount);//钱将退回给买家 } buyer=msg.sender;//新的买家 auctionAmount=msg.value;//买家的最高价 } //结束竞拍 function auctionEnd() public payable{ require(now>auctionEndTime);//过了竞拍时间 require(!isFinished); isFinished=true; seller.transfer(auctionAmount);//将钱转回到卖家钱包 } //获取出价最高买家的价钱 function getBalance() public view returns(uint){ return address(this).balance; } }

 

最新回复(0)