[update] 资料目录新增上级组件修改

This commit is contained in:
zhaoxiao
2021-09-08 09:13:47 +08:00
parent f0389d2ab6
commit 376264aa6e
2 changed files with 49 additions and 27 deletions
@@ -13,17 +13,18 @@
<div class="data-directory-container-left">
<!-- 查询区域-->
<div class="table-page-search-wrapper">
<a-input-search v-model="queryParam.name" @search="searchQuery" style="width:100%;margin-top: 10px" placeholder="请输入文件夹名称" allowClear/>
<a-input-search v-model="queryParam.name" @search="searchQuery" style="width:100%;margin-top: 10px"
placeholder="请输入文件夹名称" allowClear/>
</div>
<!-- /查询区域-->
<!-- 树形数据-->
<a-tree
v-model="selectedRowKeys"
checkable
:tree-data="dataSource"
:replaceFields="replaceFields"
@expand="onExpand"
@select="onSelect"
/>
v-model="selectedRowKeys"
checkable
:tree-data="dataSource"
:replaceFields="replaceFields"
@expand="onExpand"
@select="onSelect"/>
</div>
<!-- /左侧区域-->
<div class="data-directory-container-divider"></div>
@@ -60,9 +61,9 @@ export default {
checkedKeys: [],
columns: [], // 防止混入报错
replaceFields: {
children:'children',
title:'name',
key:'id'
children: 'children',
title: 'name',
key: 'id'
}
}
},
@@ -12,11 +12,15 @@
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
<a-form-item label="上级名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-select placeholder="请选择上级名称"
v-decorator="['parentId',validatorRules.parentId]"
:maxLength='50'>
<a-select-option v-for="item in directoryList" :key="item.id" :value="item.id">{{ item.name }}</a-select-option>
</a-select>
<a-tree-select
style="width:100%"
:dropdownStyle="{ maxHeight: '200px',maxWidth:'100px','overflow-x':'hidden',' overflow-y': 'auto' }"
:treeData="directoryList"
v-decorator="['parentId',validatorRules.parentId]"
placeholder="请选择上级名称"
:replaceFields="replaceFields"
:maxLength='50'>
</a-tree-select>
</a-form-item>
<a-form-item label="排序" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入排序"
@@ -68,9 +72,15 @@ export default {
},
parentId: {
rules: [{ required: true, message: '请选择上级文件夹' }],
validateTrigger: 'blur'
validateTrigger: 'change'
}
},
replaceFields: {
children:'children',
title:'name',
value: 'id',
key:'id'
},
url: {
add: '/payDataDirectory/payDataDirectory/add',
edit: '/payDataDirectory/payDataDirectory/edit'
@@ -83,11 +93,11 @@ export default {
},
methods: {
initDirectoryList() {
httpAction('/payDataDirectory/payDataDirectory/findall', {}, 'get').then(res => {
httpAction('/payDataDirectory/payDataDirectory/queryByName', {}, 'get').then(res => {
this.directoryList = res.result
let levelOne = {
id: 0,
name: '无级'
name: '无级'
}
this.directoryList.unshift(levelOne)
})
@@ -103,7 +113,6 @@ export default {
})
},
handleOk() {
const that = this
// 触发表单验证
this.form.validateFields((err, values) => {
if (!err) {
@@ -120,21 +129,33 @@ export default {
httpAction(httpurl, formData, method).then((res) => {
this.confirmLoading = true
if (res.success) {
that.$message.success(res.message)
that.$emit('ok')
that.close()
this.$message.success(res.message)
this.$emit('ok')
this.clearForm()
} else {
that.$message.warning(res.message)
this.$message.warning(res.message)
}
}).finally(() => {
that.confirmLoading = false
this.confirmLoading = false
this.initDirectoryList()
})
}
})
},
handleCancle() {
this.model = {}
this.clearForm()
},
clearForm() {
let obj = {
name: undefined,
parentId: undefined,
sort: undefined,
remarks: undefined
}
this.model = Object.assign({}, obj)
this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'name', 'parentId', 'sort', 'remarks'))
})
},
/**
* 文件夹名称唯一性校验
@@ -151,7 +172,7 @@ export default {
}
duplicateCheck(params).then(res => {
if (res.success) {
callback(res.message)
callback()
} else {
callback('文件夹名称已存在')
}