├── .gitattributes
├── .idea
├── codeStyles
│ └── codeStyleConfig.xml
├── hyperledger-simple-app-master.iml
├── misc.xml
├── modules.xml
└── workspace.xml
├── .travis.yml
├── README.md
├── basic-network
├── .env
├── README.md
├── config
│ ├── channel.tx
│ └── genesis.block
├── configtx.yaml
├── crypto-config.yaml
├── crypto-config
│ ├── ordererOrganizations
│ │ └── example.com
│ │ │ ├── ca
│ │ │ ├── a0606a4a860a1e31c90a23788da6f3b6b74925ed0d23061af4899409ba46ae6a_sk
│ │ │ └── ca.example.com-cert.pem
│ │ │ ├── msp
│ │ │ ├── admincerts
│ │ │ │ └── Admin@example.com-cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca.example.com-cert.pem
│ │ │ └── tlscacerts
│ │ │ │ └── tlsca.example.com-cert.pem
│ │ │ ├── orderers
│ │ │ └── orderer.example.com
│ │ │ │ ├── msp
│ │ │ │ ├── admincerts
│ │ │ │ │ └── Admin@example.com-cert.pem
│ │ │ │ ├── cacerts
│ │ │ │ │ └── ca.example.com-cert.pem
│ │ │ │ ├── keystore
│ │ │ │ │ └── 4d2f776c0fef8eac3f460a7c3558dc7859c4fe458e262e674a6c23f242ea33d1_sk
│ │ │ │ ├── signcerts
│ │ │ │ │ └── orderer.example.com-cert.pem
│ │ │ │ └── tlscacerts
│ │ │ │ │ └── tlsca.example.com-cert.pem
│ │ │ │ └── tls
│ │ │ │ ├── ca.crt
│ │ │ │ ├── server.crt
│ │ │ │ └── server.key
│ │ │ ├── tlsca
│ │ │ ├── 8d2186556c85d515e737d0c0da8d0d7672785b685cb503bcb95e53dcc279fba7_sk
│ │ │ └── tlsca.example.com-cert.pem
│ │ │ └── users
│ │ │ └── Admin@example.com
│ │ │ ├── msp
│ │ │ ├── admincerts
│ │ │ │ └── Admin@example.com-cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca.example.com-cert.pem
│ │ │ ├── keystore
│ │ │ │ └── 1deeab5433fa6e5f045eb763109d6165268fba153211af1281f00d45f54b1022_sk
│ │ │ ├── signcerts
│ │ │ │ └── Admin@example.com-cert.pem
│ │ │ └── tlscacerts
│ │ │ │ └── tlsca.example.com-cert.pem
│ │ │ └── tls
│ │ │ ├── ca.crt
│ │ │ ├── server.crt
│ │ │ └── server.key
│ └── peerOrganizations
│ │ └── org1.example.com
│ │ ├── ca
│ │ ├── 4239aa0dcd76daeeb8ba0cda701851d14504d31aad1b2ddddbac6a57365e497c_sk
│ │ ├── ca.org1.example.com-cert.pem
│ │ └── org1.example.com-cert.pem
│ │ ├── msp
│ │ ├── admincerts
│ │ │ └── Admin@org1.example.com-cert.pem
│ │ ├── cacerts
│ │ │ └── ca.org1.example.com-cert.pem
│ │ └── tlscacerts
│ │ │ └── tlsca.org1.example.com-cert.pem
│ │ ├── peers
│ │ └── peer0.org1.example.com
│ │ │ ├── msp
│ │ │ ├── admincerts
│ │ │ │ └── Admin@org1.example.com-cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca.org1.example.com-cert.pem
│ │ │ ├── keystore
│ │ │ │ └── 46be1d569fe68f33e517c9e0072a0ccfbfb42727480fb8c8d0223af321a7893d_sk
│ │ │ ├── signcerts
│ │ │ │ └── peer0.org1.example.com-cert.pem
│ │ │ └── tlscacerts
│ │ │ │ └── tlsca.org1.example.com-cert.pem
│ │ │ └── tls
│ │ │ ├── ca.crt
│ │ │ ├── server.crt
│ │ │ └── server.key
│ │ ├── tlsca
│ │ ├── ed3fd82393e95fc2c475afc113c8d2c591f745d1babc4d6d9cce0a1acc168acb_sk
│ │ └── tlsca.org1.example.com-cert.pem
│ │ └── users
│ │ ├── Admin@org1.example.com
│ │ ├── msp
│ │ │ ├── admincerts
│ │ │ │ └── Admin@org1.example.com-cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca.org1.example.com-cert.pem
│ │ │ ├── keystore
│ │ │ │ └── cd96d5260ad4757551ed4a5a991e62130f8008a0bf996e4e4b84cd097a747fec_sk
│ │ │ ├── signcerts
│ │ │ │ └── Admin@org1.example.com-cert.pem
│ │ │ └── tlscacerts
│ │ │ │ └── tlsca.org1.example.com-cert.pem
│ │ └── tls
│ │ │ ├── ca.crt
│ │ │ ├── server.crt
│ │ │ └── server.key
│ │ └── User1@org1.example.com
│ │ ├── msp
│ │ ├── admincerts
│ │ │ └── User1@org1.example.com-cert.pem
│ │ ├── cacerts
│ │ │ └── ca.org1.example.com-cert.pem
│ │ ├── keystore
│ │ │ └── c75bd6911aca808941c3557ee7c97e90f3952e379497dc55eb903f31b50abc83_sk
│ │ ├── signcerts
│ │ │ └── User1@org1.example.com-cert.pem
│ │ └── tlscacerts
│ │ │ └── tlsca.org1.example.com-cert.pem
│ │ └── tls
│ │ ├── ca.crt
│ │ ├── server.crt
│ │ └── server.key
├── docker-compose.yml
├── generate.sh
├── init.sh
├── start.sh
├── stop.sh
└── teardown.sh
├── chaincode
└── source-app
│ └── source-app.go
└── source-app
├── controller.js
├── package-lock.json
├── package.json
├── public
├── css
│ ├── business_search.css
│ ├── business_search.jpg
│ ├── detail.css
│ ├── detail.jpg
│ ├── form.css
│ ├── index.css
│ ├── index.jpg
│ ├── search.css
│ ├── search.jpg
│ └── transit_form.jpg
├── images
│ ├── batching.jpg
│ ├── business.png
│ ├── part_of_food.jpg
│ ├── submit.png
│ ├── transit.png
│ └── user-food.jpg
└── js
│ └── app.js
├── registerAdmin.js
├── registerUser.js
├── routes.js
├── server.js
├── startFabric.sh
└── views
├── business_search.ejs
├── form.ejs
├── index.ejs
├── part_form.ejs
├── part_search.ejs
├── search.ejs
└── transit_form.ejs
/.gitattributes:
--------------------------------------------------------------------------------
1 | *.ejs linguist-language=javascript
2 |
--------------------------------------------------------------------------------
/.idea/codeStyles/codeStyleConfig.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
出发时间 | 18 |到达时间 | 19 |储存or运输 | 20 |出发地 | 21 |目的地 | 22 |销售商 | 23 |存储时间 | 24 |运送方式 | 25 |物流公司名称 | 26 |费用 | 27 |
---|---|---|---|---|---|---|---|---|---|
{{transit.LogDepartureTm}} | 30 |{{transit.LogArrivalTm}} | 31 |{{transit.LogMission}} | 32 |{{transit.LogDeparturePl}} | 33 |{{transit.LogDest}} | 34 |{{transit.LogToSeller}} | 35 |{{transit.LogStorageTm}} | 36 |{{transit.LogMOT}} | 37 |{{transit.LogCopName}} | 38 |{{transit.LogCost}} | 39 |
生产查询
14 |加工查询
18 |运输查询
22 |茶叶生产
26 |茶叶加工
30 |茶叶运输
34 |食品ID | 18 |食品名称 | 19 |
---|---|
{{part.IngID}} | 22 |{{part.IngName}} | 23 |
茶叶名称 | 18 |茶叶规格 | 19 |茶叶生产日期 | 20 |茶叶保质期 | 21 |茶叶批次号 | 22 |茶叶生产许可证编号 | 23 |茶叶生产商名称 | 24 |茶叶生产价格 | 25 |茶叶生产所在地 | 26 |
---|---|---|---|---|---|---|---|---|
{{query_source.FoodName}} | 29 |{{query_source.FoodSpec}} | 30 |{{query_source.FoodMFGDate}} | 31 |{{query_source.FoodEXPDate}} | 32 |{{query_source.FoodLOT}} | 33 |{{query_source.FoodQSID}} | 34 |{{query_source.FoodMFRSName}} | 35 |{{query_source.FoodProPrice}} | 36 |{{query_source.FoodProPlace}} | 37 |