diff --git a/src/api/core/coreInfo.ts b/src/api/core/coreInfo.ts new file mode 100644 index 00000000..7bbff548 --- /dev/null +++ b/src/api/core/coreInfo.ts @@ -0,0 +1,86 @@ +import { CACHE_SESSION_CRYPTO_API } from '@/constants/cache-keys-constants'; +import { sessionGet } from '@/utils/cache-session-utils'; +import { request } from '@/plugins/http-fetch'; + +/** + * 查询核心网列表 + * @param query 查询参数 + * @returns object + */ +export function listCoreInfo(query: Record) { + return request({ + url: '/core/info/list', + method: 'GET', + params: query, + timeout: 60_000, + }); +} + +/** + * 查询核心网列表全部无分页 + * @param query 查询参数 + * @returns object + */ +export function listAllCoreInfo(query: Record) { + return request({ + url: '/core/info/list/all', + method: 'GET', + params: query, + timeout: 60_000, + }); +} + +/** + * 查询核心网信息详细 + * @param id 信息ID + * @returns object + */ +export function getCoreInfo(id: string | number) { + return request({ + url: `/core/info/${id}`, + method: 'GET', + }); +} + +/** + * 核心网信息新增 + * @param data 核心网对象 + * @returns object + */ +export function addCoreInfo(data: Record) { + return request({ + url: `/core/info`, + method: 'POST', + data: data, + crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', + timeout: 30_000, + }); +} + +/** + * 核心网信息修改 + * @param data 核心网对象 + * @returns object + */ +export function updateCoreInfo(data: Record) { + return request({ + url: `/core/info`, + method: 'PUT', + data: data, + crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', + timeout: 30_000, + }); +} + +/** + * 核心网信息删除 + * @param id 信息ID + * @returns object + */ +export function delCoreInfo(id: string | number) { + return request({ + url: `/core/info/${id}`, + method: 'DELETE', + timeout: 60_000, + }); +} diff --git a/src/api/cbc/cbe.ts b/src/api/neData/cbc.ts similarity index 91% rename from src/api/cbc/cbe.ts rename to src/api/neData/cbc.ts index 07df3200..71b54556 100644 --- a/src/api/cbc/cbe.ts +++ b/src/api/neData/cbc.ts @@ -1,7 +1,5 @@ import { request } from '@/plugins/http-fetch'; - - /** * CBC列表 * @param query 查询参数 @@ -16,8 +14,6 @@ export function listCBC(query: Record) { }); } - - /** * CBC签约用户新增 * @param data 签约对象 @@ -32,10 +28,7 @@ export function addCBC(data: Record) { }); } - - - -export function updateCBCStatus(data:any) { +export function updateCBCStatus(data: any) { return request({ url: `/neData/cbc/message/${data.id}/${data.status}?neId=${data.neId}`, method: 'PUT', @@ -43,8 +36,7 @@ export function updateCBCStatus(data:any) { }); } - -export function updateCBC(data:any) { +export function updateCBC(data: any) { return request({ url: `/neData/cbc/message/${data.id}?neId=${data.neId}`, method: 'PUT', @@ -53,8 +45,6 @@ export function updateCBC(data:any) { }); } - - /** * CBC删除 * @param data 签约对象 @@ -67,9 +57,3 @@ export function delCBC(neId: string, id: string) { timeout: 180_000, }); } - - - - - - diff --git a/src/constants/app-constants.ts b/src/constants/app-constants.ts index 40f1082a..47a94d20 100644 --- a/src/constants/app-constants.ts +++ b/src/constants/app-constants.ts @@ -6,3 +6,12 @@ export const APP_REQUEST_HEADER_VERSION = 'X-App-Version'; /**应用-请求数据-密钥 */ export const APP_DATA_API_KEY = 'T9ox2DCzpLfJIPzkH9pKhsOTMOEMJcFv'; + +/**应用-服务类型 单核心网 */ +export const APP_SERVER_TYPE_O = 'oc'; + +/**应用-服务类型 多核心网 */ +export const APP_SERVER_TYPE_M = 'mc'; + +/**应用-服务类型 租户核心网 */ +export const APP_SERVER_TYPE_T = 'tc'; diff --git a/src/constants/cache-keys-constants.ts b/src/constants/cache-keys-constants.ts index b09b2ffb..09b86b01 100644 --- a/src/constants/cache-keys-constants.ts +++ b/src/constants/cache-keys-constants.ts @@ -4,6 +4,9 @@ export const CACHE_SESSION_CRYPTO_API = 'cache:session:cryptoApi'; /**会话缓存-网络请求 */ export const CACHE_SESSION_FATCH = 'cache:session:fatch'; +/**会话缓存-当前选中核心网 */ +export const CACHE_SESSION_CORE = 'cache:session:core'; + /**本地缓存-布局设置 */ export const CACHE_LOCAL_PROCONFIG = 'cache:local:proConfig'; diff --git a/src/layouts/BasicLayout.vue b/src/layouts/BasicLayout.vue index 0353d81b..50baaeda 100644 --- a/src/layouts/BasicLayout.vue +++ b/src/layouts/BasicLayout.vue @@ -5,7 +5,8 @@ import { clearMenuItem, MenuDataItem, } from 'antdv-pro-layout'; -import RightContent from './components/RightContent.vue'; +import CoreSelect from './components/CoreSelect.vue'; +import HeaderContentRight from './components/HeaderContentRight/HeaderContentRight.vue'; import Tabs from './components/Tabs.vue'; import GlobalMask from '@/components/GlobalMask/index.vue'; import ForcePasswdChange from '@/components/ForcePasswdChange/index.vue'; @@ -21,7 +22,7 @@ import { import { useRouter } from 'vue-router'; import useLayoutStore from '@/store/modules/layout'; import useAppStore from '@/store/modules/app'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useRouterStore from '@/store/modules/router'; import useTabsStore from '@/store/modules/tabs'; import useI18n from '@/hooks/useI18n'; @@ -29,12 +30,13 @@ import useAlarmStore from '@/store/modules/alarm'; import { getServerTime } from '@/api'; import { MENU_PATH_INLINE } from '@/constants/menu-constants'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; +import { APP_SERVER_TYPE_M } from '@/constants/app-constants'; import { getTimezoneOffset, parseDateUTCToStr } from '@/utils/date-utils'; import { parseUrlPath } from '@/plugins/file-static-url'; const { proConfig, waterMarkContent } = useLayoutStore(); const { t, currentLocale } = useI18n(); const routerStore = useRouterStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); const tabsStore = useTabsStore(); const appStore = useAppStore(); const router = useRouter(); @@ -68,19 +70,6 @@ watch( ); // 动态路由添加到菜单面板 -// const rootRoute = router.getRoutes().find(r => r.name === 'Root'); -// if (rootRoute) { -// const children = routerStore.setRootRouterData(rootRoute.children); -// const buildRouterData = routerStore.buildRouterData; -// if (buildRouterData.length > 0) { -// rootRoute.children = children.concat(buildRouterData); -// } else { -// rootRoute.children = children; -// } -// } -// -// const { menuData } = getMenuData(clearMenuItem(router.getRoutes())); -// const menuData = computed(() => { const rootRoute = router.getRoutes().find(r => r.name === 'Root'); if (rootRoute) { @@ -92,9 +81,9 @@ const menuData = computed(() => { rootRoute.children = children; } } - const neTypes = neListStore.getNeSelectOtions.map(v => v.value); + const neTypes = neStore.getNeSelectOtions.map(v => v.value); let routes = clearMenuItem(router.getRoutes()); - routes = routerStore.clearMenuItemByNeList(routes, neTypes); + routes = routerStore.clearMenuItemByNeList(routes, '12345678', neTypes); const { menuData } = getMenuData(routes); return menuData; }); @@ -151,10 +140,13 @@ tabsStore.clear(); // LOGO地址 const logoUrl = computed(() => { - let url = - appStore.logoType === 'brand' - ? parseUrlPath(appStore.filePathBrand) - : parseUrlPath(appStore.filePathIcon); + let url = parseUrlPath(appStore.filePathIcon); + if (appStore.logoType === 'brand') { + url = parseUrlPath(appStore.filePathBrand); + } + if (layoutState.collapsed) { + url = parseUrlPath(appStore.filePathIcon); + } if (url.indexOf('{language}') === -1) { return url; @@ -294,13 +286,17 @@ onUnmounted(() => { :alt="appStore.appName" :title="appStore.appName" /> -

