🚀基于区块链的房地产交易系统小模型。提供销售和捐赠功能。本项目使用Hyperledger Fabric构建区块链网络, go编写智能合约,应用层使用gin+fabric-sdk-go调用合约。前端展示使用vue+element。前后端分离。
注:本项目需放在 $GOPATH/src/github.com/togettoyou/blockchain-real-estate
下运行
- Hyperledger Fabric
- Docker
- Go Gin
- Vue
- ElementUI
默认已经安装Hyperledger Fabric环境,如果未安装,参考:https://juejin.im/post/5e5db4ebf265da57301bfba5
我的本机环境参考:
1、克隆本项目放在 $GOPATH/src/github.com/togettoyou/blockchain-real-estate
下
2、进入deploy目录,执行start.sh
脚本
# 赋予权限
sudo chmod +x *.sh
# 启动区块链网络
./start.sh
# 停止区块链网络
./stop.sh
# 如果启动失败,可能是环境清理不干净,可以尝试先./stop.sh清理环境再./start.sh启动
3、进入application目录,启动应用程序
# 编译
go build
# 赋予权限
sudo chmod +x application
# 启动
./application
4、浏览器访问 http://localhost:8000/web
application
: go gin + fabric-sdk-go 调用链码,提供外部访问接口,前端静态资源放在dist
目录下
chaincode
: go 编写的智能合约
deploy
: 区块链网络的配置以及启动停止脚本
vendor
: 项目所需依赖包,防止网络原因下载失败
vue
: vue + element的前端展示页面
# 如果需要修改前端页面,在vue目录下执行
yarn install
# 启动
yarn dev
# 重新打包生成dist资源,将dist放到application目录下覆盖
yarn build:prod
screenshots
: 截图
管理员为用户业主创建房地产。
业主查看名下房产信息。
业主发起销售,所有人都可查看销售列表,购买者购买后进行扣款操作,并等待业主确认收款,交易完成,更新房产持有人。在有效期期间可以随时取消交易,有效期到期后自动关闭交易。
业主发起捐赠,指定受赠人,受赠人确认接收受赠前,双方可取消捐赠/受赠。