From 5932662e7cf7227ecfd8d5d87d0d3f5fc03ecfae Mon Sep 17 00:00:00 2001 From: zhongzm Date: Wed, 10 Sep 2025 18:08:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E7=BD=91=E5=85=83=E8=AE=B8=E5=8F=AF?= =?UTF-8?q?=E5=BF=AB=E9=80=9F=E4=B8=8A=E4=BC=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/i18n/locales/en-US.ts | 4 + src/i18n/locales/zh-CN.ts | 8 + .../components/QuickLicenseModal.vue | 431 ++++++++++++++++++ src/views/ne/neLicense/index.vue | 25 +- 4 files changed, 467 insertions(+), 1 deletion(-) create mode 100644 src/views/ne/neLicense/components/QuickLicenseModal.vue diff --git a/src/i18n/locales/en-US.ts b/src/i18n/locales/en-US.ts index 6256ead5..d35ff36e 100644 --- a/src/i18n/locales/en-US.ts +++ b/src/i18n/locales/en-US.ts @@ -712,6 +712,10 @@ export default { uploadFile: "Upload License", uploadChangeOk: 'Network Element renewed license successfully and is being calibrated in the background!', uploadChangeFail: "Some network elements failed to update the license, please check whether the service terminal environment is available!", + quickUpload: { + title: 'Quick License Upload', + selectNe: 'Select NE', + }, }, neConfig: { treeTitle: "Navigation Configuration", diff --git a/src/i18n/locales/zh-CN.ts b/src/i18n/locales/zh-CN.ts index c723fecd..bf3a1567 100644 --- a/src/i18n/locales/zh-CN.ts +++ b/src/i18n/locales/zh-CN.ts @@ -601,6 +601,10 @@ export default { success:'成功', default:'失败', }, + quickUpload: { + title: '快速许可证上传', + selectNe: '选择网元', + }, backConf: { export: '配置导出', import: '配置导入', @@ -712,6 +716,10 @@ export default { uploadFile: "上传许可证", uploadChangeOk: '网元更新许可证成功,正在后台校验!', uploadChangeFail: "部分网元更新许可证失败,请检查服务终端环境是否可用!", + quickUpload: { + title: '快速许可证上传', + selectNe: '选择网元', + }, }, neConfig: { treeTitle: "配置导航", diff --git a/src/views/ne/neLicense/components/QuickLicenseModal.vue b/src/views/ne/neLicense/components/QuickLicenseModal.vue new file mode 100644 index 00000000..b61c0079 --- /dev/null +++ b/src/views/ne/neLicense/components/QuickLicenseModal.vue @@ -0,0 +1,431 @@ + + + + + diff --git a/src/views/ne/neLicense/index.vue b/src/views/ne/neLicense/index.vue index ce210815..5553c3c1 100644 --- a/src/views/ne/neLicense/index.vue +++ b/src/views/ne/neLicense/index.vue @@ -16,6 +16,10 @@ const neListStore = useNeListStore(); const EditModal = defineAsyncComponent( () => import('./components/EditModal.vue') ); +// 快速许可证上传 +const QuickLicenseModal = defineAsyncComponent( + () => import('./components/QuickLicenseModal.vue') +); /**字典数据-状态 */ let dictStatus = ref([]); @@ -210,7 +214,7 @@ function fnGetList(pageNum?: number) { tablePagination.total = totalV; if ( tablePagination.total <= - (queryParams.pageNum - 1) * tablePagination.pageSize && + (queryParams.pageNum - 1) * tablePagination.pageSize && queryParams.pageNum !== 1 ) { tableState.loading = false; @@ -228,6 +232,8 @@ function fnGetList(pageNum?: number) { type ModalStateType = { /**新增框或修改框是否显示 */ openByEdit: boolean; + /**快速许可证上传框是否显示 */ + openByQuickUpload: boolean; /**授权记录ID */ licenseId: number; /**确定按钮 loading */ @@ -237,6 +243,7 @@ type ModalStateType = { /**对话框对象信息状态 */ let modalState: ModalStateType = reactive({ openByEdit: false, + openByQuickUpload: false, licenseId: 0, confirmLoading: false, }); @@ -270,6 +277,7 @@ function fnModalOk(e: any) { */ function fnModalCancel() { modalState.openByEdit = false; + modalState.openByQuickUpload = false; modalState.licenseId = 0; } @@ -410,6 +418,14 @@ onMounted(() => {