Skip to content

yfpeople/blockchain-trace-fabric

 
 

Repository files navigation

基于Fabric的农产品溯源系统

介绍

基于区块链的农产品溯源系统,分为pc端,h5端,后台采用SpringBoot,前端Vue, 区块链网络采用Fabric,一共分为六个组织节点,农户,原料厂商,生产厂商,物流厂商,零售商,消费者

软件架构

此系统有四个模块,已上传Gitee, blockchain-trace-bcnetwork ,blockchain-trace-applets ,blockchain-trace-pc ,blockchain-trace-basic-data。

blockchain-trace-bcnetwork:区块链网络,可直接将文件上传至服务器,然后启动里面的脚本

blockchain-trace-applets:小程序端溯源,做得十分简单

blockchain-trace-pc:PC端,使用的是RuoYi-Vue

blockchain-trace-basic-data:系统基础数据后台,使用的是RuoYi

前端:Vue.js , Element UI , mpvue

后端:SpringBoot , Mybatis , FastDFS , Node.js , Redis , MySQL

区块链:Fabric1.2

智能合约:Golang语言编写

环境:Ubuntu16.04 64位(2核 4G以上),Docker 18.09.7 , Docker-compose 1.29.1 , 

安装教程

1.先部署好区块链网络(blockchain-trace-bcnetwork,这里需要先拉取好所需的docker镜像,fabric-orderer,fabric-peer,fabric-counchdb,fabric-tools, fabric-ca,然后tag为latest): 将traceNetwork上传至服务器(也可自己搭建),进入basic-network目录中,启动start.sh脚本(./start.sh), 启动成功后进入webapp目录,启动start.sh脚本(此脚本是安装只能合约,它里面包含了其他几个脚本,可以自己观看), 启动成功后看一下docker容器,不出意外的话会安装了6个chaincode,安装成功后执行node enrollAdmin.js 和 node registerUser.js(这里如果没有生成成功,执行npm install fabric-client后再试) 生成对应的密钥文件后, 最后启动node服务,命令为 node app.js , 如果需要让其常驻后台,需要安装pm2,然后执行启动 pm2 start app.js , 停止 pm2 stop app.js , (环境变量需要有node,npm , golang)

2.系统基础数据后端 (blockchain-trace-basic-data) 配置好Redis,MySQL , FastDFS , 端口为8088,(本系统全部所有服务都采用Docker部署)

3.PC端(blockchain-trace-pc)

npm install --registry=https://registry.npm.taobao.org

npm run dev

npm run build:prod

4.小程序(blockchain-trace-applets) 自己使用开发者工具打开

说明

本系统过于简单,只适合做你的毕业设计,课程设计,学习使用,本系统只是提供一个大致的思想,简单的流程,粗糙的实现,

界面

区块链浏览器 区块链结构 输入图片说明

基础数据 输入图片说明 输入图片说明 输入图片说明 输入图片说明

添加农作物 输入图片说明

农作物链上详情 输入图片说明

农作物种植过程记录 输入图片说明 输入图片说明

物流追踪(因本系统,这里忘记去做了,只是模拟了一下) 输入图片说明

司机运输定位(本系统采用PC端定位,实际上这是不行的,你想想,司机在开车过程中还要去打开浏览器进入系统去定位?这里只是模拟,让老师知道我要表达的意思,因为我也没钱去买设备来定位 😓 😓 ) 输入图片说明 输入图片说明

原料厂商质检报告上链 输入图片说明

生产厂商部分截图 输入图片说明 输入图片说明 输入图片说明 输入图片说明 输入图片说明 输入图片说明

零售商生成产品唯一溯源ID 输入图片说明

pc溯源 输入图片说明 输入图片说明 img.png 小程序端溯源

输入图片说明 输入图片说明 输入图片说明 输入图片说明 输入图片说明 输入图片说明

参与贡献

特技

About

基于区块链(fabric)农产品溯源平台

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 49.0%
  • Vue 32.1%
  • JavaScript 12.6%
  • Go 2.7%
  • Shell 2.2%
  • SCSS 1.0%
  • Other 0.4%