diff --git a/nezha-fronted/src/assets/css/components/index.scss b/nezha-fronted/src/assets/css/components/index.scss index c8306926c..88f986a12 100644 --- a/nezha-fronted/src/assets/css/components/index.scss +++ b/nezha-fronted/src/assets/css/components/index.scss @@ -130,6 +130,7 @@ @import './page/tool/ping.scss'; @import './page/tool/trace.scss'; @import './page/integration/integration.scss'; +@import './page/softwareType/softwareType.scss'; @import './common/v-selectpagenew/selectpage.scss'; @import './common/selectTable.scss'; diff --git a/nezha-fronted/src/assets/css/components/page/softwareType/softwareType.scss b/nezha-fronted/src/assets/css/components/page/softwareType/softwareType.scss new file mode 100644 index 000000000..25df4fb5e --- /dev/null +++ b/nezha-fronted/src/assets/css/components/page/softwareType/softwareType.scss @@ -0,0 +1,6 @@ +.right-box-editSoftwareType { + .el-dropdown-link { + border: 1px solid $--border-color-light; + border-radius: 2px; + } +} diff --git a/nezha-fronted/src/components/common/js/iconList.js b/nezha-fronted/src/components/common/js/iconList.js new file mode 100644 index 000000000..9b51dd44c --- /dev/null +++ b/nezha-fronted/src/components/common/js/iconList.js @@ -0,0 +1,134 @@ +const iconList = [ + { + value: undefined + }, { + value: 'nz-icon nz-icon-Router' + }, { + value: 'nz-icon nz-icon-Computer' + }, { + value: 'nz-icon nz-icon-a-Networkdevices' + }, { + value: 'nz-icon nz-icon-Other' + }, { + value: 'nz-icon nz-icon-a-Virtualmachine' + }, { + value: 'nz-icon nz-icon-Switch' + }, { + value: 'nz-icon nz-icon-Server' + }, { + value: 'nz-icon nz-icon-ADC' + }, { + value: 'nz-icon nz-icon-Firewall' + }, { + value: 'nz-icon nz-icon-guide' + }, { + value: 'nz-icon nz-icon-Silence' + }, { + value: 'nz-icon nz-icon-fast-silence' + }, { + value: 'nz-icon nz-icon-mute' + }, { + value: 'nz-icon nz-icon-overview-alert' + }, { + value: 'nz-icon nz-icon-overview-endpoint' + }, { + value: 'nz-icon nz-icon-Alertrule' + }, { + value: 'nz-icon nz-icon-import-success1' + }, { + value: 'nz-icon nz-icon-import-failed1' + }, { + value: 'nz-icon nz-icon-stop' + }, { + value: 'nz-icon nz-icon-failed' + }, { + value: 'nz-icon nz-icon-unknown-error' + }, { + value: 'nz-icon nz-icon-role1' + }, { + value: 'nz-icon nz-icon-Cabinet1' + }, { + value: 'nz-icon nz-icon-user1' + }, { + value: 'nz-icon nz-icon-Datacenter2' + }, { + value: 'nz-icon nz-icon-overview-project' + }, { + value: 'nz-icon nz-icon-project' + }, { + value: 'nz-icon nz-icon-overview-module' + }, { + value: 'el-icon-share' + }, { + value: 'el-icon-d-caret' + }, { + value: 'el-icon-caret-left' + }, { + value: 'el-icon-caret-right' + }, { + value: 'el-icon-caret-bottom' + }, { + value: 'el-icon-caret-top' + }, { + value: 'el-icon-bottom-left' + }, { + value: 'el-icon-bottom-right' + }, { + value: 'el-icon-back' + }, { + value: 'el-icon-right' + }, { + value: 'el-icon-bottom' + }, { + value: 'el-icon-top' + }, { + value: 'el-icon-top-left' + }, { + value: 'el-icon-top-right' + }, { + value: 'el-icon-arrow-left' + }, { + value: 'el-icon-arrow-right' + }, { + value: 'el-icon-arrow-down' + }, { + value: 'el-icon-arrow-up' + }, { + value: 'el-icon-d-arrow-left' + }, { + value: 'el-icon-d-arrow-right' + }, { + value: 'el-icon-video-pause' + }, { + value: 'el-icon-video-play' + }, { + value: 'el-icon-refresh' + }, { + value: 'el-icon-refresh-right' + }, { + value: 'el-icon-refresh-left' + }, { + value: 'el-icon-finished' + }, { + value: 'el-icon-sort' + }, { + value: 'el-icon-sort-up' + }, { + value: 'el-icon-sort-down' + }, { + value: 'el-icon-rank' + }, { + value: 'nz-icon nz-icon-zhengfangxing' + }, { + value: 'nz-icon nz-icon-zhixian' + }, { + value: 'nz-icon nz-icon-sanjiaoxing' + }, { + value: 'nz-icon nz-icon-xingxing' + }, { + value: 'nz-icon nz-icon-duobianxing' + }, { + value: 'nz-icon nz-icon-circle' + } +] +export default iconList diff --git a/nezha-fronted/src/components/common/rightBox/chart/publicConfig.js b/nezha-fronted/src/components/common/rightBox/chart/publicConfig.js index 7d0420c97..de93ed555 100644 --- a/nezha-fronted/src/components/common/rightBox/chart/publicConfig.js +++ b/nezha-fronted/src/components/common/rightBox/chart/publicConfig.js @@ -3,6 +3,7 @@ import { getUUID, resetZIndex } from '@/components/common/js/common' import { randomcolor, ColorReverse } from '@/components/common/js/radomcolor/randomcolor' import { isStat } from '@/components/chart/chart/tools' import lodash from 'lodash' +import iconList from '@/components/common/js/iconList' const rz = { methods: { rz (e) { @@ -79,139 +80,7 @@ export default { value: 'regx' } ], - mappingIconList: [ - { - value: undefined - }, { - value: 'nz-icon nz-icon-Router' - }, { - value: 'nz-icon nz-icon-Computer' - }, { - value: 'nz-icon nz-icon-a-Networkdevices' - }, { - value: 'nz-icon nz-icon-Other' - }, { - value: 'nz-icon nz-icon-a-Virtualmachine' - }, { - value: 'nz-icon nz-icon-Switch' - }, { - value: 'nz-icon nz-icon-Server' - }, { - value: 'nz-icon nz-icon-ADC' - }, { - value: 'nz-icon nz-icon-Firewall' - }, { - value: 'nz-icon nz-icon-guide' - }, { - value: 'nz-icon nz-icon-Silence' - }, { - value: 'nz-icon nz-icon-fast-silence' - }, { - value: 'nz-icon nz-icon-mute' - }, { - value: 'nz-icon nz-icon-overview-alert' - }, { - value: 'nz-icon nz-icon-overview-endpoint' - }, { - value: 'nz-icon nz-icon-Alertrule' - }, { - value: 'nz-icon nz-icon-import-success1' - }, { - value: 'nz-icon nz-icon-import-failed1' - }, { - value: 'nz-icon nz-icon-stop' - }, { - value: 'nz-icon nz-icon-failed' - }, { - value: 'nz-icon nz-icon-unknown-error' - }, { - value: 'nz-icon nz-icon-role1' - }, { - value: 'nz-icon nz-icon-Cabinet1' - }, { - value: 'nz-icon nz-icon-user1' - }, { - value: 'nz-icon nz-icon-Datacenter2' - }, { - value: 'nz-icon nz-icon-overview-project' - }, { - value: 'nz-icon nz-icon-project' - }, { - value: 'nz-icon nz-icon-overview-module' - }, { - value: 'el-icon-share' - }, { - value: 'el-icon-d-caret' - }, { - value: 'el-icon-caret-left' - }, { - value: 'el-icon-caret-right' - }, { - value: 'el-icon-caret-bottom' - }, { - value: 'el-icon-caret-top' - }, { - value: 'el-icon-bottom-left' - }, { - value: 'el-icon-bottom-right' - }, { - value: 'el-icon-back' - }, { - value: 'el-icon-right' - }, { - value: 'el-icon-bottom' - }, { - value: 'el-icon-top' - }, { - value: 'el-icon-top-left' - }, { - value: 'el-icon-top-right' - }, { - value: 'el-icon-arrow-left' - }, { - value: 'el-icon-arrow-right' - }, { - value: 'el-icon-arrow-down' - }, { - value: 'el-icon-arrow-up' - }, { - value: 'el-icon-d-arrow-left' - }, { - value: 'el-icon-d-arrow-right' - }, { - value: 'el-icon-video-pause' - }, { - value: 'el-icon-video-play' - }, { - value: 'el-icon-refresh' - }, { - value: 'el-icon-refresh-right' - }, { - value: 'el-icon-refresh-left' - }, { - value: 'el-icon-finished' - }, { - value: 'el-icon-sort' - }, { - value: 'el-icon-sort-up' - }, { - value: 'el-icon-sort-down' - }, { - value: 'el-icon-rank' - }, { - value: 'nz-icon nz-icon-zhengfangxing' - }, { - value: 'nz-icon nz-icon-zhixian' - }, { - value: 'nz-icon nz-icon-sanjiaoxing' - }, { - value: 'nz-icon nz-icon-xingxing' - }, { - value: 'nz-icon nz-icon-duobianxing' - }, { - value: 'nz-icon nz-icon-circle' - } - ], // 获取icon列表 + mappingIconList: iconList, // 获取icon列表 letter: [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', diff --git a/nezha-fronted/src/components/common/rightBox/software/softwareTypeBox.vue b/nezha-fronted/src/components/common/rightBox/software/softwareTypeBox.vue new file mode 100644 index 000000000..20c208def --- /dev/null +++ b/nezha-fronted/src/components/common/rightBox/software/softwareTypeBox.vue @@ -0,0 +1,253 @@ + + + + {{editSoftwareType.id ? $t('Edit SoftwareType') : $t('new SoftwareType')}} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + = + + {tagsChange(newTags, index)}" + /> + + + + + + + + + + + + + + + + + + + + + + diff --git a/nezha-fronted/src/components/common/table/settings/softwareTypeTable.vue b/nezha-fronted/src/components/common/table/settings/softwareTypeTable.vue new file mode 100644 index 000000000..0b1bc133c --- /dev/null +++ b/nezha-fronted/src/components/common/table/settings/softwareTypeTable.vue @@ -0,0 +1,160 @@ + + {}" + > + + + + + {{item.label}} + + + + + + {{scope.row[item.prop].map(t=>t.name).join(',')}} + + + - + + + + + + {{scope.row[item.prop]?scope.row[item.prop]:'-'}} + + + + {{scope.row[item.prop]}} + - + + + + {{$t('overall.option')}} + + + + + + + + + {{$t('overall.edit')}} + {{$t('overall.duplicate')}} + {{$t('overall.delete')}} + {{$t('overall.syncChart')}} + + + + + + + + + + No results found + + + + + + + diff --git a/nezha-fronted/src/components/page/software/softwareType.vue b/nezha-fronted/src/components/page/software/softwareType.vue new file mode 100644 index 000000000..3f4b82b2c --- /dev/null +++ b/nezha-fronted/src/components/page/software/softwareType.vue @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + { $refs.dataList.showBottomBox(targetTab, object) }"> + + + + + + + + + + + diff --git a/nezha-fronted/src/permission.js b/nezha-fronted/src/permission.js index 6a540d43c..286c522c4 100644 --- a/nezha-fronted/src/permission.js +++ b/nezha-fronted/src/permission.js @@ -8,7 +8,7 @@ import VueResource from 'vue-resource' import bus from '@/libs/bus' Vue.use(VueResource) -const loginWhiteList = ['/setup', '/sys/license/upload', '/sys/license/state', '/sys/appearance', '/i18n', '/terminal'] // 免登陆白名单 +const loginWhiteList = ['/setup', '/sys/license/upload', '/sys/license/state', '/sys/appearance', '/i18n', '/terminal', '/softwareType'] // 免登陆白名单 export const permissionWhiteList = ['/profile', '/menu', ...loginWhiteList] // 权限白名单 router.beforeEach((to, from, next) => { if (window.entrance) { diff --git a/nezha-fronted/src/router/index.js b/nezha-fronted/src/router/index.js index d9c2677ca..c949b88a6 100644 --- a/nezha-fronted/src/router/index.js +++ b/nezha-fronted/src/router/index.js @@ -231,6 +231,10 @@ export default new Router({ { path: '/integration', component: resolve => require(['@/components/page/integration/integration'], resolve) + }, + { + path: '/softwareType', + component: resolve => require(['@/components/page/software/softwareType'], resolve) } ] },