import { defineStore } from 'pinia' import { ref } from 'vue' import { clearPageSetting, getPageSetting } from '@/api/sys/pageSetting' // 平台默认名称(与 core/config.js 的 appName 保持一致) const DEFAULT_NAME = '非结构化数据透明加密平台' export const usePageSettingStore = defineStore('pageSetting', () => { const pageSetting = ref({ name: DEFAULT_NAME, logo: '', isLoaded: false }) // 初始化(布局/登录页挂载时调用):读取失败时静默走默认值 const initPageSetting = async () => { try { const res = await getPageSetting() if (res.code === 100000) { pageSetting.value = { name: res.data.name || DEFAULT_NAME, logo: res.data.logo || '', isLoaded: true } } } catch { // 占位接口阶段静默失败 } pageSetting.value.isLoaded = true } const setPageSetting = val => { pageSetting.value = val } const resetPageSetting = async () => { const res = await clearPageSetting() if (res.code === 100000) { pageSetting.value = { name: DEFAULT_NAME, logo: '', isLoaded: true } } return pageSetting.value } return { pageSetting, setPageSetting, initPageSetting, resetPageSetting } })