微信小程序後端開發

一、現有:公司Portal Web系統。

新需求:開發微信小程序,能查詢 Portal 系統的數據。

新需求詳解:

入口:“magic公司”微信公衆號,點擊底部菜單“智慧服務”-“貨主在線門戶”,打開 “XXX在線服務“” 小程序。

用戶的微信號首次打開 打開 “XXX在線服務“”  小程序時(此微信號還未綁定Portal賬號的),彈出登錄頁的微信綁定/手機綁定頁面,需要微信快捷綁定 或 手機號綁定(手機號及短信驗證碼),提交時通過手機號找到對應的Portal賬號.

未能查找到有效的Portal賬號(賬號啓用,對應貨主啓用)則提示“此手機號未開通XXX在線服務,請聯業務員”,綁定失敗;否則綁定成功,直接顯示此貨主的運營首頁。

二、用戶賬號表user_customer

CREATE TABLE `user_customer` (
  `id` bigint(64) NOT NULL,
  `user_name` varchar(20) DEFAULT NULL COMMENT '用戶賬號',
  `company_id` bigint(64) DEFAULT NULL COMMENT '組織id',
  `password` varchar(50) DEFAULT NULL COMMENT '登錄密碼',
  `random_code` int(4) DEFAULT NULL COMMENT '密碼鹽值',
  `real_name` varchar(20) DEFAULT NULL COMMENT '用戶姓名',
  `status` tinyint(1) DEFAULT '1' COMMENT '狀態(0禁用 ,1啓用)',
  `type` int(1) DEFAULT '2' COMMENT '賬號類型(po用戶)',
  `phone` varchar(11) DEFAULT NULL COMMENT '手機號',
  `customer_id` bigint(64) DEFAULT NULL COMMENT '所屬貨主',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `create_user` bigint(64) DEFAULT NULL,
  `update_user` bigint(64) DEFAULT NULL,
  `deleted` tinyint(1) DEFAULT '0',
  `bind_wechat` tinyint(1) DEFAULT NULL COMMENT '微信小程序綁定(1-綁定,0-未綁定)',
  `open_id` varchar(100) DEFAULT NULL COMMENT '微信openId',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;

三、後端開發流程

1.提供微信小程序登錄接口。小程序拿code換取openId。

2.提供獲取用戶綁定手機號信息。小程序拿着sessionKey、encryptedData(加密)、iv,調後臺接口獲取手機號(解密)。

3.微信小程序綁定Portal賬號(user_customer,手機號和openId綁定)。

兩種方式:

第一種:微信快捷綁定,小程序獲取手機號;

第二種:輸入手機號、驗證碼,綁定。(這裏先跳過)

4.微信小程序portal登錄(參數傳openId)

5.微信小程序portal賬號解綁(參數傳openId)

6. 接口1-4網關不攔截(不需要校驗token及權限),需要配置網關不攔截。

 

四、參考資料

1.微信公衆平臺 申請賬號

https://mp.weixin.qq.com

2.微信小程序登錄時序

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 

3.參考開發

https://github.com/binarywang/weixin-java-miniapp-demo 

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