# WHOOK Staking合约说明 ## 1. 主要写方法说明 ### createProject * 说明:创建一个锁仓项目 * 参数:锁仓时间(秒),锁仓APR(设置30表示APR为30%),手续费(百分数) * 返回值:项目索引,质押凭证合约 ### setProject * 说明:设置和修改质押项目 * 参数:项目索引,开始时间,结束时间,锁仓时间,手续费 ### setProjectRate * 说明:设置和修改某个时间起点开始的费率, * 参数:项目索引,新利率起点时间,新利率 ### setStaking * 说明:设置奖励代币和质押代币 * 参数:质押代币,奖励代币 ### userClaim * 说明:领取用户的挖矿收益 * 参数:项目索引,提取数量 ### userStak * 说明:Stake,参与挖矿 * 参数:项目索引,提取数量 ### userUnstak * 说明:提取用户本金及利息,unlock * 参数:项目索引 ## 2. 主要查询方法说明 ### getApr * 说明:查询利率(百分数,返回30表示利率为30%) * 参数:项目索引 ### userStakInfo * 说明:查询用户质押信息 * 参数:用户地址,项目索引 * 返回值:质押开始时间,质押结束时间,质押数量,待领取奖励数量 ### getProjects * 说明:查询项目数 * 参数:无 ### getProjectStatus * 说明:获取项目的开始时间和结束时间 * 参数:项目索引 ### getProjectInfo * 说明:获取项目信息 * 参数:项目索引 * 返回值:锁仓时间,手续费,质押总数,已领取总奖励,质押代币合约,费率配置数量 ### getProjectRate 说明:获取项目中某个费率配置的信息 参数:项目索引,费率索引 返回值:开始时间,费率,此配置的APR ## 3.合约部署说明 1. 设置质押代币和奖励代币 setStaking 2. 创建质押项目 createProject 3. 设置质押项目 的开始时间和结束时间、锁仓周期、手续费等 setProject