[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="data-directory-container-left">
<!-- 查询区域--> <!-- 查询区域-->
<div class="table-page-search-wrapper"> <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> </div>
<!-- /查询区域--> <!-- /查询区域-->
<!-- 树形数据-->
<a-tree <a-tree
v-model="selectedRowKeys" v-model="selectedRowKeys"
checkable checkable
:tree-data="dataSource" :tree-data="dataSource"
:replaceFields="replaceFields" :replaceFields="replaceFields"
@expand="onExpand" @expand="onExpand"
@select="onSelect" @select="onSelect"/>
/>
</div> </div>
<!-- /左侧区域--> <!-- /左侧区域-->
<div class="data-directory-container-divider"></div> <div class="data-directory-container-divider"></div>
@@ -60,9 +61,9 @@ export default {
checkedKeys: [], checkedKeys: [],
columns: [], // 防止混入报错 columns: [], // 防止混入报错
replaceFields: { replaceFields: {
children:'children', children: 'children',
title:'name', title: 'name',
key:'id' key: 'id'
} }
} }
}, },
@@ -12,11 +12,15 @@
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
<a-form-item label="上级名称" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="上级名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-select placeholder="请选择上级名称" <a-tree-select
v-decorator="['parentId',validatorRules.parentId]" style="width:100%"
:maxLength='50'> :dropdownStyle="{ maxHeight: '200px',maxWidth:'100px','overflow-x':'hidden',' overflow-y': 'auto' }"
<a-select-option v-for="item in directoryList" :key="item.id" :value="item.id">{{ item.name }}</a-select-option> :treeData="directoryList"
</a-select> v-decorator="['parentId',validatorRules.parentId]"
placeholder="请选择上级名称"
:replaceFields="replaceFields"
:maxLength='50'>
</a-tree-select>
</a-form-item> </a-form-item>
<a-form-item label="排序" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="排序" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入排序" <a-input placeholder="请输入排序"
@@ -68,9 +72,15 @@ export default {
}, },
parentId: { parentId: {
rules: [{ required: true, message: '请选择上级文件夹' }], rules: [{ required: true, message: '请选择上级文件夹' }],
validateTrigger: 'blur' validateTrigger: 'change'
} }
}, },
replaceFields: {
children:'children',
title:'name',
value: 'id',
key:'id'
},
url: { url: {
add: '/payDataDirectory/payDataDirectory/add', add: '/payDataDirectory/payDataDirectory/add',
edit: '/payDataDirectory/payDataDirectory/edit' edit: '/payDataDirectory/payDataDirectory/edit'
@@ -83,11 +93,11 @@ export default {
}, },
methods: { methods: {
initDirectoryList() { initDirectoryList() {
httpAction('/payDataDirectory/payDataDirectory/findall', {}, 'get').then(res => { httpAction('/payDataDirectory/payDataDirectory/queryByName', {}, 'get').then(res => {
this.directoryList = res.result this.directoryList = res.result
let levelOne = { let levelOne = {
id: 0, id: 0,
name: '无父级' name: '无上级'
} }
this.directoryList.unshift(levelOne) this.directoryList.unshift(levelOne)
}) })
@@ -103,7 +113,6 @@ export default {
}) })
}, },
handleOk() { handleOk() {
const that = this
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
@@ -120,21 +129,33 @@ export default {
httpAction(httpurl, formData, method).then((res) => { httpAction(httpurl, formData, method).then((res) => {
this.confirmLoading = true this.confirmLoading = true
if (res.success) { if (res.success) {
that.$message.success(res.message) this.$message.success(res.message)
that.$emit('ok') this.$emit('ok')
that.close() this.clearForm()
} else { } else {
that.$message.warning(res.message) this.$message.warning(res.message)
} }
}).finally(() => { }).finally(() => {
that.confirmLoading = false this.confirmLoading = false
this.initDirectoryList() this.initDirectoryList()
}) })
} }
}) })
}, },
handleCancle() { 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 => { duplicateCheck(params).then(res => {
if (res.success) { if (res.success) {
callback(res.message) callback()
} else { } else {
callback('文件夹名称已存在') callback('文件夹名称已存在')
} }