支付宝下单和其他细节优化

This commit is contained in:
2026-05-21 15:10:02 +08:00
parent 39bf8548df
commit 1637ee5bbc
33 changed files with 1511 additions and 232 deletions
+42
View File
@@ -7,6 +7,8 @@ import { fetchIndustryTree, fetchJobCategoryTree, fetchRegionTree } from '@/api/
import type { IndustryItem, JobCategoryItem, RegionItem } from '@/api/common'
import { fetchJobIntention, saveJobIntention } from '@/api/jobs'
import type { JobIntention } from '@/api/jobs'
import { fetchUserInfo } from '@/api/auth'
import type { UserInfo } from '@/api/auth'
/** 职位列表页缓存数据(从详情页返回时恢复用) */
export interface JobListCache {
@@ -79,6 +81,18 @@ export interface RootState {
* 由 loadJobIntention action 从接口加载,saveJobIntention action 保存后更新
*/
jobIntention: JobIntention
/**
* 用户个人信息 — 登录后从 /user/manage/info 接口获取
* 多个页面可直接从 store 读取
*/
userInfo: UserInfo | null
/**
* 设置弹窗 — 控制显示/隐藏及初始 Tab
*/
showSettings: boolean
settingsTab: string
}
export default createStore<RootState>({
@@ -100,6 +114,9 @@ export default createStore<RootState>({
industryIds: [],
employmentType: 0,
},
userInfo: null,
showSettings: false,
settingsTab: 'account',
},
getters: {
getAppName: (state) => state.appName,
@@ -151,6 +168,15 @@ export default createStore<RootState>({
employmentType: data.employmentType ?? 0,
}
},
SET_USER_INFO(state, data: UserInfo | null) {
state.userInfo = data
},
SET_SHOW_SETTINGS(state, show: boolean) {
state.showSettings = show
},
SET_SETTINGS_TAB(state, tab: string) {
state.settingsTab = tab
},
},
actions: {
updateAppName({ commit }, name: string) {
@@ -201,6 +227,7 @@ export default createStore<RootState>({
commit('SET_AUTHENTICATED', false)
commit('SET_SHOW_LOGIN', false)
commit('SET_LOGIN_REDIRECT', '')
commit('SET_USER_INFO', null)
// 清除 Jobs 页面缓存数据
commit('SET_JOB_LIST_CACHE', null)
commit('SET_JOB_INTENTION', {
@@ -263,6 +290,21 @@ export default createStore<RootState>({
}
},
/**
* 加载用户个人信息到 store
* 登录状态下调用,多个页面可直接读取 store.state.userInfo
*/
async loadUserInfo({ commit }) {
try {
const res = await fetchUserInfo()
if (res.code === '0' && res.data) {
commit('SET_USER_INFO', res.data)
}
} catch (err) {
console.error('[store] 加载用户信息失败', err)
}
},
/**
* 保存求职意向:已登录时调接口保存并更新 store,未登录时仅更新 store
* @param data 求职意向数据