feat(小程序): 修复运行时与登录链路
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
import Taro from '@tarojs/taro'
|
||||
|
||||
import {
|
||||
clearLoginSession,
|
||||
getCurrentUserId as getStoredCurrentUserId,
|
||||
getToken as getStoredToken,
|
||||
saveLoginSession,
|
||||
} from './session'
|
||||
import { request } from './api'
|
||||
|
||||
export interface WechatLoginPayload {
|
||||
@@ -25,40 +29,19 @@ export interface Parent {
|
||||
status: number
|
||||
}
|
||||
|
||||
// 微信登录
|
||||
export async function wechatLogin(data: WechatLoginPayload): Promise<LoginSession> {
|
||||
const session = await request<LoginSession>('/auth/login', {
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
|
||||
Taro.setStorageSync('token', session.access_token)
|
||||
Taro.setStorageSync('token_type', session.token_type)
|
||||
Taro.setStorageSync('user_id', session.user_id)
|
||||
Taro.setStorageSync('expires_in', session.expires_in)
|
||||
|
||||
saveLoginSession(session)
|
||||
return session
|
||||
}
|
||||
|
||||
// 创建家长
|
||||
export async function createParent(data: {
|
||||
openid: string
|
||||
unionid?: string
|
||||
nickname?: string
|
||||
avatar_url?: string
|
||||
}): Promise<Parent> {
|
||||
return request<Parent>('/parents', {
|
||||
method: 'POST',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
// 获取家长信息
|
||||
export async function getParent(userId: number): Promise<Parent> {
|
||||
return request<Parent>(`/parents/${userId}`)
|
||||
}
|
||||
|
||||
// 更新家长信息
|
||||
export async function updateParent(
|
||||
userId: number,
|
||||
data: { nickname?: string; avatar_url?: string; phone?: string }
|
||||
@@ -69,20 +52,14 @@ export async function updateParent(
|
||||
})
|
||||
}
|
||||
|
||||
// 获取 token
|
||||
export function getToken(): string {
|
||||
return Taro.getStorageSync('token')
|
||||
return getStoredToken()
|
||||
}
|
||||
|
||||
// 清除 token
|
||||
export function clearToken(): void {
|
||||
Taro.removeStorageSync('token')
|
||||
Taro.removeStorageSync('token_type')
|
||||
Taro.removeStorageSync('user_id')
|
||||
Taro.removeStorageSync('expires_in')
|
||||
clearLoginSession()
|
||||
}
|
||||
|
||||
// 获取当前用户ID
|
||||
export function getCurrentUserId(): number {
|
||||
return Taro.getStorageSync('user_id') || 0
|
||||
return getStoredCurrentUserId()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user