@@ -193,7 +193,7 @@ export default {
line-height: 29px;
vertical-align: bottom;
display: inline-block;
- padding: 3px;
+ padding: 3px 3px 3px 0;
margin-bottom: 5px;
}
diff --git a/src/components/TreeTable/index.vue b/src/components/TreeTable/index.vue
index bb90745a1..2f9a8f295 100644
--- a/src/components/TreeTable/index.vue
+++ b/src/components/TreeTable/index.vue
@@ -7,45 +7,41 @@
-
-
- Hello world
-
-
+ />
diff --git a/src/i18n/langs/en.json b/src/i18n/langs/en.json
index 250d23623..25334e4b7 100644
--- a/src/i18n/langs/en.json
+++ b/src/i18n/langs/en.json
@@ -1626,6 +1626,7 @@
},
"tree": {
"AddAssetToNode": "Add asset to node",
+ "RemoveAssetFromNode": "Remove asset from node",
"CreateNode": "Create node",
"DeleteNode": "Delete node",
"MoveAssetToNode": "move asset to node",
diff --git a/src/i18n/langs/ja.json b/src/i18n/langs/ja.json
index 0ef284b25..aac444a7f 100644
--- a/src/i18n/langs/ja.json
+++ b/src/i18n/langs/ja.json
@@ -1617,6 +1617,7 @@
},
"tree": {
"AddAssetToNode": "ノードにアセットを追加",
+ "RemoveAssetFromNode": "ノードからアセットを削除",
"CreateNode": "ノードの作成",
"DeleteNode": "ノードの削除",
"MoveAssetToNode": "資産をノードに移動する",
diff --git a/src/i18n/langs/zh.json b/src/i18n/langs/zh.json
index e63e23f1a..1e7db7339 100644
--- a/src/i18n/langs/zh.json
+++ b/src/i18n/langs/zh.json
@@ -1611,6 +1611,7 @@
},
"tree": {
"AddAssetToNode": "添加资产到节点",
+ "RemoveAssetFromNode": "从节点移除资产",
"CreateNode": "创建节点",
"DeleteNode": "删除节点",
"MoveAssetToNode": "移动资产到节点",
diff --git a/src/views/assets/Asset/AssetList/AllList.vue b/src/views/assets/Asset/AssetList/AllList.vue
index 48c727dc1..4ab7ac668 100644
--- a/src/views/assets/Asset/AssetList/AllList.vue
+++ b/src/views/assets/Asset/AssetList/AllList.vue
@@ -36,7 +36,6 @@ export default {
BaseList
},
data() {
- const vm = this
const tableUrl = '/api/v1/assets/assets/'
return {
treeRef: null,
@@ -53,35 +52,7 @@ export default {
headerActions: {
hasImport: false
},
- addExtraMoreActions: [
- {
- name: 'RemoveFromCurrentNode',
- title: this.$t('assets.RemoveFromCurrentNode'),
- can: ({ selectedRows }) => {
- if (!vm.$route.query.node_id) {
- return false
- }
- return selectedRows.length > 0 &&
- !vm.currentOrgIsRoot &&
- vm.$hasPerm('assets.change_node')
- },
- callback: function({ selectedRows, reloadTable }) {
- const assetsId = []
- for (const item of selectedRows) {
- assetsId.push(item.id)
- }
- const nodeId = this.$route.query.node_id
- if (!nodeId) return
- const url = `/api/v1/assets/nodes/${nodeId}/assets/remove/`
- this.$axios.put(url, { assets: assetsId }).then(res => {
- this.$message.success(this.$t('common.removeSuccessMsg'))
- reloadTable()
- }).catch(err => {
- this.$message.error(this.$t('common.removeErrorMsg' + ' ' + err))
- })
- }.bind(this)
- }
- ],
+ addExtraMoreActions: [],
helpMessage: this.$t('assets.AssetListHelpMessage')
}
},
diff --git a/src/views/assets/Asset/AssetList/components/NodeAssetsUpdateDialog.vue b/src/views/assets/Asset/AssetList/components/NodeAssetsUpdateDialog.vue
index 9008956fa..26b635988 100644
--- a/src/views/assets/Asset/AssetList/components/NodeAssetsUpdateDialog.vue
+++ b/src/views/assets/Asset/AssetList/components/NodeAssetsUpdateDialog.vue
@@ -2,10 +2,11 @@
@@ -47,17 +48,37 @@ export default {
get() {
return this.visible
}
+ },
+ assetsUrl() {
+ if (this.action === 'remove') {
+ return '/api/v1/assets/assets/?node_id=' + this.selectNode.meta.data.id
+ } else {
+ return `/api/v1/assets/assets/`
+ }
}
},
methods: {
assetTreeTableDialogHandleConfirm(assetsSelected) {
+ if (!assetsSelected) {
+ return
+ }
const currentNode = this.selectNode
if (!currentNode || assetsSelected.length === 0) {
return
}
- let url = `/api/v1/assets/nodes/${currentNode.meta.data.id}/assets/add/`
- if (this.action === 'move') {
- url = `/api/v1/assets/nodes/${currentNode.meta.data.id}/assets/replace/`
+ let url
+ switch (this.action) {
+ case 'add':
+ url = `/api/v1/assets/nodes/${currentNode.meta.data.id}/assets/add/`
+ break
+ case 'move':
+ url = `/api/v1/assets/nodes/${currentNode.meta.data.id}/assets/replace/`
+ break
+ case 'remove':
+ url = `/api/v1/assets/nodes/${currentNode.meta.data.id}/assets/remove/`
+ break
+ default:
+ return
}
this.$axios.put(
url, { assets: assetsSelected }
diff --git a/src/views/assets/Asset/AssetList/components/TreeMenu.vue b/src/views/assets/Asset/AssetList/components/TreeMenu.vue
index dd77e0641..98e00eda4 100644
--- a/src/views/assets/Asset/AssetList/components/TreeMenu.vue
+++ b/src/views/assets/Asset/AssetList/components/TreeMenu.vue
@@ -1,16 +1,50 @@
-
+
-
+
-
-
@@ -21,22 +55,29 @@
{{ this.$t('tree.ShowAssetAllChildrenNode') }}
-