2025-08-20 16:24:13 +08:00
|
|
|
|
<template>
|
2025-08-21 16:14:11 +08:00
|
|
|
|
<page-header-wrapper>
|
|
|
|
|
|
<Grid :columns="['400px', 1]">
|
|
|
|
|
|
<a-card title="装备管理" class="my-card my-card-has-title" :bordered="false">
|
|
|
|
|
|
<template #extra>
|
|
|
|
|
|
<a-button type="primary" icon="plus" shape="circle" title="新增" @click="handleOpenAddZbglModal()"></a-button>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<a-tree
|
|
|
|
|
|
:treeData="zbgl.treeData"
|
|
|
|
|
|
:selectedKeys.sync="zbgl.selectedKeys"
|
|
|
|
|
|
:expandedKeys.sync="zbgl.expandedKeys"
|
|
|
|
|
|
@select="handleChangeZbglSelected"
|
|
|
|
|
|
>
|
|
|
|
|
|
<template #title="scope">
|
|
|
|
|
|
<a-dropdown :trigger="['contextmenu']">
|
|
|
|
|
|
<span>{{ scope.title }}</span>
|
|
|
|
|
|
<span>{{ formatText(scope) }}</span>
|
|
|
|
|
|
<template #overlay>
|
|
|
|
|
|
<Flex class="contextmenu-zz">
|
|
|
|
|
|
<a-button
|
|
|
|
|
|
type="text-primary"
|
|
|
|
|
|
icon="edit"
|
|
|
|
|
|
title="编辑"
|
|
|
|
|
|
@click="handleOpenEditZbglModal(scope.key)"
|
|
|
|
|
|
></a-button>
|
|
|
|
|
|
<a-button
|
|
|
|
|
|
type="text-primary"
|
|
|
|
|
|
icon="plus"
|
|
|
|
|
|
title="新增子项"
|
|
|
|
|
|
@click="handleOpenAddZbglModal(scope.key)"
|
|
|
|
|
|
></a-button>
|
|
|
|
|
|
<a-button
|
|
|
|
|
|
type="text-danger"
|
|
|
|
|
|
icon="delete"
|
|
|
|
|
|
title="删除"
|
|
|
|
|
|
@click="handleDeleteZbgl(scope.key, scope.title)"
|
|
|
|
|
|
></a-button>
|
|
|
|
|
|
</Flex>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</a-dropdown>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</a-tree>
|
|
|
|
|
|
</a-card>
|
|
|
|
|
|
</Grid>
|
|
|
|
|
|
</page-header-wrapper>
|
2025-08-20 16:24:13 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2025-08-21 16:14:11 +08:00
|
|
|
|
export default {
|
|
|
|
|
|
name: 'Zbsjk',
|
|
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
|
|
|
|
|
zbgl: {
|
|
|
|
|
|
treeData: [],
|
|
|
|
|
|
selectedKeys: [],
|
|
|
|
|
|
expandedKeys: [],
|
|
|
|
|
|
},
|
|
|
|
|
|
zbglModal: {
|
|
|
|
|
|
visible: false,
|
|
|
|
|
|
title: '',
|
|
|
|
|
|
mode: '',
|
|
|
|
|
|
formItems: [
|
|
|
|
|
|
{
|
|
|
|
|
|
label: '上级装备',
|
|
|
|
|
|
prop: 'parentId',
|
|
|
|
|
|
component: 'AntOriginTreeSelect',
|
|
|
|
|
|
options: {
|
|
|
|
|
|
dataSource: () =>
|
|
|
|
|
|
this.$http({
|
|
|
|
|
|
url: '/tree/armament',
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
}).then((res) => ({ data: [{ key: 0, title: '根组织' }].concat(res.data) })),
|
|
|
|
|
|
valueKey: 'key',
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
label: '标识编码',
|
|
|
|
|
|
prop: 'codeName',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
label: '装备名称',
|
|
|
|
|
|
prop: 'name',
|
|
|
|
|
|
},
|
|
|
|
|
|
],
|
|
|
|
|
|
formRules: {
|
|
|
|
|
|
codeName: [{ required: true, message: '请输入标识编码!', trigger: 'blur' }],
|
|
|
|
|
|
name: [{ required: true, message: '请输入装备名称!', trigger: 'blur' }],
|
|
|
|
|
|
},
|
|
|
|
|
|
formData: {},
|
|
|
|
|
|
},
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
created() {
|
|
|
|
|
|
this.getZzTree()
|
|
|
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
formatText(scope) {
|
|
|
|
|
|
console.log('----scope----', scope)
|
|
|
|
|
|
return ''
|
|
|
|
|
|
},
|
|
|
|
|
|
async getZzTree() {
|
|
|
|
|
|
try {
|
|
|
|
|
|
const res = await this.$http({
|
|
|
|
|
|
url: `/tree/armament`,
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
})
|
|
|
|
|
|
this.zbgl.treeData = res.data
|
|
|
|
|
|
this.zbgl.selectedKeys = [this.zbgl.treeData[0].key]
|
|
|
|
|
|
this.handleChangeZbglSelected()
|
|
|
|
|
|
} catch (error) {
|
|
|
|
|
|
console.log(error)
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
handleChangeZbglSelected() {},
|
|
|
|
|
|
handleOpenAddZbglModal(parentId) {
|
|
|
|
|
|
this.zbglModal.title = '新建装备管理'
|
|
|
|
|
|
this.zbglModal.mode = 'add'
|
|
|
|
|
|
this.zbglModal.formData = { parentId }
|
|
|
|
|
|
this.zbglModal.visible = true
|
|
|
|
|
|
},
|
|
|
|
|
|
async handleOpenEditZbglModal(id) {
|
|
|
|
|
|
try {
|
|
|
|
|
|
const res = await this.$http({
|
|
|
|
|
|
url: `/baseData/fightPowerHierarchy/${id}`,
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
})
|
|
|
|
|
|
this.zbglModal.title = '编辑装备管理'
|
|
|
|
|
|
this.zbglModal.mode = 'edit'
|
|
|
|
|
|
this.zbglModal.formData = res.data
|
|
|
|
|
|
this.zbglModal.visible = true
|
|
|
|
|
|
} catch (error) {
|
|
|
|
|
|
console.log(error)
|
|
|
|
|
|
this.$message.error('未知错误,请重试')
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
handleSubmitZbgl(formData) {
|
|
|
|
|
|
return this.$http({
|
|
|
|
|
|
url: `/baseData/fightPowerHierarchy/save`,
|
|
|
|
|
|
method: 'post',
|
|
|
|
|
|
data: formData,
|
|
|
|
|
|
})
|
|
|
|
|
|
},
|
|
|
|
|
|
handleSubmitZbglSuccess() {
|
|
|
|
|
|
this.getZzTree()
|
|
|
|
|
|
},
|
|
|
|
|
|
async handleDeleteZbgl(id, title) {
|
|
|
|
|
|
try {
|
|
|
|
|
|
await this.$confirm({ content: `确定删除装备管理-${title}?` })
|
|
|
|
|
|
await this.$http({
|
|
|
|
|
|
url: `/baseData/fightPowerHierarchy/remove/${id}`,
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
})
|
|
|
|
|
|
this.$message.success('删除成功')
|
|
|
|
|
|
this.getZzTree()
|
|
|
|
|
|
} catch (error) {}
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
}
|
2025-08-20 16:24:13 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="less" scoped></style>
|