Seaport合约业务场景

Seaport合约中用于执行订单交割的方法有以下七个:
fulfillBasicOrder、fulfillOrder、fulfillAdvancedOrder、fulfillAvailableOrders、fulfillAvailableAdvancedOrders、matchOrders、matchAdvancedOrders
因为每一笔订单都会涉及两方,根据两方发起动作的先后顺序起个名字,先动作的一方称为maker,后动作的一方称为taker

  • fulfillBasicOrder
    maker要卖自己的nft,所以到市场上挂一个单,只是标注价格,加一个有效期,没有其他要求。taker看到后,觉得适合自己,于是买它。最终调用合约的fulfillBasicOrder
  • fulfillOrder
    maker要卖自己的nft,遂到市场上挂一个单,此时市场行情不是很好,于是想先挂一个降价拍卖的单,设置起拍价,最低价。taker看到后,觉得适合自己,于是买它.最终调用fulfillOrder
  • fulfillAdvancedOrder
  • maker想买一个nft,于是到市场上逛逛,发现一个nft很适合自己的审美。但是nft拥有者没有挂单,于是maker提供一个价格给拥有者,拥有者一看价格非常合适,于是拥有者变成taker执行交易。最终调用fulfillAdvancedOrder
  • maker想买一个nft,于是把它加入购物车,然后在购物车里指明把nft发送到另一个钱包,再购买。最终调用fulfillAdvancedOrder
  • fulfillAvailableOrders
    这个方法的使用场景还没有找到
  • fulfillAvailableAdvancedOrders
    taker在nft市场看中了两个nft,这两个nft都有maker挂单。于是taker把这两个nft加入购物车,进行购买。最终调用fulfillAvailableAdvancedOrders
  • matchOrders
    maker和taker在网上认识,maker向taker展示自己的nft,taker看中了其中一个,于是想买。maker去市场挂一个单,指定购买人是taker的地址。然后taker执行交易。最终调用matchOrders
  • matchAdvancedOrders
    maker看市场上闲逛,看中了某个collection里具有某些特征的nft,就想从这个collection里买一些特征nft。恰巧当前collection也支持根据trait提供的offer。于是maker点开collection详情,然后提供collection offer,选中想要的特征,下了一个offer单。taker看到后接受offer,最终调用matchAdvancedOrders