债券市场模型
Blockchain App Builder 的增强版本包括一个模型属性,为债券市场场景生成其他方法。
如果将 model: bond
参数包含在使用扩展 ERC-1155 标准的标记的规范文件中,则区块链应用程序构建器特定于应用程序的链代码,包括用于债券市场应用程序的以下附加方法。
TypeScript 债券市场的方法
债券市场链代码包括通用 ERC-1155 NFT 链代码中可用的所有方法。以下特定于债券市场情景的其他方法可用。-
postToken
- 此方法只能由令牌创建者调用。该方法提交债券代币以在市场上上市。创建令牌时,其状态最初设置为
created
。此方法将状态更新为posted
。用户可以运行getAllTokensWithFilter
方法来检索状态为posted
的所有 NFT。 -
purchaseToken
- 任何账户持有人都可以调用此方法来购买上市债券 NFT。采购将债券 NFT 从创建者的帐户转移到调用者的帐户,并将 CBDC 令牌从调用者的帐户转移到创建者的帐户。因此,该方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌创建者对应,CBDC 令牌转移值必须等于债券令牌的面值乘以要购买的数量。 -
payInterest
- 此方法只能由令牌创建者或管理员调用,以支付债券令牌上获得的利息。仅当令牌的利息频率为每月、每季度或每年时,才能调用此方法。如果利息频率为到期日,则不能支付利息。利息由链码根据代币的优惠券利率计算得出。采购操作将 CBDC 令牌从呼叫者的账户转移到债券所有者的账户。因此,此方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌所有者对应,CBDC 令牌转移值必须等于债券链代码计算的利息。 -
requestTokenRedemption
- 此方法只能由令牌所有者调用,以在到期后提出赎回债券令牌的请求。此方法还涉及按链代码计算赎回价格。赎回请求只能针对用户拥有的债券令牌的全部数量提出。用户可以根据不同的结算 ID 提出多个赎回请求,但令牌创建者只能批准一个请求。
-
approveTokenRedemption
- 此方法只能由令牌创建者调用,以批准赎回债券令牌的请求。审批操作将债券 NFT 从所有者帐户(提出请求的用户)转移到创建者的帐户,并将 CBDC 令牌从债券创建者的帐户转移到所有者帐户。因此,该方法必须在原子事务处理的上下文中执行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须对应于提出赎回请求的令牌所有者的账户,CBDC 令牌转移值必须等于链代码在提出赎回请求时计算的计算赎回价格。 -
rejectRedemption
- 令牌创建者可以调用此方法来拒绝赎回请求。令牌所有者可以使用其他结算 ID 再次提出赎回请求。
-
getAllTokensWithFilters
- 管理员可以调用此 get 方法来提取按状态过滤的所有令牌(
CREATED
或POSTED
)。 -
getTokenApprovalRequestByUser
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
getTokenApprovalRequestForUserByStatus
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
getAccountBondSummary
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。
-
getAccountBondSummaryWithPagination
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。此方法可以基于页面大小和书签值返回分页的结果,还可以按开始时间和结束时间进行筛选。
转到债券市场的方法
债券市场链代码包括通用 ERC-1155 NFT 链代码中可用的所有方法。以下特定于债券市场情景的其他方法可用。-
PostToken
- 此方法只能由令牌创建者调用。该方法提交债券代币以在市场上上市。创建令牌时,其状态最初设置为
created
。此方法将状态更新为posted
。用户可以运行getAllTokensWithFilter
方法来检索状态为posted
的所有 NFT。 -
PurchaseToken
- 任何账户持有人都可以调用此方法来购买上市债券 NFT。采购将债券 NFT 从创建者的帐户转移到调用者的帐户,并将 CBDC 令牌从调用者的帐户转移到创建者的帐户。因此,该方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌创建者对应,CBDC 令牌转移值必须等于债券令牌的面值乘以要购买的数量。 -
PayInterest
- 此方法只能由令牌创建者或管理员调用,以支付债券令牌上获得的利息。仅当令牌的利息频率为每月、每季度或每年时,才能调用此方法。如果利息频率为到期日,则不能支付利息。利息由链码根据代币的优惠券利率计算得出。采购操作将 CBDC 令牌从呼叫者的账户转移到债券所有者的账户。因此,此方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌所有者对应,CBDC 令牌转移值必须等于债券链代码计算的利息。 -
RequestTokenRedemption
- 此方法只能由令牌所有者调用,以在到期后提出赎回债券令牌的请求。此方法还涉及按链代码计算赎回价格。赎回请求只能针对用户拥有的债券令牌的全部数量提出。用户可以根据不同的结算 ID 提出多个赎回请求,但令牌创建者只能批准一个请求。
-
ApproveTokenRedemption
- 此方法只能由令牌创建者调用,以批准赎回债券令牌的请求。审批操作将债券 NFT 从所有者帐户(提出请求的用户)转移到创建者的帐户,并将 CBDC 令牌从债券创建者的帐户转移到所有者帐户。因此,该方法必须在原子事务处理的上下文中执行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须对应于提出赎回请求的令牌所有者的账户,CBDC 令牌转移值必须等于链代码在提出赎回请求时计算的计算赎回价格。 -
RejectRedemption
- 令牌创建者可以调用此方法来拒绝赎回请求。令牌所有者可以使用其他结算 ID 再次提出赎回请求。
-
GetAllTokensWithFilter
- 管理员可以调用此 get 方法来提取按状态过滤的所有令牌(
CREATED
或POSTED
)。 -
GetTokenApprovalRequestByUser
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
GetTokenApprovalRequestForUserByStatus
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
GetAccountBondSummary
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。
-
GetAccountBondSummaryWithPagination
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。此方法可以基于页面大小和书签值返回分页的结果,还可以按开始时间和结束时间进行筛选。
TypeScript 用于债券市场的 SDK 方法
-
payInterest
- 令牌创建者或管理员可以调用此方法来支付债券令牌上获得的利息。仅当令牌的利息频率为每月、每季度或每年时,才能调用此方法。如果利息频率为到期日,则不能支付利息。利息由链码本身根据代币的优惠券利率计算。采购操作将 CBDC 令牌从呼叫者的账户转移到债券所有者的账户。因此,此方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌所有者对应,CBDC 令牌转移值必须等于债券链代码计算的利息。 -
requestTokenRedemption
- 此方法只能由令牌所有者调用,以在到期后提出赎回债券令牌的请求。此方法还涉及按链代码计算赎回价格。赎回请求只能针对用户拥有的债券令牌的全部数量提出。用户可以根据不同的结算 ID 提出多个赎回请求,但令牌创建者只能批准一个请求。
-
approveTokenRedemption
- 此方法只能由令牌创建者调用,以批准赎回债券令牌的请求。审批操作将债券 NFT 从所有者帐户(提出请求的用户)转移到创建者的帐户,并将 CBDC 令牌从债券创建者的帐户转移到所有者帐户。因此,该方法必须在原子事务处理的上下文中执行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须对应于提出赎回请求的令牌所有者的账户,CBDC 令牌转移值必须等于链代码在提出赎回请求时计算的计算赎回价格。 -
rejectRedemption
- 令牌创建者可以调用此方法来拒绝赎回请求。令牌所有者可以使用其他结算 ID 再次提出赎回请求。
-
getAllTokensWithFilter
- 管理员可以调用此 get 方法来提取按状态过滤的所有令牌(
CREATED
或POSTED
)。 -
getTokenApprovalRequestByUser
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
getTokenApprovalRequestForUserByStatus
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
getAccountBondSummary
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。
-
getAccountBondSummaryWithPagination
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。此方法可以基于页面大小和书签值返回分页的结果,还可以按开始时间和结束时间进行筛选。
转到债券市场的 SDK 方法
-
PayInterest
- 令牌创建者或管理员可以调用此方法来支付债券令牌上获得的利息。仅当令牌的利息频率为每月、每季度或每年时,才能调用此方法。如果利息频率为到期日,则不能支付利息。利息由链码本身根据代币的优惠券利率计算。采购操作将 CBDC 令牌从呼叫者的账户转移到债券所有者的账户。因此,此方法必须在原子事务处理的上下文中运行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须与令牌所有者对应,CBDC 令牌转移值必须等于债券链代码计算的利息。 -
RequestTokenRedemption
- 此方法只能由令牌所有者调用,以在到期后提出赎回债券令牌的请求。此方法还涉及按链代码计算赎回价格。赎回请求只能针对用户拥有的债券令牌的全部数量提出。用户可以根据不同的结算 ID 提出多个赎回请求,但令牌创建者只能批准一个请求。
-
ApproveTokenRedemption
- 此方法只能由令牌创建者调用,以批准赎回债券令牌的请求。审批操作将债券 NFT 从所有者帐户(提出请求的用户)转移到创建者的帐户,并将 CBDC 令牌从债券创建者的帐户转移到所有者帐户。因此,该方法必须在原子事务处理的上下文中执行。该方法还验证传输过程,确保使用正确的
orgId
和userId
调用相应的 CBDC 链代码进行传输。orgId
和userId
必须对应于提出赎回请求的令牌所有者的账户,CBDC 令牌转移值必须等于链代码在提出赎回请求时计算的计算赎回价格。 -
RejectRedemption
- 令牌创建者可以调用此方法来拒绝赎回请求。令牌所有者可以使用其他结算 ID 再次提出赎回请求。
-
GetAllTokensWithFilter
- 管理员可以调用此 get 方法来提取按状态过滤的所有令牌(
CREATED
或POSTED
)。 -
GetTokenApprovalRequestByUser
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
GetTokenApprovalRequestForUserByStatus
- 任何账户持有人都可以调用此 get 方法来获取他们所做的所有令牌审批请求(兑换请求)的详细信息。
-
GetAccountBondSummary
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。
-
GetAccountBondSummaryWithPagination
- 任何账户持有人都可以调用此 get 方法来获取账户摘要,其中包括购买或兑换的令牌的详细信息以及购买价格和兑换价格。此方法可以基于页面大小和书签值返回分页的结果,还可以按开始时间和结束时间进行筛选。