feat(auth): 添加微信小程序登录支持
- 新增 wechat_users 表迁移和 SeaORM Entity - 实现微信登录 Service(code→openid→绑定状态查询) - 实现手机号绑定 Service(创建/关联 user + 签发 JWT) - 添加公开路由 POST /auth/wechat/login 和 /auth/wechat/bind-phone - 新增 WechatConfig 到 AppConfig(appid/secret 通过环境变量配置) - 添加 reqwest 依赖用于调用微信 jscode2session API
This commit is contained in:
@@ -5,7 +5,7 @@ use erp_core::error::AppResult;
|
||||
use erp_core::events::EventBus;
|
||||
use erp_core::module::ErpModule;
|
||||
|
||||
use crate::handler::{auth_handler, org_handler, role_handler, user_handler};
|
||||
use crate::handler::{auth_handler, org_handler, role_handler, user_handler, wechat_handler};
|
||||
|
||||
/// Auth module implementing the `ErpModule` trait.
|
||||
///
|
||||
@@ -30,6 +30,14 @@ impl AuthModule {
|
||||
Router::new()
|
||||
.route("/auth/login", axum::routing::post(auth_handler::login))
|
||||
.route("/auth/refresh", axum::routing::post(auth_handler::refresh))
|
||||
.route(
|
||||
"/auth/wechat/login",
|
||||
axum::routing::post(wechat_handler::wechat_login),
|
||||
)
|
||||
.route(
|
||||
"/auth/wechat/bind-phone",
|
||||
axum::routing::post(wechat_handler::wechat_bind_phone),
|
||||
)
|
||||
}
|
||||
|
||||
/// Build protected (authenticated) routes for the auth module.
|
||||
|
||||
Reference in New Issue
Block a user