支付
This commit is contained in:
@@ -41,15 +41,37 @@ export const useUserStore = defineStore('user', () => {
|
||||
loading.value = true
|
||||
const response = await api.post('/auth/login', credentials)
|
||||
|
||||
if (response.data.token) {
|
||||
if (response.data.success && response.data.token) {
|
||||
setToken(response.data.token)
|
||||
setUser(response.data.user)
|
||||
startStatusCheck() // 登录成功后开始状态检查
|
||||
ElMessage.success(response.data.message || '登录成功')
|
||||
return { success: true, data: response.data }
|
||||
} else if (response.data.needPayment) {
|
||||
// 用户需要支付激活,不显示错误消息,由前端页面处理
|
||||
return {
|
||||
success: false,
|
||||
needPayment: true,
|
||||
userId: response.data.userId,
|
||||
message: response.data.message
|
||||
}
|
||||
} else {
|
||||
const message = response.data.message || '登录失败'
|
||||
ElMessage.error(message)
|
||||
return { success: false, message }
|
||||
}
|
||||
} catch (error) {
|
||||
const message = error.response?.data?.message || '登录失败'
|
||||
const errorData = error.response?.data
|
||||
if (errorData?.needPayment) {
|
||||
// 处理403状态码返回的需要支付情况
|
||||
return {
|
||||
success: false,
|
||||
needPayment: true,
|
||||
userId: errorData.userId,
|
||||
message: errorData.message
|
||||
}
|
||||
}
|
||||
const message = errorData?.message || '登录失败'
|
||||
ElMessage.error(message)
|
||||
return { success: false, message }
|
||||
} finally {
|
||||
@@ -63,11 +85,28 @@ export const useUserStore = defineStore('user', () => {
|
||||
loading.value = true
|
||||
const response = await api.post('/auth/register', userData)
|
||||
|
||||
if (response.data.token) {
|
||||
setToken(response.data.token)
|
||||
setUser(response.data.user)
|
||||
ElMessage.success(response.data.message || '注册成功')
|
||||
return { success: true, data: response.data }
|
||||
if (response.data.success) {
|
||||
// 检查是否需要支付
|
||||
if (response.data.needPayment) {
|
||||
// 需要支付的情况,返回成功状态和支付相关信息
|
||||
return {
|
||||
success: true,
|
||||
needPayment: true,
|
||||
token: response.data.token,
|
||||
user: response.data.user,
|
||||
message: response.data.message
|
||||
}
|
||||
} else {
|
||||
// 直接注册成功的情况
|
||||
setToken(response.data.token)
|
||||
setUser(response.data.user)
|
||||
ElMessage.success(response.data.message || '注册成功')
|
||||
return { success: true, data: response.data }
|
||||
}
|
||||
} else {
|
||||
const message = response.data.message || '注册失败'
|
||||
ElMessage.error(message)
|
||||
return { success: false, message }
|
||||
}
|
||||
} catch (error) {
|
||||
const message = error.response?.data?.message || '注册失败'
|
||||
|
||||
Reference in New Issue
Block a user