基於微信雲開發-租房類微信小程序-帶管理員後臺

項目最新更新介紹請看這裏:https://www.cnblogs.com/LiangSenCheng/p/13040899.html

發現有問題?歡迎加我微信一起探討,或者直接提Issues
無法下載或者下載太慢?可以直接找我要安裝包;

聯繫方式在這裏的首頁:https://www.cnblogs.com/LiangSenCheng/p/11083714.html

  • [2020-06-10] 更新說明:

有反饋說,按照配置無法正常使用,刪除了原來我的雲環境ID,更改成了自動識別雲環境ID。使用時只需修改app.js裏初始化雲環境ID的代碼即可,後面的配置過程有說明。

項目簡介

本項目是2019年12月份左右的產物,花了大概一個月時間做完之後一直遺忘在了硬盤裏,這幾天纔想起來,故順便整理一下開源了。

項目雖然沒有做的很完整,但是整體的數據架構還算是可以的,可以很容易進行功能完善和添加新功能。裏面還有很多可以完善的地方,比如 公司資質 頁面可以做的更加精細一些,房子詳情頁 可以添加地圖之類的內容等。

原本是別人找我幫一家中介小店些的一個租房小程序,對方沒給設計圖、也沒有提具體需求,只是讓我憑感覺來做。由於沒有寫過這方面的小程序,也沒有很好的規劃頁面佈局,所以UI方面稍微差了點。在項目快完成的時候,介紹的那個人跑路了,所以就沒有後續了,想着與其直接刪除還不如開源分享給大家一起討論學習。

這個項目的經歷也讓我明白了一些事情,就是如果別人委託自己幫做項目的時候,不管項目的規模如何,在接受委託前一定要考慮清楚。特別是沒有付定金的這種委託,一定要謹慎,不要期望那種說你先做着後面再談錢,哪怕是跟你認識的人也是一樣要謹慎。還有就是不提明確需求的也不要輕易接受,這種人很容易中途變卦的。如果不想清楚的話,機會浪費時間又浪費精力。

本程序已經經過測試,拿來按照說明簡單配置就可以直接使用,界面可以自己進行修改。本人熱愛小程序,目前上線並維護的有兩個,後面看情況再找時間進行開源。
由於本人的能力有限,還有很多地方沒法完善,望指正!

目錄結構

|--|-- cloudfunctions 雲函數
|--|--|--|-- AdminManage
|--|--|--|-- Entrust
|--|--|--|-- HouseInfo
|--|--|--|-- InitInfo
|--|--|--|-- Manager
|--|--|--|-- PublishEntrust
|--|-- miniprogram 小程序頁面
|--|--|--Adminpackage 管理員後臺(分包)
|--|--|--|--略
|--|--|--CalculatorPackage 房貸計算器(分包)
|--|--|--|--略
|--|--|--Companypackage 主要頁面(分包)
|--|--|--|--略
|--|--|--dist 一些用到的組件,只用到了一小部分
|--|--|--pages 主包(主要是底部NaviBar頁面)
|--|--|--|--略
|--|--其他頁面略
|--README.md

功能說明

  1. 新房、租房、二手房
  2. 房貸計算器
  3. 公司介紹
  4. 公告
  5. 管理員

1-4 點都沒啥好說的,下面主要介紹一下 管理員後臺的實現

管理員後臺集成在了小程序端,入口隱藏在 個人中心 頁面 連續點擊5次 頭像名字那裏,就可以進入到管理員後臺,進入後臺的時候會在 雲函數AdminManage進行管理員鑑權:

  • 如果不是管理員,會跳轉到掃碼加入管理員;
  • 如果是管理員,那就跳轉到管理員後臺;

由於管理員數據庫設置了權限爲 所有用戶不可讀寫 ,因此鑑權是隻能在雲函數裏面進行,這是第一道防線;後面在管理員後臺的操作都是在雲函數完成的,即使是小程序被反編譯了,也不可能突破權限,安全性上還是經得住考驗的。

配置過程

  1. 直接下載源碼,源碼地址:https://github.com/lx164/house
    或者clone項目 git clone https://github.com/lx164/house.git

  2. 打開微信開發者工具,導入項目(導入的時候請選擇 APP 文件夾);

  3. 填寫APPID;

  4. 開通雲開發環境(請參考官方文檔);

  5. 新建以下數據庫集合,一行爲一個集合名(不要寫錯):

    AdminStator
    Collections
    CompanyInfo
    ContactList
    Entrust
    NewHouse
    Recommend
    RentingHouse
    SecondHouse
    TempCllection
    UserList

「注意」: 集合AdminStator權限設置爲所有用戶不可讀寫,其餘的集合權限修改爲:所有用戶可讀,僅創建者可讀寫

  1. 設置管理員信息,在 AdminStator 新建一條記錄,把以下的字段內容添加到該記錄中,下面()裏的內容根據你的實際情況填寫:
    "level":0,
    "avatarUrl":"(頭像)",
    "updatetime":"(2020/06/01 06:01:18)",
    "_openid":"(管理員的openid)",
    "name":"(管理員名字)",
    "phone":"(管理員手機)"
  1. 上傳 cloudfunctions 文件夾下所有的雲函數,上傳時選擇 上傳並部署:雲端安裝依賴

  2. 修改 app.js 大約第8行的代碼,如下:

    wx.cloud.init({
        env: '(填寫你自己雲環境的ID)',
        traceUser: true,
    })
  1. 編譯運行。

界面預覽

首頁業主委託我的房子列表房子詳情房子詳情-聯繫中介
發佈委託設置首頁推薦房貸計算器設置員工信息添加管理員添加管理員二維碼新管理員掃描二維碼房源管理發佈委託的狀態

結語

歡迎一起探討,如果你覺得還可以,您可以給我點一個start,或者讚賞我
zanshang

參考文檔

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章