写点什么

Solidity 案例详解(五)服务评价合约

作者:BSN研习社
  • 2024-03-12
    浙江
  • 本文字数:765 字

    阅读完需:约 3 分钟

Solidity案例详解(五)服务评价合约

有服务提供商和用户两类实体,其中服务提供商部署合约,默认诚信为 true,用户负责使用智能合约接受服务及评价,服务提供商的评价信息存储在一个映射中,可以根据服务提 供商的地址来查找评价信息。用户评价信息, 服务提供商的评价信息会随之更新。服务提供商查询自己的总评分,评价次数以及所有用户评价内容使用了 Solidity 语言提供的 abi.encodeWithSignature 函数 将评价信息打包成交易。然后调用 call 函数发送交易,并等待交易确认。最后,将用户评价信息上传至智能合约,以便在区块链上进行永久存储。

 各合约功能:

 1.合约的构造函数在合约部署时执行,将合约创建者的地址设为服务提供商的地址,并将其默认标记为可信。



2.writeServiceInformation: 允许服务提供商(只有服务提供商本人)写入服务信息

3.submitEvaluation: 允许用户提交对服务提供商的评价。评价包括评分和评论。




4.getProviderScore: 提供对服务提供商总评分的查询功能。



5.getNumEvaluations: 提供对服务提供商收到的评价次数的查询功能。



6.isTrustedProvider: 提供对服务提供商是否被认为可信的查询功能。



7.setTrustedProvider: 允许服务提供商(只有服务提供商本人)修改自身的可信状态。




8.sendTransactionWithEvaluation: 允许服务提供商以交易的方式,将目前所有用户评价信息写入区块链。

9.evaluationsByServiceProvider: 根据服务商地址利用索引查询用户评分和评价。



10.getEvaluationsByServiceProvider: 提供对服务提供商收到的所有用户评价信息的查询功能。


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:

https://blog.csdn.net/2302_77339802/article/details/134838876

文章来源:CSDN 博主「发呆...」

文章原标题:《solidity 案例详解(六)服务评价合约》

旨在传播区块链相关技术,如有侵权请与我们联系删除。


用户头像

BSN研习社

关注

还未添加个人签名 2021-11-05 加入

还未添加个人简介

评论

发布
暂无评论
Solidity案例详解(五)服务评价合约_区块链_BSN研习社_InfoQ写作社区