概述
六天區(qū)塊鏈房屋租賃系統(tǒng),采用去中心化的方式實現(xiàn)了房屋的租賃功能。房東可在平臺上托管房屋,租客可在平臺上預(yù)訂房東的房屋并支付ETH為房租。在爭議期內(nèi),房東或租客都可提出爭議,由平臺處理。爭議期后,房東可提取房租ETH到自己的賬戶地址下。
項目結(jié)構(gòu)
├── config 配置文件目錄
├── src 代碼目錄
│ ├── assets 平臺圖片目錄
│ ├── blockchain 與以太坊交互相關(guān)
| └── Wallet.js 與metamask錢包交互
| └── Eth.js 與合約交互
│ ├── components 組件目錄
│ ├── contracts 租房合約目錄
│ ├── router 路由
│ ├── store 存儲
│ ├── utils 公共方法文件
│ ├── views 展示層
| └── arbitrator 仲裁
| └── home 首頁
| └── landlord 房東
| └── tanant 租客
合約部署
租房合約在contracts目錄下,其中:
- Owner.sol 為權(quán)限合約
- Strings.sol 為字符串處理合約
- Rental.sol 為租房主合約
可以使用truffle進(jìn)行部署,也可以直接在Remix上進(jìn)行調(diào)試和部署。
編譯器版本建議使用:soljson-v0.8.10
本人開發(fā)時,使用的是Ganache搭建的以太坊網(wǎng)絡(luò),在Metamask錢包中,配置了本地網(wǎng)絡(luò),在Remix中鏈接Metamask錢包,部署合約。
合約部署成功后,需要將合約地址更新到config目錄下的user.env.js文件中。

注意:如果對合約有修改,請將編譯后的abi文件更新到contracts目錄下的Rental.sol文件中。
運行項目
項目使用Vue開發(fā),前置安裝軟件:
- node,版本>= 6.0.0
- npm,版本>= 3.0.0
# 安裝依賴
npm install
# 啟動服務(wù),訪問地址: localhost:8080
npm run dev
# 編譯服務(wù)
npm run build
功能介紹
一、首頁
在首頁里,用戶可以根據(jù)地域篩選房源,也可以根據(jù)價格篩選。如下圖所示。

點擊房屋后可進(jìn)入到房屋的預(yù)訂頁面。預(yù)訂時,需要繳納對應(yīng)的費用。

二、房東后臺
房東后臺有“我的房屋”、“我的訂單”、“上架新房屋”三個模塊。
我的房屋
上架的訪問都在我的房屋中展示。

我的訂單
已出租的訂單都在我的訂單中展示。

租客預(yù)訂后,房東需要在我的訂單中進(jìn)行確認(rèn),可以“拒絕“,也可以”接受“。接受后訂單生效。
在仲裁期過了后,房東可以“提取房租”,在仲裁期內(nèi),如果有爭議,可以”申請仲裁“。
上架新房屋
上架新房屋可以繳納保證金,以此來證明房源的可靠性。房屋下架后保障金會返回給房東。

三、租戶后臺
租戶后臺有“我的房屋”和“我的訂單”兩個模塊。
我的房屋

我的訂單
在我的訂單里可以取消預(yù)訂,如果已預(yù)訂,并且在仲裁期內(nèi),可以申請仲裁。

四、仲裁后臺
只有合約的擁有者才能仲裁。