Merge remote-tracking branch 'origin/huangzhenbao-admin'

This commit is contained in:
not-like-juvenile
2026-03-18 17:14:05 +08:00
676 changed files with 25158 additions and 46646 deletions

View File

@@ -58,11 +58,23 @@ export async function ensureUserProfile(sessionUser: UTSJSONObject): Promise<Use
// 用户不存在,创建新用户资料
// 权威字段映射ak_users.auth_id = auth.uid(),业务主键 id 由数据库自动生成
const newUserData = new UTSJSONObject()
newUserData.set('id', userId)
newUserData.set('auth_id', userId)
newUserData.set('email', email)
newUserData.set('username', email.split('@')[0] ?? 'user') // 默认用户名为邮箱前缀
newUserData.set('role', 'consumer')
// 获取注册时带入的 meta_data 角色信息,在这个端(商家端/管理端)找不到则默认为 merchant
let userRole = 'merchant'
const metadata = sessionUser.getJSON('user_metadata') ?? sessionUser.getJSON('raw_user_meta_data')
if (metadata != null) {
const metaRole = metadata.getString('user_role')
if (metaRole != null && metaRole.trim() !== '') {
userRole = metaRole
}
}
newUserData.set('role', userRole)
const insertRes = await supabase.from('ak_users')
.insert(newUserData)
.select('*', {})
@@ -91,7 +103,7 @@ export async function ensureUserProfile(sessionUser: UTSJSONObject): Promise<Use
bio: newUser.getString('bio'),
avatar_url: newUser.getString('avatar_url'),
preferred_language: newUser.getString('preferred_language'),
role: newUser.getString('role') ?? 'consumer',
role: newUser.getString('role') ?? userRole,
created_at: newUser.getString('created_at'),
updated_at: newUser.getString('updated_at')
} as UserProfile