我在IBM Hyperledger Composer中定义了以下业务网络
========================================
namespace org.india.invoicefinance
enum InvoiceState {
o SUBMITTED
o APPROVED
o REJECTED
o FINANCED
}
asset InvoiceLedger identified by invoiceNumber {
o String invoiceNumber
o DateTime invoiceDt
o Double amount
o Integer creditPeriod
o String poNumber
o InvoiceState invoiceStatus
--> Buyer buyer
--> Seller seller
}
participant Buyer identified by buyerId {
o String buyerId
o String orgName
o String contactName
}
participant Seller identified by sellerId {
o String sellerId
o String orgName
o String contactName
}
transaction Invoice {
o String invoiceNumber
o DateTime invoiceDt
o Double amount
o Integer creditPeriod
o String poNumber
--> Buyer buyer
--> Seller seller
}
========================================在交易处理功能中,我想执行以下验证:
买方存在于买方,卖方存在于卖方,发票编号不存在于发票分类帐中
有人能帮助或指导我实现这一目标吗?
非常感谢。Umesh
发布于 2017-11-22 00:07:18
您可以在此处为比较运算符-> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/animaltracking-network/lib/model.cto.js查看智能合约。
注意:如果您传递了对您的买方、卖方和发票号的引用(根据您的模型,所有这些都可能是transaction Invoice中的关系),那么您就有了当前的买方、卖方和发票编号。显然,您可以连接到这些单独的注册表,以检查其他记录(如您所暗示的)。这里的查找示例-> (较简单的模型,具有多个关系的事务) https://github.com/hyperledger/composer-sample-networks/tree/master/packages/trade-network/models (较复杂的模型) https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/models/perishable.cto和txn逻辑-> https://github.com/hyperledger/composer-sample-networks/blob/master/packages/perishable-network/lib/logic.js
https://stackoverflow.com/questions/47390916
复制相似问题