+

{{ appStore.appName }}

- @@ -1089,7 +1090,7 @@ onMounted(() => { >
- {{ `${item.value || ' '}` }} + {{ `${item.value }}
diff --git a/src/views/ne/neFile/index.vue b/src/views/ne/neFile/index.vue index 077cf4fc..6d8c0b49 100644 --- a/src/views/ne/neFile/index.vue +++ b/src/views/ne/neFile/index.vue @@ -7,13 +7,13 @@ import { Modal, message } from 'ant-design-vue/es'; import { parseDateToStr } from '@/utils/date-utils'; import { getNeFile, listNeFiles } from '@/api/tool/neFile'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import ViewDrawer from './components/ViewDrawer.vue'; import saveAs from 'file-saver'; import { useRoute } from 'vue-router'; import { parseSizeFromFile } from '@/utils/parse-utils'; -const neListStore = useNeListStore(); +const neStore = useNeStore(); const { t } = useI18n(); const route = useRoute(); @@ -300,7 +300,7 @@ onMounted(() => { {{ t('views.logManage.neFile.neType') }}:  ) { } }) .finally(() => { - neListStore.fnNelistRefresh(); + neStore.fnNelistRefresh(); }); } @@ -308,7 +308,7 @@ function fnRecordDelete(id: string) { } }); // 刷新缓存 - neListStore.fnNelistRefresh(); + neStore.fnNelistRefresh(); } else { message.error({ content: `${res.msg}`, @@ -404,7 +404,7 @@ function fnGetList(pageNum?: number) { }) .finally(() => { // 刷新缓存的网元信息 - neListStore.fnNelistRefresh(); + neStore.fnNelistRefresh(); }); } @@ -435,7 +435,7 @@ onMounted(() => { diff --git a/src/views/ne/neLicense/index.vue b/src/views/ne/neLicense/index.vue index 635bdeea..3e30f6f0 100644 --- a/src/views/ne/neLicense/index.vue +++ b/src/views/ne/neLicense/index.vue @@ -4,7 +4,7 @@ import { PageContainer } from 'antdv-pro-layout'; import { Modal, TableColumnsType, message } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import useDictStore from '@/store/modules/dict'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; @@ -12,7 +12,7 @@ import { listNeLicense, stateNeLicense } from '@/api/ne/neLicense'; import { parseDateToStr } from '@/utils/date-utils'; const { t } = useI18n(); const { getDict } = useDictStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); const EditModal = defineAsyncComponent( () => import('./components/EditModal.vue') ); @@ -348,7 +348,7 @@ onMounted(() => { diff --git a/src/views/ne/neQuickSetup/components/NeInfoConfig.vue b/src/views/ne/neQuickSetup/components/NeInfoConfig.vue index 9959e903..33f61a35 100644 --- a/src/views/ne/neQuickSetup/components/NeInfoConfig.vue +++ b/src/views/ne/neQuickSetup/components/NeInfoConfig.vue @@ -8,9 +8,9 @@ import { regExpIPv4, regExpIPv6 } from '@/utils/regular-utils'; import { fnRestStepState, fnToStepName, stepState } from '../hooks/useStep'; import useI18n from '@/hooks/useI18n'; import useDictStore from '@/store/modules/dict'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; const { getDict } = useDictStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); const { t } = useI18n(); /**字典数据 */ @@ -201,7 +201,7 @@ function fnModalOk() { duration: 3, }); - neListStore.fnNelistRefresh(); // 刷新缓存的网元信息 + neStore.fnNelistRefresh(); // 刷新缓存的网元信息 stepState.neInfo = from; // 保存网元信息 modalState.stepNext = true; // 开启下一步 } else { diff --git a/src/views/ne/neQuickSetup/hooks/usePara5G.ts b/src/views/ne/neQuickSetup/hooks/usePara5G.ts index 4abcbefb..58f81fee 100644 --- a/src/views/ne/neQuickSetup/hooks/usePara5G.ts +++ b/src/views/ne/neQuickSetup/hooks/usePara5G.ts @@ -1,8 +1,8 @@ import { reactive, toRaw } from 'vue'; import { getPara5GFilee, savePara5GFile, updateNeInfo } from '@/api/ne/neInfo'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**对象信息信息状态类型 */ type StateType = { @@ -38,7 +38,7 @@ export function usePara5G() { /**载入数据*/ function fnReloadData() { state.confirmLoading = true; - Promise.all([getPara5GFilee(), neListStore.fnNelistRefresh()]).then( + Promise.all([getPara5GFilee(), neStore.fnNelistRefresh()]).then( resArr => { // 已保存的配置 if (resArr[0].code === RESULT_CODE_SUCCESS) { diff --git a/src/views/ne/neSoftware/index.vue b/src/views/ne/neSoftware/index.vue index d7020a29..2cb6e101 100644 --- a/src/views/ne/neSoftware/index.vue +++ b/src/views/ne/neSoftware/index.vue @@ -4,14 +4,14 @@ import { PageContainer } from 'antdv-pro-layout'; import { Modal, TableColumnsType, message } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { listNeSoftware, delNeSoftware } from '@/api/ne/neSoftware'; import { parseDateToStr } from '@/utils/date-utils'; import { downloadFile } from '@/api/tool/file'; import { saveAs } from 'file-saver'; -const neListStore = useNeListStore(); +const neStore = useNeStore(); const { t } = useI18n(); // 异步加载组件 @@ -351,7 +351,7 @@ onMounted(() => { diff --git a/src/views/ne/neVersion/index.vue b/src/views/ne/neVersion/index.vue index 8242cf65..c23e074f 100644 --- a/src/views/ne/neVersion/index.vue +++ b/src/views/ne/neVersion/index.vue @@ -10,7 +10,7 @@ import { } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { listNeVersion, operateNeVersion } from '@/api/ne/neVersion'; import { parseDateToStr } from '@/utils/date-utils'; @@ -18,7 +18,7 @@ import useI18n from '@/hooks/useI18n'; import useDictStore from '@/store/modules/dict'; import useMaskStore from '@/store/modules/mask'; const maskStore = useMaskStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); const { t } = useI18n(); const { getDict } = useDictStore(); @@ -463,7 +463,7 @@ onMounted(() => { diff --git a/src/views/neData/backup-data/index.vue b/src/views/neData/backup-data/index.vue index a94d64b5..574b4bf7 100644 --- a/src/views/neData/backup-data/index.vue +++ b/src/views/neData/backup-data/index.vue @@ -8,13 +8,13 @@ import BackupModal from '@/views/ne/neConfigBackup/components/BackupModal.vue'; import { parseDateToStr } from '@/utils/date-utils'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import useI18n from '@/hooks/useI18n'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import saveAs from 'file-saver'; import { delFile, getFile, listFile } from '@/api/tool/file'; import { parseSizeFromFile } from '@/utils/parse-utils'; import { pushBackupFTP } from '@/api/neData/backup'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**文件来源 */ let sourceState = reactive({ @@ -308,7 +308,7 @@ function fnSyncFileToFTP(fileName: string) { onMounted(() => { sourceState.list = sourceState.list.filter(item => { if (!item.neType) return true; - return neListStore.fnHasNe([item.neType]); + return neStore.fnHasNe([item.neType]); }); }); diff --git a/src/views/neData/base-online/index.vue b/src/views/neData/base-online/index.vue index 10bc0152..8a6a19d2 100644 --- a/src/views/neData/base-online/index.vue +++ b/src/views/neData/base-online/index.vue @@ -6,11 +6,11 @@ import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { useRoute } from 'vue-router'; import { listAMFNblist } from '@/api/neData/amf'; import { listMMENblist } from '@/api/neData/mme'; -const neListStore = useNeListStore(); +const neStore = useNeStore(); const route = useRoute(); const { t } = useI18n(); @@ -264,7 +264,7 @@ function fnGetList(pageNum?: number) { onMounted(() => { // 获取网元网元列表 - for (const item of neListStore.getNeCascaderOptions) { + for (const item of neStore.getNeCascaderOptions) { // 过滤不可用的网元 if (!['AMF', 'MME'].includes(item.value)) continue; const v = JSON.parse(JSON.stringify(item)); diff --git a/src/views/neData/base-station/list.vue b/src/views/neData/base-station/list.vue index abd347fd..58a036fd 100644 --- a/src/views/neData/base-station/list.vue +++ b/src/views/neData/base-station/list.vue @@ -12,7 +12,7 @@ import { SizeType } from 'ant-design-vue/es/config-provider'; import { ColumnsType } from 'ant-design-vue/es/table'; import { ProModal } from 'antdv-pro-modal'; import UploadModal from '@/components/UploadModal/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; const { t, currentLocale } = useI18n(); import { @@ -32,7 +32,7 @@ import saveAs from 'file-saver'; import { readSheet, writeSheet } from '@/utils/execl-utils'; import { useRoute } from 'vue-router'; const route = useRoute(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); // 异步加载组件 const HistoryModal = defineAsyncComponent( @@ -657,7 +657,7 @@ async function fnModalImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (['AMF', 'MME'].includes(item.value)) { neCascaderOptions.value.push(JSON.parse(JSON.stringify(item))); } diff --git a/src/views/neData/base-station/topology.vue b/src/views/neData/base-station/topology.vue index ac492657..ca2fd972 100644 --- a/src/views/neData/base-station/topology.vue +++ b/src/views/neData/base-station/topology.vue @@ -5,7 +5,7 @@ import { listAMFNbStatelist } from '@/api/neData/amf'; import { parseBasePath } from '@/plugins/file-static-url'; import { edgeLineAnimateState } from '@/views/monitor/topologyBuild/hooks/registerEdge'; import { nodeImageAnimateState } from '@/views/monitor/topologyBuild/hooks/registerNode'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { stateNeInfo } from '@/api/ne/neInfo'; @@ -13,7 +13,7 @@ import { parseDateToStr } from '@/utils/date-utils'; import { useFullscreen } from '@vueuse/core'; import { listMMENbStatelist } from '@/api/neData/mme'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**图DOM节点实例对象 */ const graphG6Dom = useTemplateRef('graphG6Dom'); @@ -380,7 +380,7 @@ async function fnGraphDataBase() { edges: [], }; // 添加基础网元 - for (const item of neListStore.getNeCascaderOptions) { + for (const item of neStore.getNeCascaderOptions) { if ('OMC' === item.value) { if (item.children?.length === 0) continue; // 是否存在OMC保证唯一 diff --git a/src/views/cbc/cbe/index.vue b/src/views/neData/cbc-cbe/index.vue similarity index 98% rename from src/views/cbc/cbe/index.vue rename to src/views/neData/cbc-cbe/index.vue index c7b86c33..367db75e 100644 --- a/src/views/cbc/cbe/index.vue +++ b/src/views/neData/cbc-cbe/index.vue @@ -2,12 +2,11 @@ import { reactive, ref, onMounted, toRaw } from 'vue'; import { PageContainer } from 'antdv-pro-layout'; import { ProModal } from 'antdv-pro-modal'; -import { message, Modal, Form, notification } from 'ant-design-vue/es'; +import { message, Modal, Form } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; -import TableColumnsDnd from '@/components/TableColumnsDnd/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { @@ -16,9 +15,9 @@ import { listCBC, updateCBCStatus, updateCBC, -} from '@/api/cbc/cbe'; -import { parseDateToStr, parseDuration } from '@/utils/date-utils'; - +} from '@/api/neData/cbc'; +import { parseDateToStr } from '@/utils/date-utils'; +const neStore = useNeStore(); const { t } = useI18n(); /**网元参数 */ @@ -832,33 +831,29 @@ function pwsTypeChange(value: any) { onMounted(() => { // 获取网元网元列表 - useNeListStore() - .fnNelist() - .then(res => { - if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.data)) { - if (res.data.length > 0) { - let arr: Record[] = []; - res.data.forEach(i => { - if (i.neType === 'CBC') { - arr.push({ value: i.neId, label: i.neName }); - } - }); - neOtions.value = arr; - if (arr.length > 0) { - queryParams.neId = arr[0].value; - } - } - } else { - message.warning({ - content: t('common.noData'), - duration: 2, - }); - } - }) - .finally(() => { - // 获取列表数据 - fnGetList(); + neStore.neCascaderOptions.forEach(item => { + if (item.value === 'CBC') { + neOtions.value = JSON.parse(JSON.stringify(item.children)); + } + }); + if (neOtions.value.length === 0) { + message.warning({ + content: t('common.noData'), + duration: 2, }); + return; + } + if (neOtions.value.length > 0) { + queryParams.neId = neOtions.value[0].value; + } else { + message.warning({ + content: t('common.noData'), + duration: 2, + }); + } + + // 获取列表数据 + fnGetList(); }); diff --git a/src/views/neData/ims-sub/index.vue b/src/views/neData/ims-sub/index.vue index 7280b693..68dee928 100644 --- a/src/views/neData/ims-sub/index.vue +++ b/src/views/neData/ims-sub/index.vue @@ -5,12 +5,12 @@ import { message } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { listIMSSessionList } from '@/api/neData/ims'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -173,7 +173,7 @@ function fnGetList(pageNum?: number) { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'IMS') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/pcf-sub/index.vue b/src/views/neData/pcf-sub/index.vue index 3ab67cd7..70a1f9c0 100644 --- a/src/views/neData/pcf-sub/index.vue +++ b/src/views/neData/pcf-sub/index.vue @@ -6,7 +6,7 @@ import { message, Modal, Form, TableColumnsType } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import UploadModal from '@/components/UploadModal/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { addPCFRule, @@ -21,7 +21,7 @@ import { uploadFileToNE } from '@/api/tool/file'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -693,7 +693,7 @@ function fnModalDownloadImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'PCF') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/smf-sub/index.vue b/src/views/neData/smf-sub/index.vue index f85baf68..baae7c4f 100644 --- a/src/views/neData/smf-sub/index.vue +++ b/src/views/neData/smf-sub/index.vue @@ -7,11 +7,11 @@ import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; import { listSMFSubList } from '@/api/neData/smf'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -247,7 +247,7 @@ function fnGetList(pageNum?: number) { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'SMF') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/udm-auth/index.vue b/src/views/neData/udm-auth/index.vue index 86c457ea..9458b43e 100644 --- a/src/views/neData/udm-auth/index.vue +++ b/src/views/neData/udm-auth/index.vue @@ -8,7 +8,7 @@ import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; import UploadModal from '@/components/UploadModal/index.vue'; import TableColumnsDnd from '@/components/TableColumnsDnd/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; @@ -27,7 +27,7 @@ import { import { uploadFile } from '@/api/tool/file'; import { getNeViewFile } from '@/api/tool/neFile'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -739,7 +739,7 @@ function fnModalDownloadImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'UDM') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/udm-sub/index.vue b/src/views/neData/udm-sub/index.vue index 232c5142..2bad9e41 100644 --- a/src/views/neData/udm-sub/index.vue +++ b/src/views/neData/udm-sub/index.vue @@ -8,7 +8,7 @@ import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; import UploadModal from '@/components/UploadModal/index.vue'; import TableColumnsDnd from '@/components/TableColumnsDnd/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import saveAs from 'file-saver'; @@ -27,7 +27,7 @@ import { import { uploadFile } from '@/api/tool/file'; import { getNeViewFile } from '@/api/tool/neFile'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -1130,7 +1130,7 @@ async function fnModalDownloadImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'UDM') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/udm-voip/index.vue b/src/views/neData/udm-voip/index.vue index 98ddb348..0043ae98 100644 --- a/src/views/neData/udm-voip/index.vue +++ b/src/views/neData/udm-voip/index.vue @@ -22,14 +22,14 @@ import { listUDMVOIP, resetUDMVOIP, } from '@/api/neData/udm_voip'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; import { uploadFile } from '@/api/tool/file'; import { getNeViewFile } from '@/api/tool/neFile'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -579,7 +579,7 @@ function fnModalDownloadImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'UDM') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neData/udm-volte/index.vue b/src/views/neData/udm-volte/index.vue index 0c96e32e..0ca4521e 100644 --- a/src/views/neData/udm-volte/index.vue +++ b/src/views/neData/udm-volte/index.vue @@ -12,7 +12,7 @@ import { import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import UploadModal from '@/components/UploadModal/index.vue'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { saveAs } from 'file-saver'; @@ -29,7 +29,7 @@ import { resetUDMVolteIMS, } from '@/api/neData/udm_volte_ims'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**字典数据 */ let dict: { /**Tag标签类型 0=VoIP, 1=VoLTE */ @@ -658,7 +658,7 @@ function fnModalDownloadImportTemplate() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'UDM') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/neUser/n3iwf/index.vue b/src/views/neUser/n3iwf/index.vue index 5b9e559b..2b0b04b2 100644 --- a/src/views/neUser/n3iwf/index.vue +++ b/src/views/neUser/n3iwf/index.vue @@ -6,11 +6,11 @@ import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; import { listN3IWFSubList } from '@/api/neUser/n3iwf'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; const { t } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**网元参数 */ let neOtions = ref[]>([]); @@ -104,7 +104,7 @@ function fnGetList() { onMounted(() => { // 获取网元网元列表 - neListStore.neCascaderOptions.forEach(item => { + neStore.neCascaderOptions.forEach(item => { if (item.value === 'N3IWF') { neOtions.value = JSON.parse(JSON.stringify(item.children)); } diff --git a/src/views/perfManage/customTarget/index.vue b/src/views/perfManage/customTarget/index.vue index 21978aa3..53404393 100644 --- a/src/views/perfManage/customTarget/index.vue +++ b/src/views/perfManage/customTarget/index.vue @@ -8,7 +8,7 @@ import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import useI18n from '@/hooks/useI18n'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { addCustom, delCustom, @@ -19,7 +19,7 @@ import { getKPITitle } from '@/api/perfManage/goldTarget'; import useDictStore from '@/store/modules/dict'; const { t, currentLocale } = useI18n(); const { getDict } = useDictStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); /**字典数据 */ let dict: { /**状态 */ @@ -461,7 +461,7 @@ function fnChangeUnit(value: any) { let neCascaderOptions = ref[]>([]); onMounted(() => { // 过滤不可用的网元 - neCascaderOptions.value = neListStore.getNeCascaderOptions.filter( + neCascaderOptions.value = neStore.getNeCascaderOptions.filter( (item: any) => { return !['OMC', 'NSSF', 'NEF', 'NRF', 'LMF', 'N3IWF'].includes( item.value diff --git a/src/views/perfManage/goldTarget/index.vue b/src/views/perfManage/goldTarget/index.vue index eb46a7a6..ead6b2ff 100644 --- a/src/views/perfManage/goldTarget/index.vue +++ b/src/views/perfManage/goldTarget/index.vue @@ -35,7 +35,7 @@ import { RESULT_CODE_ERROR, RESULT_CODE_SUCCESS, } from '@/constants/result-constants'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useI18n from '@/hooks/useI18n'; import { getKPITitle, listKPIData } from '@/api/perfManage/goldTarget'; import { parseDateToStr } from '@/utils/date-utils'; @@ -47,7 +47,7 @@ import { useRoute } from 'vue-router'; import { LineOutlined } from '@ant-design/icons-vue'; import useLayoutStore from '@/store/modules/layout'; const layoutStore = useLayoutStore(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); const route = useRoute(); const { t, currentLocale } = useI18n(); const ws = new WS(); @@ -825,7 +825,7 @@ watch( onMounted(() => { // 目前支持的 AMF AUSF MME MOCNGW NSSF SMF UDM UPF PCF // 获取网元网元列表 - neCascaderOptions.value = neListStore.getNeCascaderOptions.filter( + neCascaderOptions.value = neStore.getNeCascaderOptions.filter( (item: any) => { // 过滤不可用的网元 return !['OMC', 'NSSF', 'NEF', 'NRF', 'LMF', 'N3IWF'].includes( diff --git a/src/views/perfManage/kpi-title/index.vue b/src/views/perfManage/kpi-title/index.vue index b97424dc..8e832866 100644 --- a/src/views/perfManage/kpi-title/index.vue +++ b/src/views/perfManage/kpi-title/index.vue @@ -6,7 +6,7 @@ import { message, Form, Modal } from 'ant-design-vue/es'; import { SizeType } from 'ant-design-vue/es/config-provider'; import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'; import { ColumnsType } from 'ant-design-vue/es/table'; -import useNeInfoStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useDictStore from '@/store/modules/dict'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import useI18n from '@/hooks/useI18n'; @@ -18,7 +18,7 @@ import { } from '@/api/perfManage/kpi-title'; const { t } = useI18n(); const { getDict } = useDictStore(); -const { getNeSelectOtions } = useNeInfoStore(); +const neStore = useNeStore(); /**字典数据 */ let dict: { @@ -390,7 +390,7 @@ onMounted(() => { @@ -577,7 +577,7 @@ onMounted(() => { > { }); typeArr = Array.from(new Set(typeArr)); // 过滤不可用的网元 - neCascaderOptions.value = neListStore.getNeCascaderOptions.filter( + neCascaderOptions.value = neStore.getNeCascaderOptions.filter( (item: any) => { return typeArr.includes(item.value); } diff --git a/src/views/perfManage/kpiKeyTarget/index.vue b/src/views/perfManage/kpiKeyTarget/index.vue index a2f6e5df..7a0e9a1c 100644 --- a/src/views/perfManage/kpiKeyTarget/index.vue +++ b/src/views/perfManage/kpiKeyTarget/index.vue @@ -20,7 +20,7 @@ import { listKPIData, getKPITitle } from '@/api/perfManage/goldTarget'; import useI18n from '@/hooks/useI18n'; import { parseDateToStr } from '@/utils/date-utils'; import dayjs from 'dayjs'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { message } from 'ant-design-vue'; import { generateColorRGBA } from '@/utils/generate-utils'; import { LineSeriesOption } from 'echarts/charts'; @@ -30,7 +30,7 @@ import { useDebounceFn } from '@vueuse/core'; import { LineOutlined } from '@ant-design/icons-vue'; import { TableColumnType } from 'ant-design-vue'; const { t, currentLocale } = useI18n(); -const neListStore = useNeListStore(); +const neStore = useNeStore(); //日期快捷选择 const ranges = ref([ { @@ -71,7 +71,7 @@ const ALL_NE_TYPES = [ ] as const; type AllChartType = (typeof ALL_NE_TYPES)[number] & string; // 在 ALL_NE_TYPES 定义之后添加 小写转大写 -const neTypeOptions = neListStore.getNeCascaderOptions +const neTypeOptions = neStore.getNeCascaderOptions .filter(v => ALL_NE_TYPES.includes(v.value.toLowerCase())) .map(v => ({ label: v.label, diff --git a/src/views/perfManage/overview/index.vue b/src/views/perfManage/overview/index.vue index babc2a35..021f4fd4 100644 --- a/src/views/perfManage/overview/index.vue +++ b/src/views/perfManage/overview/index.vue @@ -145,11 +145,11 @@ import * as echarts from 'echarts/core' import { LineChart } from 'echarts/charts' import { GridComponent } from 'echarts/components' import { CanvasRenderer } from 'echarts/renderers' -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { WS } from '@/plugins/ws-websocket' import { listKPIData } from '@/api/perfManage/goldTarget' -import { RESULT_CODE_SUCCESS } from '@/constants/result-constants' import useI18n from '@/hooks/useI18n'; +const neStore = useNeStore(); const { t } = useI18n(); echarts.use([LineChart, GridComponent, CanvasRenderer]) @@ -174,7 +174,7 @@ const wsStatus = ref('未连接') onMounted(async () => { // console.log('组件挂载,开始获取IMS网元列表') // 调试信息 - const res = await useNeListStore().fnNelist() + const res = await neStore.fnNelist() // console.log('获取到的网元列表响应:', res) // 调试信息 if (res && Array.isArray(res.data)) { diff --git a/src/views/perfManage/perfData/index.vue b/src/views/perfManage/perfData/index.vue index b51e3026..bfa7e787 100644 --- a/src/views/perfManage/perfData/index.vue +++ b/src/views/perfManage/perfData/index.vue @@ -7,9 +7,10 @@ import { ColumnsType } from 'ant-design-vue/es/table'; import { parseDateToStr } from '@/utils/date-utils'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import { listperfData } from '@/api/perfManage/perfData'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import useDictStore from '@/store/modules/dict'; import useI18n from '@/hooks/useI18n'; +const neStore = useNeStore(); const { getDict } = useDictStore(); const { t } = useI18n(); @@ -223,7 +224,7 @@ onMounted(() => { } }); // 获取网元网元列表 - useNeListStore().fnNelist(); + neStore.fnNelist(); // 获取列表数据 fnGetList(); }); @@ -246,7 +247,7 @@ onMounted(() => { > diff --git a/src/views/perfManage/perfThreshold/index.vue b/src/views/perfManage/perfThreshold/index.vue index 536bf1a3..9f9b5858 100644 --- a/src/views/perfManage/perfThreshold/index.vue +++ b/src/views/perfManage/perfThreshold/index.vue @@ -9,7 +9,7 @@ import { ColumnsType } from 'ant-design-vue/es/table'; import { RESULT_CODE_SUCCESS } from '@/constants/result-constants'; import useI18n from '@/hooks/useI18n'; import useDictStore from '@/store/modules/dict'; -import useNeListStore from '@/store/modules/ne_list'; +import useNeStore from '@/store/modules/ne'; import { addPerfThre, delPerfThre, @@ -19,6 +19,7 @@ import { threStop, threRun, } from '@/api/perfManage/perfThreshold'; +const neStore = useNeStore(); const { getDict } = useDictStore(); const { t, currentLocale } = useI18n(); @@ -189,7 +190,7 @@ function fnGetList(pageNum?: number) { queryParams.pageNum = pageNum; } listPerfThreshold(toRaw(queryParams)).then(res => { - if (res.code === RESULT_CODE_SUCCESS) { + if (res.code === RESULT_CODE_SUCCESS) { // 取消勾选 if (tableState.selectedRowKeys.length > 0) { tableState.selectedRowKeys = []; @@ -490,16 +491,8 @@ onMounted(() => { } }); - Promise.allSettled([ - // 获取网元网元列表 - useNeListStore().fnNelist(), - // 获取性能测量集列表 - // useNeListStore().fnNeTaskPerformance(), - // getNePerformanceList(), - ]).finally(() => { - // 获取列表数据 - fnGetList(); - }); + // 获取列表数据 + fnGetList(); }); @@ -517,7 +510,7 @@ onMounted(() => { @@ -610,9 +603,7 @@ onMounted(() => {