diff --git a/cmdb-ui/src/modules/cmdb/api/CIType.js b/cmdb-ui/src/modules/cmdb/api/CIType.js index 6bbe18e..6a323a7 100644 --- a/cmdb-ui/src/modules/cmdb/api/CIType.js +++ b/cmdb-ui/src/modules/cmdb/api/CIType.js @@ -205,3 +205,21 @@ export function ciTypeFilterPermissions(type_id) { method: 'get', }) } + +// parent_ids, child_id +export function postCiTypeInheritance(data) { + return axios({ + url: `/v0.1/ci_types/inheritance`, + method: 'post', + data + }) +} + +// parent_id, child_id +export function deleteCiTypeInheritance(data) { + return axios({ + url: `/v0.1/ci_types/inheritance`, + method: 'delete', + data + }) +} diff --git a/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/cmdbTypeSelect.vue b/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/cmdbTypeSelect.vue new file mode 100644 index 0000000..fc98eb9 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/cmdbTypeSelect.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/index.js b/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/index.js new file mode 100644 index 0000000..886b2de --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/cmdbTypeSelect/index.js @@ -0,0 +1,2 @@ +import CMDBTypeSelect from './cmdbTypeSelect.vue' +export default CMDBTypeSelect diff --git a/cmdb-ui/src/modules/cmdb/lang/en.js b/cmdb-ui/src/modules/cmdb/lang/en.js index 2fe8db6..56e099a 100644 --- a/cmdb-ui/src/modules/cmdb/lang/en.js +++ b/cmdb-ui/src/modules/cmdb/lang/en.js @@ -176,7 +176,12 @@ const cmdb_en = { time: 'Time', json: 'JSON', event: 'Event', - reg: 'Regex' + reg: 'Regex', + isInherit: 'Inherit', + inheritType: 'Inherit Type', + inheritTypePlaceholder: 'Please select inherit types', + inheritFrom: 'inherit from {name}', + groupInheritFrom: 'Please go to the {name} for modification' }, components: { unselectAttributes: 'Unselected', diff --git a/cmdb-ui/src/modules/cmdb/lang/zh.js b/cmdb-ui/src/modules/cmdb/lang/zh.js index 461d199..41f9bcc 100644 --- a/cmdb-ui/src/modules/cmdb/lang/zh.js +++ b/cmdb-ui/src/modules/cmdb/lang/zh.js @@ -176,7 +176,12 @@ const cmdb_zh = { time: '时间', json: 'JSON', event: '事件', - reg: '正则校验' + reg: '正则校验', + isInherit: '是否继承', + inheritType: '继承模型', + inheritTypePlaceholder: '请选择继承模型(多选)', + inheritFrom: '属性继承自{name}', + groupInheritFrom: '请至{name}进行修改' }, components: { unselectAttributes: '未选属性', diff --git a/cmdb-ui/src/modules/cmdb/utils/helper.js b/cmdb-ui/src/modules/cmdb/utils/helper.js index 6fa4387..f81fa2b 100644 --- a/cmdb-ui/src/modules/cmdb/utils/helper.js +++ b/cmdb-ui/src/modules/cmdb/utils/helper.js @@ -178,4 +178,14 @@ export const downloadExcel = (data, fileName = `${moment().format('YYYY-MM-DD HH // ws['!rows'] = [{ 'hpt': 80 }] // STEP 4: Write Excel file to browser #导出 XLSXS.writeFile(wb, fileName + '.xlsx') -} \ No newline at end of file +} + +export const getAllParentNodesLabel = (node, label) => { + if (node.parentNode) { + return getAllParentNodesLabel(node.parentNode, `${node.parentNode.label}-${label}`) + } + return label + } + export const getTreeSelectLabel = (node) => { + return `${getAllParentNodesLabel(node, node.label)}` + } \ No newline at end of file diff --git a/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue b/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue index 6a18620..8079a16 100644 --- a/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue +++ b/cmdb-ui/src/modules/cmdb/views/ci/ciDetailPage.vue @@ -1,6 +1,6 @@