https://github.com/starcoinorg/starauction-core
Hackathon project, This is a Decentralization auction project, everyone can use it create an auction and bid
https://github.com/starcoinorg/starauction-core
Last synced: 8 months ago
JSON representation
Hackathon project, This is a Decentralization auction project, everyone can use it create an auction and bid
- Host: GitHub
- URL: https://github.com/starcoinorg/starauction-core
- Owner: starcoinorg
- Created: 2021-07-30T02:49:20.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-08-02T02:58:45.000Z (about 4 years ago)
- Last Synced: 2024-12-30T09:16:00.761Z (10 months ago)
- Homepage:
- Size: 26.4 KB
- Stars: 0
- Watchers: 11
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 基于starcoin move的去中心化拍卖所
## 简介
去中心化拍卖场景,有拍卖人和买受人,拍卖人创建拍卖并抵押标的物,并等待开拍。有人参与竞拍并达到起拍价且拍卖时间到则拍卖成功,否则拍卖失败。### 拍卖方
* 注册一个拍卖:起拍价,加价幅度,一口价,拍卖起始和结束时间
* 抵押标的物:传入抵押标的物(目前为自己发布的Token,后续换成NFT),保证金,等待拍卖结束
* 拍卖成功:得到拍卖金和保证金
* 拍卖失败:时间结束,没有达到起拍价或者无人竞拍,拿回标的物和保证金### 竞拍方
* 出价:拍卖开始后,可使用STC出价,出价成功抵押STC,并将结束时间延迟N分钟。
* 一口价:买完直接拍卖成功。
* 拍卖成功:得到标的物
* 拍卖失败:取回竞拍金
* 竞标被超过:取回竞拍金### 界面
1. 拍卖列表(off-chain api)
2. 创建拍卖(on-chain api)
3. 我的拍卖:我参与的,我发起的(off-chain api)
4. 拍卖详情:参与竞标(on-chain api)---
## API (On-chain)
### 创建拍卖
{{address}}::AuctionScript::create
创建拍卖,任何人都可以创建,拍卖创建者和拍卖者可以不是同一个人
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|start_time|u64|开拍时间,毫秒时间戳|
|end_time|u64|结束时间,毫秒时间戳|
|start_price|u128|起拍价,即竞价不能低于该价格|
|reserve_price|u128|保留价,时间结束时,如果低于该价格则流拍|
|increments_price|u128|加价幅度,每次叫价均以该数值的倍数增加|
|hammer_price|u128|一口价|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|### 抵押拍品
{{address}}::AuctionScript::deposit
抵押拍品,任何人都可以抵押拍品,抵押之后的这个人会成为该场拍卖的出售方
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|creator|address|创建拍卖的用户地址|
|objective_price|u128|拍卖标的物的份额,当前版本使用Token用作演示|
|deposit_price|u128|拍卖保证金,保证拍卖顺利进行,若撤销则扣留,若流拍或成交则退回|
|reserve_price|u128|保留价,时间结束时,如果低于该价格则流拍|
|BidTokenType|Template|竞拍代币类型|### 参与竞价
{{address}}::AuctionScript::bid
任何人都可以参与竞价,除了抵押拍品的人
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|creator|address|创建拍卖的用户地址|
|bid_price|u128|竞价额度|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|### 查询拍卖信息
{{address}}::AuctionScript::auction_info
查询某用户发布的拍卖信息请求参数
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|creator|address|拍卖创建者|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|返回参数
|参数名|参数类型|说明|
|------ | ------ | ------ |
|start_time|u64|签名用户身份|
|end_time|u64|拍卖创建者|
|reserve_price|u128|保留价|
|increments_price|u128|加价幅度|
|hammer_price|u128|一口价|
|state|u8|当前状态, 0:初始化, 1: 待开拍, 2: 拍卖中,3: 流拍(未到保留价),4:流拍(无人出价),5:成交|
|buyer|address|当前竞拍人|
|buyer_bid_reserve|u128|竞拍人出价|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|### 一口价购买
{{address}}::AuctionScript::hammer_buy
一口价购买,任何人随时随地都可以出一口价购买请求参数
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|creator|address|拍卖创建者|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|### 完成拍卖
{{address}}::AuctionScript::completed
拍卖时间结束时调用,调用后分配对应的资源,任何人都可调用请求参数
|参数名|参数类型|说明|
|------ | ------ | ------ |
|account|signer|签名用户身份|
|creator|address|拍卖创建者|
|ObjectiveTokenT|Template|标的物代币类型|
|BidTokenType|Template|竞拍代币类型|---