3 Star 6 Fork 2

qfluck / block-chain

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

基于Fabric的汽车零部件溯源系统

介绍

汽车零部件产品追溯系统的实质是将每一个零配件上贴一个二维码,通过这个二维码实现对生产供应链中的供应商、生产商和整车厂都纳入系统管理,并采集零配件产品供应链中相关企业的原料、生产、加工、包装、配送、销售等各环节的质量安全数据。当产品出现质量问题时能够对产品进行前向追溯和后向追溯。

系统模块和技术

此系统有四个模块, blockchain-trace-bcnetwork ,blockchain-ui ,blockchain-end

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

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

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

前端:Vue.js , Element UI 

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

区块链:Fabric1.2

智能合约:Golang语言

环境:Ubuntu16.04 64位(建议2核 4G以上,2G也能运行),Docker 18.09.7 , Docker-compose 1.29.1 , 

因为本系统的区块链部分是完全按照最简单的来,比如共识是自带的solo,orderer节点是单节点,这些肯定都是不合理的,所以这个版本就单纯传达一个上层应用思想吧, 后续可能会在此思想上重新搭建一套能够投入使用的。

安装教程

一.fabric网络

1.确保环境配置好

node.js 8*

docker

docker-compose

Redis

FastDFS

Mysql8

go语言环境

2.拉取docker镜像

pull

docker pull hyperledger/fabric-peer:1.2.0 && 
docker pull hyperledger/fabric-orderer:1.2.0 && 
docker pull hyperledger/fabric-ca:1.2.0 && 
docker pull hyperledger/fabric-tools:1.2.0 && 
docker pull hyperledger/fabric-ccenv:1.2.0 && 
docker pull hyperledger/fabric-baseimage:0.4.10 && 
docker pull hyperledger/fabric-baseos:0.4.10 && 
docker pull hyperledger/fabric-couchdb:0.4.10

tag

docker tag hyperledger/fabric-peer:1.2.0 hyperledger/fabric-peer && 
docker tag hyperledger/fabric-orderer:1.2.0 hyperledger/fabric-orderer && 
docker tag hyperledger/fabric-ca:1.2.0 hyperledger/fabric-ca && 
docker tag hyperledger/fabric-tools:1.2.0 hyperledger/fabric-tools && 
docker tag hyperledger/fabric-ccenv:1.2.0 hyperledger/fabric-ccenv && 
docker tag hyperledger/fabric-baseimage:0.4.10  hyperledger/fabric-baseimage && 
docker tag hyperledger/fabric-baseos:0.4.10 hyperledger/fabric-baseos && 
docker tag hyperledger/fabric-couchdb:0.4.10 hyperledger/fabric-couchdb 

3.上传代码到linux服务器/或者直接git拉取

blockchain-trace-bcnetwork

4.运行basic_network目录下的start.sh文件

chmod -R 777 start.sh

./start.sh

此处会安装可能会出现问题,具体问题可以百度。

5.运行webapp目录下的./start.sh

先给webapp目录下的所有sh文件授权,如下

chmod -R 777 startFarmerCC.sh  

6.执行npm install安装依赖

npm install

可能node版本问题安装会出一些问题,node8应该是没问题的。

7.安装用户密钥

node enrollAdmin.js

node registerUser.js

执行node registerUser.js可能会安装失败,请删除一下hfc-key-store后重新执行,如果还是失败,可能就是npm install出问题。

8.启动node服务(node服务就是一个中间件,连接前端和区块链网络)

node app.js

如果需要让其常驻后台,需要安装pm2。

启动:pm2 start app.js

停止:pm2 stop app.js

到这里,区块链网络就部署完成

二.系统基础数据后台blockchain-trace-basic-data,是一个SpringBoot项目

1.修改application.yml文件中的Redis地址和fastdfs地址

  # redis 配置
  redis:
    # 地址
    host: 127.0.0.1
    # 端口,默认为6379
    port: 6379
    # 密码
    password: 

  fdfs:
      so-timeout: 1501
      connect-timeout: 601
      thumb-image:
        width: 60
        height: 60
      tracker-list: 127.0.0.1:22122
      address: http://127.0.0.1:8888/

2.修改application-druid.yml文件中mysql地址

# 数据源配置
spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        druid:
            # 主库数据源
            master:
                url: jdbc:mysql://127.0.0.1:3306/blockchain?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                username: root
                password: root

三.PC端(blockchain-trace-pc)

1.安装依赖

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

2.修改连接区块链网络地址

main.js,修改为区块链网络所在服务器地址

Vue.prototype.$httpUrl = "http://localhost:8080/route";

3.启动项目

npm run dev

扩展

汽车零部件溯源,其目的是给实物追踪,使用户在使用整车过程中可以追踪到零部件的来源和所有流通节点,提升零部件问题追踪的效果。

如果本项目帮助到你,请给个免费的star

系统界面

见《汽车零部件溯源平台使用说明.pdf》

支持

使用过程中有任何问题,可以咨询我们,我们支持有偿安装服务。 +v:jiyuBC

空文件

简介

基于区块链的汽车零部件溯源系统,区块链,fabric ,汽车,零部件,溯源系统,linux 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/QFKB/block-chain.git
git@gitee.com:QFKB/block-chain.git
QFKB
block-chain
block-chain
master

搜索帮助