契约打卡程序

2019-04-16  本文已影响0人  树哥区块链

产品描述

一个契约打卡类的应用,可以实现:
1、发起打卡
2、参与打卡
3、打卡
4、结果

四个功能,不过在初期,我们可以简化问题,暂时只需要实现一个连续7天的打卡程序。

一个打卡的流程:

1.任何人都可以点击打卡,来进行打卡。

2.需要判断对方是否为每日的5:00-7:00第一次打卡,如果是第一次打卡,则容许打卡。如果不是,例如在此时间之外,或者在此时间内第二次打卡,都不能进行打卡。

3.判断打卡方是第几次打卡,如果不是此轮次的第8次打卡,则直接返回消息。如果是本轮次的第8次打卡,则可以自动提现。转到下一个步骤。

4.满足提现条件的用户,自动会把资金池的总额除以满足提现条件的用户(本周期内连续7天打卡)+ 1wicc。 例如,总共10个人曾今打过卡,积累到第8天之前60个wicc,满足条件的只有5个人。这样这个打卡的人收益就是 60除以5加上1个wicc=13个wicc收益。

5.不满足提现条件的用户(中间有漏天),本轮提现资格取消。

前端工作

  1. 整体页面设计。
  2. 判断时间5:00-7:00,这个在区块链实现有些复杂,建议这个在前端页面实现。
  3. 点击打卡,调用钱包插件进行签名,调用智能合约,给智能合约转入1个wicc。
  4. 点击结果,显示:活动的轮次、转账记录、总参与人数、满足提现人数、当前奖池总金额。

后端工作

1.判断在一个周期内的只有一次打卡。(通过区块高度判断)
2.提供活动轮次、总资金数量、总参与人数、满足提现人数等信息。便于前端查询。(一个结果的功能:返回如上的各种信息。)
3.判断在本轮次中,是否符合提现要求,不满足要求则返回结果退出。满足要求(本轮次连续第8次打卡),则调用提现功能。
4.提现功能采用transfertoaddress,将奖池的部分资金转移给符合要求者。

上一篇下一篇

猜你喜欢

热点阅读