[update] 属性类型增加树形弹框(带出子集和单线父级)
This commit is contained in:
@@ -130,7 +130,7 @@
|
|||||||
:label-in-value="false"
|
:label-in-value="false"
|
||||||
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
||||||
<!--16、树形弹框选择-->
|
<!--16、树形弹框选择-->
|
||||||
<tree-selection v-else-if="item.fieldShowType === FieldType.TREE_MODAL_SELECT.value"
|
<tree-selection v-else-if="item.fieldShowType === FieldType.TREE_MODAL_SELECT.value || item.fieldShowType === FieldType.TREE_MODAL_SELECT_SEARCH_DIFF.value"
|
||||||
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"
|
||||||
v-model="formInline[item.dbFieldName]"
|
v-model="formInline[item.dbFieldName]"
|
||||||
@nameChange="treeSelectNameChange"
|
@nameChange="treeSelectNameChange"
|
||||||
@@ -145,7 +145,8 @@
|
|||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<upload-file ref="uploadFile" @change="uploadFileChange" :return-url="false"></upload-file>
|
<upload-file ref="uploadFile" @change="uploadFileChange" :return-url="false"
|
||||||
|
:is-download="fileIsDownload"></upload-file>
|
||||||
</a-form-model>
|
</a-form-model>
|
||||||
</a-spin>
|
</a-spin>
|
||||||
</template>
|
</template>
|
||||||
@@ -168,6 +169,7 @@ import { getAction } from '../../api/manage.js'
|
|||||||
import { ajaxGetDictItems, getFormDictTreeList } from '../../api/api.js'
|
import { ajaxGetDictItems, getFormDictTreeList } from '../../api/api.js'
|
||||||
import TreeSelection from '../selection/TreeSelection'
|
import TreeSelection from '../selection/TreeSelection'
|
||||||
import STreeSelect from '../STreeSelect'
|
import STreeSelect from '../STreeSelect'
|
||||||
|
import { isHasPermission } from '../../utils/hasPermission'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'AddForm',
|
name: 'AddForm',
|
||||||
@@ -275,12 +277,6 @@ export default {
|
|||||||
return []
|
return []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 是否需要进行国内标准的特殊校验
|
|
||||||
domesticSpecialCheck: {
|
|
||||||
type: Boolean,
|
|
||||||
required: false,
|
|
||||||
default: false
|
|
||||||
},
|
|
||||||
// 选择标准字段和选择来源的对应关系
|
// 选择标准字段和选择来源的对应关系
|
||||||
flagByField: {
|
flagByField: {
|
||||||
type: Object,
|
type: Object,
|
||||||
@@ -318,7 +314,10 @@ export default {
|
|||||||
departSelectRange: [], // 选择部门的选择范围,传了就只能从这些里面选,不传就都能选
|
departSelectRange: [], // 选择部门的选择范围,传了就只能从这些里面选,不传就都能选
|
||||||
isEditSetData: false, // 正在编辑回显数据
|
isEditSetData: false, // 正在编辑回显数据
|
||||||
oldMainDraftingUnit: '', // 上一次的主起草单位
|
oldMainDraftingUnit: '', // 上一次的主起草单位
|
||||||
dictNotCodes: ['name_code'] // 用到字典的字段不传dictCode的字段
|
dictNotCodes: ['name_code'], // 用到字典的字段不传dictCode的字段
|
||||||
|
filePerm: { // 上传文件根据权限控制只能查看
|
||||||
|
associated_file: 'enterpriseStandard:associatedFile:look' // 关联文件
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@@ -349,7 +348,15 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
fileIsDownload () { // 文件是否可下载
|
||||||
|
// const isDisabled
|
||||||
|
// return Object.keys(filePerm).includes(uploadName) ? isHasPermission(filePerm[uploadName]) :
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
isHasPermission,
|
||||||
add () {
|
add () {
|
||||||
this.formInline = Object.assign({}, this.defaultValue)
|
this.formInline = Object.assign({}, this.defaultValue)
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
|
|||||||
@@ -131,6 +131,24 @@
|
|||||||
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</template>
|
</template>
|
||||||
|
<!-- 树形弹框(带出子集和单线父级) -->
|
||||||
|
<template v-if="item.fieldShowType === FieldType.TREE_MODAL_SELECT_SEARCH_DIFF.value">
|
||||||
|
<a-form-item :label="item.dbFieldTxt" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-tree-select
|
||||||
|
tree-node-filter-prop="title"
|
||||||
|
v-model="queryParam[item.dbFieldName]"
|
||||||
|
:maxTagCount="1"
|
||||||
|
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||||
|
:tree-data="optionsData[item.dbFieldName]"
|
||||||
|
:replaceFields="{key: 'id', value: 'id', title: 'name', children: 'childPartNameList'}"
|
||||||
|
tree-checkable
|
||||||
|
show-search
|
||||||
|
allowClear
|
||||||
|
:filterTreeNode="filterTreeOption"
|
||||||
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"
|
||||||
|
/>
|
||||||
|
</a-form-item>
|
||||||
|
</template>
|
||||||
</a-col>
|
</a-col>
|
||||||
<template v-if="searchList.length > minLength && toggleSearchStatus">
|
<template v-if="searchList.length > minLength && toggleSearchStatus">
|
||||||
<a-col :md="(24 / (minLength + 1))"
|
<a-col :md="(24 / (minLength + 1))"
|
||||||
@@ -256,6 +274,24 @@
|
|||||||
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</template>
|
</template>
|
||||||
|
<!-- 树形弹框(带出子集和单线父级) -->
|
||||||
|
<template v-if="item.fieldShowType === FieldType.TREE_MODAL_SELECT_SEARCH_DIFF.value">
|
||||||
|
<a-form-item :label="item.dbFieldTxt" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-tree-select
|
||||||
|
tree-node-filter-prop="title"
|
||||||
|
v-model="queryParam[item.dbFieldName]"
|
||||||
|
:maxTagCount="1"
|
||||||
|
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||||
|
:tree-data="optionsData[item.dbFieldName]"
|
||||||
|
:replaceFields="{key: 'id', value: 'id', title: 'name', children: 'childPartNameList'}"
|
||||||
|
tree-checkable
|
||||||
|
show-search
|
||||||
|
allowClear
|
||||||
|
:filterTreeNode="filterTreeOption"
|
||||||
|
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"
|
||||||
|
/>
|
||||||
|
</a-form-item>
|
||||||
|
</template>
|
||||||
</a-col>
|
</a-col>
|
||||||
</template>
|
</template>
|
||||||
<div style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
<div style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||||
@@ -407,12 +443,12 @@ export default {
|
|||||||
getOptionsData () {
|
getOptionsData () {
|
||||||
const formList = Object.values(this.searchList).reduce((acc, cur) => acc.concat(cur), [])
|
const formList = Object.values(this.searchList).reduce((acc, cur) => acc.concat(cur), [])
|
||||||
formList.forEach(item => {
|
formList.forEach(item => {
|
||||||
if (item.fieldShowType === FieldType.TREE.value || item.fieldShowType === FieldType.TREE_SINGLE.value) {
|
if (item.fieldShowType === FieldType.TREE.value || item.fieldShowType === FieldType.TREE_SINGLE.value || item.fieldShowType === FieldType.TREE_MODAL_SELECT_SEARCH_DIFF.value) {
|
||||||
// 展示类型是树选择,且有接口的
|
// 展示类型是树选择,且有接口的
|
||||||
if (item.fieldHref) {
|
if (item.fieldHref) {
|
||||||
getAction(item.fieldHref).then(res => {
|
getAction(item.fieldHref).then(res => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.$set(this.optionsData, item.dbFieldName, res.result)
|
this.$set(this.optionsData, item.dbFieldName, res.result.records || res.result)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else if (item.dictId) {
|
} else if (item.dictId) {
|
||||||
|
|||||||
@@ -28,7 +28,8 @@ export const FieldType = {
|
|||||||
// TEXT_LINK: { text: '输入框(链接)', value: '13' },
|
// TEXT_LINK: { text: '输入框(链接)', value: '13' },
|
||||||
YEAR_PICKER: { text: '年份选择', value: '14' },
|
YEAR_PICKER: { text: '年份选择', value: '14' },
|
||||||
TREE_SINGLE: { text: '树形结构(单选)', value: '15' },
|
TREE_SINGLE: { text: '树形结构(单选)', value: '15' },
|
||||||
TREE_MODAL_SELECT: { text: '树形弹框', value: '16' }
|
TREE_MODAL_SELECT: { text: '树形弹框', value: '16' },
|
||||||
|
TREE_MODAL_SELECT_SEARCH_DIFF: { text: '树形弹框(带出子集和单线父级)', value: '17' }
|
||||||
}
|
}
|
||||||
|
|
||||||
export const TagsTypeEnums = new EsEnums({
|
export const TagsTypeEnums = new EsEnums({
|
||||||
|
|||||||
Reference in New Issue
Block a user