UCToo是一套支持云原生開發技術的實現案例,實現了微信第三方平臺、小程序云開發、騰訊云云開發等新一代去中心化SaaS產品核心特性的開發框架。
# 概述
本項目UCToo是一套支持云原生開發技術的實現案例,更多最佳實踐持續征集中(將于正在建設的 www.uctoo.com 官網提供)。本項目采用云開發技術,實現了支持多商戶多應用的SaaS平臺主要特性,可幫助用戶快捷的實現微信應用的個性化定制功能,可以作為快速實現SaaS平臺、產業互聯網等項目的起始項目。
## 主要特性
本項目的設計目標是提供開發人員,可以主要通過定義應用模塊的數據結構,即可生成應用模塊的管理后臺、API接口以及默認移動應用,使得無論掌握何種技術棧的后臺開發人員還是前端開發人員,都可以采用本項目快速的開發多端兼容的數字化系統和應用,并可進行靈活的二次開發。
1. 先進技術,主流應用,開源開放。
2. 模塊可拆卸,系統只保留核心的功能,其余功能通過擴展模塊來實現。
3. 支持云原生應用開發,支持多商戶多應用管理SaaS平臺特性,可在多數云平臺環境獨立安裝部署,支持云原生部署。
4. 支持微信小程序云開發特性。
5. 實現了微信第三方平臺對接的中控服務器邏輯,并可靈活自定義與微信公眾平臺、微信開放平臺的各種業務交互,由于第三方平臺開發方式是微信交易組件、批量云開發等的依賴基礎,因此建議微信相關應用開發都采用第三方平臺方式。
6. 實現了微信第三方平臺應用模塊化開發,各種增值應用都可以獨立安裝及卸載,支持模塊商業化分發和部署。
7. 已集成微信第三方平臺批量代云開發,支持去中心化部署商戶Web端管理平臺和小程序端應用模板。
8. catchadmin可實現商戶Web端管理平臺低代碼快速開發,UCToo低代碼模塊可實現小程序、APP多端低代碼快速開發。
## 產品架構
1. 系統融合了眾多優秀開源項目,采納通用技術,每周持續集成業界最佳實踐。UCToo開發團隊擴展了微信應用開發相關功能,對接了微信公眾平臺和開放平臺的所有接口,使其允許在任何類型的微信應用項目中使用。
2. 采用catchadmin、easywechat開發UCToo 2.0版本,相關資料請參考https://www.catchadmin.com/ 、https://www.easywechat.com
3. 使用了[uctoo/think-easywechat SDK](https://gitee.com/UCT/think-easywechat) 集成catchadmin (TP6+VUE) 和 easywechat 4,支持微信第三方平臺、微信小程序云開發、微信支付服務商等特性
4. 第三方平臺配置信息保存在 wechatopen 表。授權到第三方平臺的公眾號/小程序等帳號信息保存在 wechatopen_applet表,wechatopen 表的參數用來初始化 easywechat SDK,wechatopen_applet表的參數用來作為第三方平臺代公眾號/小程序實現業務的帳號信息
```diff
- UCToo RC1技術選型采用了前后端分離的catchadmin框架,
同時結合騰訊云CloudBase云原生開發平臺的特性,
可實現SaaS應用實例模板去中心化部署,
使得本項目符合Level 4 級SaaS產品的主要特性
(Level 4級SaaS產品定義請參考本項目開發文檔 http://www.hmoore.net/doc_uctoo/uctoo_dev )
UCToo RC1 主要用于開發者預覽和技術驗證,請謹慎用于生產。
```
## 安裝教程
### 運行環境依賴
PHP >= 7.1.0
Mysql >= 5.5.0 (需支持innodb引擎)
PDO PHP Extension
MBstring PHP Extension
CURL PHP Extension
ZIP Extension
Composer
### 分步驟安裝
1. 安裝catchadmin,請參考 https://www.catchadmin.com/ 相關文檔
2. 本項目后端PHP源碼地址 https://gitee.com/uctoo/uctoo , 前端VUE源碼地址 https://gitee.com/UCT/uctoo-app-server-vue
3. 此項目依賴于以下擴展https://gitee.com/UCT/think-easywechat ,在項目根目錄運行命令 composer require uctoo/think-easywechat:dev-master 安裝
4. 在微信開放平臺open.weixin.qq.com 注冊認證開發者帳號,創建第三方平臺,配置第三方平臺參數,其中授權事件接收URL 填寫為 https://域名/wechatopen/authevent ,消息與事件接收URL 填寫為
```php
https://域名/wechatopen/eventmessage/appid/$APPID$
```
4. 在wechatopen插件第三方平臺菜單,添加微信第三方平臺配置信息,僅需填寫appid、appsecret、encodingAesKey、token 4個參數
5. 在微信開放平臺open.weixin.qq.com 提交測試第三方平臺,通過測試后提交全網發布
6. 授權公眾號、小程序到此第三方平臺,進行增值應用開發。
### 云原生安裝
1. 可在 https://www.uctoo.com 注冊開發者帳號,登錄管理后臺,通過云開發功能模塊,即可采用云原生方式開通和部署一套獨立的UCToo運行實例。
### docker安裝
可參考uctoo-docker項目[https://gitee.com/UCT/uctoo-docker](https://gitee.com/UCT/uctoo-docker)
## 使用手冊
具體請參考 http://www.hmoore.net/doc_uctoo/manual
## 開發說明
具體請參考開源版開發手冊 http://www.hmoore.net/doc_uctoo/uctoo_dev 及 本開源項目示例
## 問題反饋
開發者交流QQ群138048128,984748053,102324323(已滿)
更多信息請關注UCToo微信第三方運營平臺[https://www.uctoo.com](https://www.uctoo.com/)
## 參考資料:
CNCF 官網 https://www.cncf.io/
項目 https://github.com/cncf
catchadmin 文檔 https://www.catchadmin.com/docs/
演示 https://www.catchadmin.com/
ThinkPHP 文檔 https://www.thinkphp.cn
easywechat 文檔 https://www.easywechat.com/
微信開放平臺 https://open.weixin.qq.com/
微信公眾平臺 https://mp.weixin.qq.com/
微信支付 https://pay.weixin.qq.com
騰訊云開發 https://cloud.tencent.com/product/tcb
UCToo 使用文檔 http://www.hmoore.net/doc_uctoo/manual
開發文檔 http://www.hmoore.net/doc_uctoo/uctoo_dev
UCT UI文檔 https://uct-1257264070.cos-website.ap-guangzhou.myqcloud.com
演示 https://www.uctoo.com
UCTOO開源組織 官網 https://www.uctoo.org/ 籌備中
## 版權信息
UCToo遵循Apache2開源協議發布,并提供免費使用。
本項目包含的第三方源碼和二進制文件之版權信息另行標注。
版權所有Copyright ? 2014-2021 by UCToo (https://www.uctoo.com)
All rights reserved