# Blockchain-FinalProject-SupplyChainFinancialPlatform **Repository Path**: aaron_chen_sh/Blockchain-FinalProject-SupplyChainFinancialPlatform ## Basic Information - **Project Name**: Blockchain-FinalProject-SupplyChainFinancialPlatform - **Description**: 基于区块链的供应链金融平台 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2024-12-28 - **Last Updated**: 2024-12-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于区块链的供应链金融平台 > 使用[FISCO BCOS](https://github.com/FISCO-BCOS/FISCO-BCOS)
- [基于区块链的供应链金融平台](#%e5%9f%ba%e4%ba%8e%e5%8c%ba%e5%9d%97%e9%93%be%e7%9a%84%e4%be%9b%e5%ba%94%e9%93%be%e9%87%91%e8%9e%8d%e5%b9%b3%e5%8f%b0) - [一、依赖环境](#%e4%b8%80%e4%be%9d%e8%b5%96%e7%8e%af%e5%a2%83) - [1. 链端与后端](#1-%e9%93%be%e7%ab%af%e4%b8%8e%e5%90%8e%e7%ab%af) - [2. 前端](#2-%e5%89%8d%e7%ab%af) - [二、文件说明](#%e4%ba%8c%e6%96%87%e4%bb%b6%e8%af%b4%e6%98%8e) - [三、运行](#%e4%b8%89%e8%bf%90%e8%a1%8c) - [四、补充](#%e5%9b%9b%e8%a1%a5%e5%85%85) ## 一、依赖环境 ### 1. 链端与后端 - Ubuntu 18.04 - [FISCO BCOS v2.1.0](https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html) - Python 3.6.3+ - [FISCO BCOS Python SDK](https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/sdk/python_sdk/install.html) - [Flask 1.1](http://flask.palletsprojects.com/en/1.1.x/) ### 2. 前端 - MacOS - Xcode ## 二、文件说明 - 链端:[Loan.sol](./Loan.sol) 合约中实现完整供应链金融平台逻辑 - 后端:[python-sdk/Loan_contract_invoke.py](./python-sdk/Loan_contract_invoke.py)实现对Loan合约调用的封装;[python-sdk/Loan_contract_flask_backend.py](./python-sdk/Loan_contract_flask_backend.py)运行服务端,接受外部请求并返回JSON数据 - 前端:[Loan_UI](./Loan_UI)中是一个完整的iOSApp工程 ## 三、运行 Ubuntu配置好依赖环境后,将 `Loan.sol` 部署到节点上,若成功部署,会得到 __合约地址__。你可以先在控制台中调用合约,产生一些实例以及发送交易。 用得到的合约地址替换 `python-sdk/Loan_contract_flask_backend.py`,`Line 9` 中的地址,将语句改为: ``` python loan_contract = Loan_Contract(address=your_new_address) ``` 注意保留双引号 假设在你的Ubuntu中,FISCO BCOS Python SDK路径为 `$FB-Python-SDK`。
将 `Loan.sol` 复制到你的 `$FB-Python-SDK/contracts` 中;
将 `python-sdk/Loan_contract_invoke.py` 和 `python-sdk/Loan_contract_flask_backend.py` 复制到你的 `$FB-Python-SDK` 中 此时运行 Loan_contract_flask_backend.py,服务端会在8383端口监听请求。
请求示例:
- 获取名称为A的公司的信息 ``` GET: {IP}:8383/get_company_inf/?cpName=A ``` - 获取所有公司A参与交易的单据 ``` GET: {IP}:8383/get_receipt/?cpName=A ``` - 获取银行bank_1向公司A提供的信用资产的数额 ``` GET: {IP}:8383/get_AmountOfCreditAsset_bank_GiveTo_TrustedCompany/?bName=bank_1&cpName=A ``` 在MacOS中打开 `Loan_UI/Loan_UI.xcworkspace`,在Xcode点击运行按钮即可使用前端界面。
注意修改 `Loan_UI/Loan_UI/SearchCompanyPage/SearchCompanyViewController.m`,`Loan_UI/Loan_UI/SearchReceiptPage/SearchReceiptViewController.m` 和 `Loan_UI/Loan_UI/SearchCreditAssetPage` 里的URL ## 四、补充 背景介绍、方案设计和功能测试等详见 `17343107_王明业.pdf`。
Demo见本目录下的.mp4视频。