|
|
@ -1,10 +1,11 @@ |
|
|
<script> |
|
|
<script> |
|
|
import { FetchLibcodeBycode } from '@/api/user' |
|
|
|
|
|
|
|
|
import { FetchLibcodeBycode,FetchInitFondsList } from '@/api/user' |
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
globalData: { |
|
|
globalData: { |
|
|
appid: '', |
|
|
appid: '', |
|
|
libcode: '', // 全局libcode,所有页面 getApp().globalData.libcode 访问 |
|
|
|
|
|
|
|
|
libcode: '', // 全局libcode |
|
|
|
|
|
fondsName: '' // 新增:馆藏名称,全局使用 |
|
|
}, |
|
|
}, |
|
|
onLaunch() { |
|
|
onLaunch() { |
|
|
this.initAppIdAndLibcode() |
|
|
this.initAppIdAndLibcode() |
|
|
@ -24,18 +25,25 @@ export default { |
|
|
if(cacheLibcode){ |
|
|
if(cacheLibcode){ |
|
|
this.globalData.libcode = cacheLibcode |
|
|
this.globalData.libcode = cacheLibcode |
|
|
console.log('使用缓存libcode:', cacheLibcode) |
|
|
console.log('使用缓存libcode:', cacheLibcode) |
|
|
|
|
|
// ✅ 缓存有libcode,直接去拿 fondsName |
|
|
|
|
|
await this.getFondsName(cacheLibcode) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 2、调用接口 FetchLibcodeBycode,传入appid获取libcode |
|
|
// 2、调用接口 FetchLibcodeBycode,传入appid获取libcode |
|
|
const res = await FetchLibcodeBycode({ |
|
|
const res = await FetchLibcodeBycode({ |
|
|
code: 'vx_mini_appId', |
|
|
code: 'vx_mini_appId', |
|
|
value: appid |
|
|
value: appid |
|
|
}) |
|
|
|
|
|
|
|
|
}) |
|
|
if(res.code === 200 && res.data){ |
|
|
if(res.code === 200 && res.data){ |
|
|
const libcode = res.data |
|
|
const libcode = res.data |
|
|
this.globalData.libcode = libcode |
|
|
this.globalData.libcode = libcode |
|
|
uni.setStorageSync('GLOBAL_LIBCODE', libcode) |
|
|
uni.setStorageSync('GLOBAL_LIBCODE', libcode) |
|
|
console.log('接口获取全局libcode成功:', libcode) |
|
|
console.log('接口获取全局libcode成功:', libcode) |
|
|
|
|
|
|
|
|
|
|
|
// ✅拿到libcode之后,调用FetchInitFondsList获取馆藏名称 |
|
|
|
|
|
await this.getFondsName(libcode) |
|
|
|
|
|
|
|
|
}else{ |
|
|
}else{ |
|
|
console.error('FetchLibcodeBycode 获取libcode失败', res) |
|
|
console.error('FetchLibcodeBycode 获取libcode失败', res) |
|
|
} |
|
|
} |
|
|
@ -44,6 +52,36 @@ export default { |
|
|
} |
|
|
} |
|
|
// #endif |
|
|
// #endif |
|
|
}, |
|
|
}, |
|
|
|
|
|
/** |
|
|
|
|
|
* 根据libcode获取馆藏名称 fondsName |
|
|
|
|
|
*/ |
|
|
|
|
|
async getFondsName(libcode) { |
|
|
|
|
|
try { |
|
|
|
|
|
// 优先读缓存 |
|
|
|
|
|
let cacheFondsName = uni.getStorageSync('GLOBAL_FONDS_NAME') |
|
|
|
|
|
if (cacheFondsName) { |
|
|
|
|
|
this.globalData.fondsName = cacheFondsName |
|
|
|
|
|
console.log('使用缓存 fondsName:', cacheFondsName) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
// 调用接口,传入libcode |
|
|
|
|
|
const fondRes = await FetchInitFondsList({ |
|
|
|
|
|
'fondsNo': libcode |
|
|
|
|
|
}) |
|
|
|
|
|
// console.log('FetchInitFondsList返回结果', fondRes) |
|
|
|
|
|
if (fondRes.code === 200 && fondRes.data) { |
|
|
|
|
|
const fondsName = fondRes.data.fondsName || '' |
|
|
|
|
|
this.globalData.fondsName = fondsName |
|
|
|
|
|
uni.setStorageSync('GLOBAL_FONDS_NAME', fondsName) |
|
|
|
|
|
console.log('获取馆藏名称成功:', fondsName) |
|
|
|
|
|
} else { |
|
|
|
|
|
console.error('FetchInitFondsList 获取馆藏失败', fondRes) |
|
|
|
|
|
} |
|
|
|
|
|
} catch (err) { |
|
|
|
|
|
console.error('getFondsName异常', err) |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
// 退出登录 待用 |
|
|
// 退出登录 待用 |
|
|
// logout(){ |
|
|
// logout(){ |
|
|
// // 1. 清除登录缓存 |
|
|
// // 1. 清除登录缓存 |
|
|
@ -53,15 +91,20 @@ export default { |
|
|
|
|
|
|
|
|
// // 2.清除libcode缓存,强制重新拉取 |
|
|
// // 2.清除libcode缓存,强制重新拉取 |
|
|
// uni.removeStorageSync('GLOBAL_LIBCODE') |
|
|
// uni.removeStorageSync('GLOBAL_LIBCODE') |
|
|
|
|
|
// uni.removeStorageSync('GLOBAL_FONDS_NAME') // 也要清空馆藏缓存 |
|
|
// getApp().globalData.libcode = '' |
|
|
// getApp().globalData.libcode = '' |
|
|
|
|
|
// getApp().globalData.fondsName = '' |
|
|
|
|
|
|
|
|
// // 跳转登录页 |
|
|
// // 跳转登录页 |
|
|
// uni.reLaunch({url:'/pages/login/login'}) |
|
|
// uni.reLaunch({url:'/pages/login/login'}) |
|
|
// } |
|
|
// } |
|
|
|
|
|
|
|
|
// 刷新libcode 待用 |
|
|
// 刷新libcode 待用 |
|
|
// refreshLibcode(){ |
|
|
// refreshLibcode(){ |
|
|
// uni.removeStorageSync('GLOBAL_LIBCODE') |
|
|
// uni.removeStorageSync('GLOBAL_LIBCODE') |
|
|
|
|
|
// uni.removeStorageSync('GLOBAL_FONDS_NAME') // 清空馆藏 |
|
|
// getApp().globalData.libcode = '' |
|
|
// getApp().globalData.libcode = '' |
|
|
|
|
|
// getApp().globalData.fondsName = '' |
|
|
// uni.showToast({title:"已重置libcode,将重新获取",icon:"none"}) |
|
|
// uni.showToast({title:"已重置libcode,将重新获取",icon:"none"}) |
|
|
// // 重新执行App.vue里面的初始化方法 |
|
|
// // 重新执行App.vue里面的初始化方法 |
|
|
// getApp().$options.methods.initAppIdAndLibcode() |
|
|
// getApp().$options.methods.initAppIdAndLibcode() |
|
|
|