// import { CodeMap } from "@/store/modules/permission"; import { RouteComponent } from "vue-router"; import { getCurrentEnv, getCurrentEnvBig } from "./fns"; enum Bucket { "miscimg01" = "miscimg01", "mp-operation" = "mp-operation", } interface SetMicro { server: () => void; /** * 设置子应用ticket * @param value */ ticket: (value: string) => unknown; routeInfo: (value: unknown[]) => unknown; appInfo: (value: { id: number; appcode: number; cloned: number, name:string }) => unknown; // btnPermission: (value: CodeMap) => unknown; } interface Config { env: string; appName: string; appSystemName: string; appCode: string; appVersion: string; cloned: string; moduleConfig: { miscimg01: string; "mp-operation": string; }; server: string; defaultLang: string; isTopModuleV2: boolean; isRedirectFirst: boolean; ALL_VIEWS: Record Promise>; ALL_VIEWS_TS: Record Promise>; busReloadPage: { emit: () => void }; setMicro: SetMicro; } interface HostAppInfo{ ticket: string name:string id?: number; appcode?: number; cloned?: number } const server = { localhost: 'https://g4ms.test.hbmonitor.com/', test: `http://g4ms.${getCurrentEnv()}.hbmonitor.com/`, gray: 'https://g4ms.admin.internal.taqu.cn/', online: 'https://g4ms.admin.internal.taqu.cn/', } // 存放宿主应用相关信息 export let hostAppInfo:HostAppInfo = { ticket: '', name: '' } export let configVal: Config = { env: "online", appName: "fe-hb-pro-admin", appSystemName: "新海豹业务后台", appCode: "0", appVersion: "1.0.0", cloned: "1", // 模块参数 moduleConfig: { [Bucket.miscimg01]: "https://miscimg01.jiaoliuqu.com/", [Bucket["mp-operation"]]: "https://mp-operation.jiaoliuqu.com/", }, // 系统参数 server: server[getCurrentEnvBig()], defaultLang: "zh_cn", isTopModuleV2: true, // 布局中,顶级模块(如「首页」)是v2版本,即不再使用etcd的顶部模块,菜单中一级菜单即为顶级模块 isRedirectFirst: false, // 是否重定向到第一个有权限的菜单,默认关闭 ALL_VIEWS: {}, ALL_VIEWS_TS: {}, busReloadPage: { emit: () => null }, setMicro: { server: () => "", ticket: (value: string) => { hostAppInfo.ticket = value console.log('hostAppInfo.ticket', hostAppInfo.ticket); }, routeInfo: (value: unknown[]) => value, appInfo: (value: { id: number; appcode: number; cloned: number, name: string }) => { hostAppInfo = { ...hostAppInfo, ...value, } console.log('hostAppInfo', hostAppInfo); }, // btnPermission: (value: CodeMap) => value, }, }; export const setConfigVal = (val: Partial) => { configVal = { ...configVal, ...val, }; }; export const getConfigVal = (key: K): Config[K] => { return configVal[key]; }; export const getKey = ( val: | "TICKET_KEY" | "USER_KEY" | "LANG_KEY" | "INIT_URL_KEY" | "APPS_KEY" | "CURRENT_APP_KEY" ) => { const name = configVal.appName.toUpperCase(); if (val === "TICKET_KEY") { return `TICKET_APP_${name}`; } if (val === "USER_KEY") return `USER_APP_${name}`; if (val === "APPS_KEY") return `APPS_${name}`; if (val === "CURRENT_APP_KEY") return `CURRENT_APP_${name}`; if (val === "LANG_KEY") return `LANG_KEY_${name}`; if (val === "INIT_URL_KEY") { return `INIT_URL_APP_${name}`; } return ""; }; export const auth = { login: "java_sso_server/v1/auth/login", // 登录 logout: "java_sso_server/v1/auth/logout", // 登出 access: "java_sso_server/v1/bizesource/getAllTopTag", // 顶级菜单 subAccess: "java_sso_server/v1/bizesource/getResourceTreeByTopTag", // 子菜单 userMenus: "java_sso_server/v1/bizesource/getTopTagWithResourcesTree", // 顶级菜单 + 子菜单(用于菜单搜索) codeMap: "java_sso_server/v1/bizesource/getHasPmsResourceCode", // 获取有权限的菜单code map,接口文档:https://api.admin.internal.taqu.cn/docs/api/api-1ekibabvm8p41 menuList: "java_sso_server/v1/resource/resourceTreeList", }; export const other = { apps: "appconfig_system/v1/appName/getAppNames", // 获取app下拉选项 pv: "mp-operation-log/v1/logData/addPV", // 页面pv };