小程序中商家入駐提醒、新訂單提醒

              作者:辰風沐陽 閱讀:2655 發布時間:2021-11-19 上次更新:2021-11-21

              1. 應用場景


              用戶在小程序商城購買下單之后,商家如何能及時收到新訂單提醒,進行發貨處理呢?

              用戶在小程序中申請入駐商家后,平臺管理員如何能及時收到入駐申請通知,進行及時審核處理呢?

              常用的通知方式: 短信提醒、郵箱通知、公眾號模板消息,本文介紹如何在小程序中使用公眾號的模板消息發送消息通知

              查看公眾號模板消息文檔得出: 只要拿到用戶在公眾號下的 openid 就可以向用戶發送模板消息通知,所以我們只需要想辦法獲取到用戶在該公眾號的 openid 即可,總結: 通過公眾號的網頁授權拿到用戶的 openid,當用戶下單后給商家發送模板消息

              2. 準備材料


              已認證的服務號、appid 和 開發者密鑰、配置網頁授權域名、IP 白名單、已關注服務號

              申請服務號是需要企業資質的,對于個人開發者一般是沒有的,微信為了方便開發者調試,開放了測試號供個人開發者使用

              公眾號測試號登錄地址: https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

              小程序用個人的、還是認證的都可以,可使用 個人小程序 + 測試號 調試在小程序中給平臺管理員發送新訂單提醒消息通知

              3. 功能實現


              ThinkPHP v6.0.9 + EasyWechat 4.x

              在小程序項目中,一般 api 應用作為 小程序接口(本文示例中默認是 index 應用), admin 應用作為后臺管理系統

              在控制器的構造方法獲取公眾號操作對象,訂閱號沒有網頁授權的接口權限,但是可以使用公眾號測試號進行調試

              我們可以生成一個二維碼,用來做授權使用,掃碼二維碼跳轉到網頁授權方法入口, 我用的是下面的擴展包生成的二維碼

              1. composer require endroid/qr-code

              調起公眾號網頁授權有以下兩種授權方式

              snsapi_base: 靜默授權,無需用戶同意,只能獲取到用戶openid

              snsapi_userinfo: 高級授權,需要用戶同意,可以獲取到用戶openid、昵稱、頭像等信息

              在網頁授權回調地址中可以獲取到用戶的opened、昵稱、頭像等信息

              根據 openid 查詢用戶,數據庫中沒有該用戶則寫入數據庫,該用戶已存在則可以更新用戶信息或者不進行操作

              登錄公眾號測試號,新增一個用于測試的模板消息

              當有新訂單時,執行以下方法,查詢已授權的用戶,給這些用戶發送模板消息

              授權用戶微信中會收到一條消息通知,如下圖所示

              4. 本文示例代碼


              授權用戶表

              1. CREATE TABLE `user` (
              2. `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
              3. `openid` varchar(50) DEFAULT NULL,
              4. `nickname` varchar(120) DEFAULT NULL,
              5. `avatar` varchar(255) DEFAULT NULL COMMENT '頭像',
              6. PRIMARY KEY (`id`)
              7. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='授權用戶表';

              百度網盤: https://pan.baidu.com/s/1tTQrZae0aIlohWQx22vHJA , 提取碼: hgd2

              標簽: 微信小程序

              夜夜嗨AV一区二区三区_91精品国产91久久久久_亚洲精品无码鲁网午夜_一本大道久久东京热