From 113b84763fefeb0005bd5e492469be0fab99f5df Mon Sep 17 00:00:00 2001
From: dagongren <53748875+wang-liang0615@users.noreply.github.com>
Date: Tue, 27 Feb 2024 16:13:28 +0800
Subject: [PATCH] feat:ci detail share (#403)
---
.../cmdb/components/searchForm/SearchForm.vue | 13 +-
cmdb-ui/src/modules/cmdb/lang/en.js | 3 +
cmdb-ui/src/modules/cmdb/lang/zh.js | 3 +
cmdb-ui/src/modules/cmdb/router/index.js | 7 +
.../modules/cmdb/views/ci/ciDetailPage.vue | 71 ++++++++++
cmdb-ui/src/modules/cmdb/views/ci/index.vue | 6 +-
.../cmdb/views/ci/modules/ciDetailDrawer.vue | 50 +++++++
.../views/ci/modules/ciDetailRelation.vue | 13 +-
.../ci/modules/ciDetailRelationTopo/index.vue | 2 +-
.../modules/{CiDetail.vue => ciDetailTab.vue} | 134 ++++++++++++------
.../modules/triggerTable.vue | 4 +-
.../cmdb/views/relation_views/index.vue | 6 +-
.../modules/cmdb/views/tree_views/index.vue | 6 +-
13 files changed, 257 insertions(+), 61 deletions(-)
create mode 100644 cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue
create mode 100644 cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailDrawer.vue
rename cmdb-ui/src/modules/cmdb/views/ci/modules/{CiDetail.vue => ciDetailTab.vue} (78%)
diff --git a/cmdb-ui/src/modules/cmdb/components/searchForm/SearchForm.vue b/cmdb-ui/src/modules/cmdb/components/searchForm/SearchForm.vue
index dcb6ef47..a5e58e07 100644
--- a/cmdb-ui/src/modules/cmdb/components/searchForm/SearchForm.vue
+++ b/cmdb-ui/src/modules/cmdb/components/searchForm/SearchForm.vue
@@ -145,7 +145,7 @@ export default {
selectedRowKeys: {
type: Array,
default: () => [],
- }
+ },
},
data() {
return {
@@ -179,7 +179,12 @@ export default {
this.fuzzySearch = ''
},
},
- inject: ['setPreferenceSearchCurrent'],
+ inject: {
+ setPreferenceSearchCurrent: {
+ from: 'setPreferenceSearchCurrent',
+ default: null,
+ },
+ },
mounted() {
if (this.type === 'resourceSearch') {
this.getCITypeGroups()
@@ -234,7 +239,9 @@ export default {
}
},
emitRefresh() {
- this.setPreferenceSearchCurrent(null)
+ if (this.setPreferenceSearchCurrent) {
+ this.setPreferenceSearchCurrent(null)
+ }
this.$nextTick(() => {
this.$emit('refresh', true)
})
diff --git a/cmdb-ui/src/modules/cmdb/lang/en.js b/cmdb-ui/src/modules/cmdb/lang/en.js
index b20ad658..2fe8db60 100644
--- a/cmdb-ui/src/modules/cmdb/lang/en.js
+++ b/cmdb-ui/src/modules/cmdb/lang/en.js
@@ -19,6 +19,7 @@ const cmdb_en = {
operationHistory: 'Operation Audit',
relationType: 'Relation Type',
ad: 'AutoDiscovery',
+ cidetail: 'CI Detail'
},
ciType: {
ciType: 'CIType',
@@ -467,6 +468,8 @@ const cmdb_en = {
tips10: 'Other attributes of the CIType are computed using expressions\n\nA code snippet computes the returned value.',
newUpdateField: 'Add a Attribute',
attributeSettings: 'Attribute Settings',
+ share: 'Share',
+ noPermission: 'No Permission'
},
serviceTree: {
deleteNode: 'Delete Node',
diff --git a/cmdb-ui/src/modules/cmdb/lang/zh.js b/cmdb-ui/src/modules/cmdb/lang/zh.js
index ec432f8d..461d1993 100644
--- a/cmdb-ui/src/modules/cmdb/lang/zh.js
+++ b/cmdb-ui/src/modules/cmdb/lang/zh.js
@@ -19,6 +19,7 @@ const cmdb_zh = {
operationHistory: '操作审计',
relationType: '关系类型',
ad: '自动发现',
+ cidetail: 'CI 详情'
},
ciType: {
ciType: '模型',
@@ -466,6 +467,8 @@ const cmdb_zh = {
tips10: '模型的其他属性通过表达式的方式计算出来\n\n一个代码片段计算返回的值',
newUpdateField: '新增修改字段',
attributeSettings: '字段设置',
+ share: '分享',
+ noPermission: '暂无权限'
},
serviceTree: {
deleteNode: '删除节点',
diff --git a/cmdb-ui/src/modules/cmdb/router/index.js b/cmdb-ui/src/modules/cmdb/router/index.js
index 66ccf6b8..54663a96 100644
--- a/cmdb-ui/src/modules/cmdb/router/index.js
+++ b/cmdb-ui/src/modules/cmdb/router/index.js
@@ -56,6 +56,13 @@ const genCmdbRoutes = async () => {
meta: { title: 'cmdb.menu.adCIs', icon: 'ops-cmdb-adc', selectedIcon: 'ops-cmdb-adc-selected', keepAlive: false },
component: () => import('../views/discoveryCI/index.vue')
},
+ {
+ path: `/cmdb/cidetail/:typeId/:ciId`,
+ name: 'cmdb_ci_detail',
+ hidden: true,
+ meta: { title: 'cmdb.menu.cidetail', keepAlive: false },
+ component: () => import('../views/ci/ciDetailPage.vue')
+ },
{
path: '/cmdb/disabled2',
name: 'cmdb_disabled2',
diff --git a/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue b/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue
new file mode 100644
index 00000000..6a186209
--- /dev/null
+++ b/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
diff --git a/cmdb-ui/src/modules/cmdb/views/ci/index.vue b/cmdb-ui/src/modules/cmdb/views/ci/index.vue
index 2a97fc58..cab9c073 100644
--- a/cmdb-ui/src/modules/cmdb/views/ci/index.vue
+++ b/cmdb-ui/src/modules/cmdb/views/ci/index.vue
@@ -57,7 +57,7 @@
{{ $t('cmdb.ci.selectRows', { rows: selectedRowKeys.length }) }}
-
+
+ {
+ visible = false
+ }
+ "
+ :visible="visible"
+ :hasTitle="false"
+ :hasFooter="false"
+ :bodyStyle="{ padding: 0, height: '100vh' }"
+ destroyOnClose
+ >
+
+
+
+
+
diff --git a/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelation.vue b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelation.vue
index 44d02511..38cbd72f 100644
--- a/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelation.vue
+++ b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelation.vue
@@ -39,7 +39,11 @@
class="ops-stripe-table"
>
-
+
-
+
.ci-detail-relation {
+ height: 100%;
.ci-detail-relation-table-title {
font-size: 16px;
font-weight: 700;
diff --git a/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelationTopo/index.vue b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelationTopo/index.vue
index 8d019f48..795b091c 100644
--- a/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelationTopo/index.vue
+++ b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailRelationTopo/index.vue
@@ -2,7 +2,7 @@
diff --git a/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailTab.vue
similarity index 78%
rename from cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue
rename to cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailTab.vue
index 87cce17a..81a471d0 100644
--- a/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue
+++ b/cmdb-ui/src/modules/cmdb/views/ci/modules/ciDetailTab.vue
@@ -1,23 +1,13 @@
- {
- visible = false
- }
- "
- :visible="visible"
- :hasTitle="false"
- :hasFooter="false"
- :bodyStyle="{ padding: 0, height: '100vh' }"
- wrapClassName="ci-detail"
- destroyOnClose
- >
-
+
+
+
+
+ {{ $t('cmdb.ci.share') }}
+
{{ $t('cmdb.attribute') }}
-
+
{{ $t('cmdb.relation') }}
-
+
{{ $t('cmdb.ci.history') }}
-
+
{{ $t('cmdb.history.triggerHistory') }}
-
+
-
+
+
+ {{ $t('cmdb.ci.noPermission') }}
+
+
-