【变更】文档拆分 80787

This commit is contained in:
赵霄
2024-01-26 17:54:56 +08:00
parent 4d77bb666c
commit 53aa80a5a1
7 changed files with 156 additions and 47 deletions
+52 -7
View File
@@ -14,7 +14,7 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="10"> <a-col :span="10">
<a-form-item :label="$t('treeSelection.primaryNodeName')" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item :label="$t('treeSelection.primaryNodeName')" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-input :placeholder="$t('pleaseEnter') + $t('treeSelection.primaryNodeName')" v-model="queryParam.itemText" /> <a-input :placeholder="$t('pleaseEnter') + $t('treeSelection.primaryNodeName')" v-model="queryParam[searchField]" />
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
@@ -36,9 +36,9 @@
:scroll="{x: '100%'}" :scroll="{x: '100%'}"
:data-source="dataSource" :data-source="dataSource"
:pagination="ipagination" :pagination="ipagination"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type: type }" :row-selection="rowSelection"
:loading="confirmLoading" :loading="confirmLoading"
childrenColumnName="childPartNameList" :childrenColumnName="childrenFieldName"
@change="handleTableChange"> @change="handleTableChange">
<template slot="text" slot-scope="text"> <template slot="text" slot-scope="text">
<a-tooltip overlay-class-name="tooltip-style"> <a-tooltip overlay-class-name="tooltip-style">
@@ -61,6 +61,7 @@
<script> <script>
import { getAction } from '../../api/manage' import { getAction } from '../../api/manage'
import { StandardSource } from '../../enums/commonEnums'
export default { export default {
name: 'TreeSelectModal', name: 'TreeSelectModal',
@@ -86,6 +87,38 @@ export default {
type: String, type: String,
required: false, required: false,
default: '' default: ''
},
// 树形数据取值字段
childrenColumnName: {
type: String,
required: false,
default: 'childPartNameList'
},
// 标签库的限制,只能选第三级
isTagLibraryRestriction: {
type: Boolean,
required: false,
default: false
},
// 查询传的字段值
searchFieldName: {
type: String,
required: false,
default: 'nodeName'
}
},
computed: {
rowSelection () {
return {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange,
type: this.type,
getCheckboxProps: record => ({
props: {
disabled: this.isTagLibraryRestriction ? record.level + '' !== '3' : false
}
})
}
} }
}, },
data () { data () {
@@ -122,13 +155,15 @@ export default {
], ],
dataSource: [], dataSource: [],
selectedRowKeys: [], selectedRowKeys: [],
url: { childrenFieldName: 'childPartNameList',
queryByCodes: '/laws/standard/partName/echo' searchField: 'nodeName'
}
} }
}, },
methods: { methods: {
open (values) { open (values) {
// 处理零部件和标签的字段不一致的问题,默认的是零部件的
this.childrenFieldName = this.childrenColumnName || 'childPartNameList'
this.searchField = this.searchFieldName || 'nodeName'
this.visible = true this.visible = true
this.selectedRowKeys = values ? values.split(',') : [] this.selectedRowKeys = values ? values.split(',') : []
this.loadData(1) this.loadData(1)
@@ -235,7 +270,17 @@ export default {
const params = { const params = {
selectNodeCodes: codes selectNodeCodes: codes
} }
getAction(this.url.queryByCodes, params).then(res => { let url
// 零部件
if (this.optionsHref === '/laws/standard/partName/') {
url = '/laws/standard/partName/echo'
} else if (this.optionsHref === '/laws/lawsLabelDatabase/queryTreeList') { // 标签库
url = '/laws/lawsLabelDatabase/queryByCodes'
}
if (!url) {
return
}
getAction(url, params).then(res => {
if (res.success) { if (res.success) {
this.dataSourceRight = res.result || [] this.dataSourceRight = res.result || []
} }
+2 -2
View File
@@ -13,7 +13,7 @@
{{ $t('userSelect.select') }} {{ $t('userSelect.select') }}
</a-button> </a-button>
<tree-select-modal ref="selectModal" v-bind="$attrs" @change="selectChange" @nameChange="nameChange"/> <tree-select-modal ref="selectModal" v-bind="$attrs" @change="selectChange" @nameChange="nameChange" />
</div> </div>
</template> </template>
@@ -45,7 +45,7 @@ export default {
default: () => { default: () => {
return '' return ''
} }
}, }
}, },
watch: { watch: {
nameStr: { nameStr: {
+17 -3
View File
@@ -412,8 +412,16 @@ export const EsInitChangeNodes = new EsEnums({
mainDrafterStart: { text: '主起草人发起', value: 'sid-7120EF36-78C3-4DB0-8B49-91178F79C24B' }, mainDrafterStart: { text: '主起草人发起', value: 'sid-7120EF36-78C3-4DB0-8B49-91178F79C24B' },
contactCheck: { text: '部所联络人校对', value: 'sid-BB1FF9A5-89DF-4356-AB16-9D68B8FABC04' }, contactCheck: { text: '部所联络人校对', value: 'sid-BB1FF9A5-89DF-4356-AB16-9D68B8FABC04' },
expertApproval: { text: '专家审批', value: 'sid-ABE29414-15C7-4798-B690-E53055F6CA75' }, expertApproval: { text: '专家审批', value: 'sid-ABE29414-15C7-4798-B690-E53055F6CA75' },
leaderApproval: { initiationText: '发起人主管级领导审批', changeText: '主起草人主管级领导审批', value: 'sid-A58C400F-BA13-4125-9B00-45EB45F1A559' }, leaderApproval: {
leaderLeaderApproval: { initiationText: '发起人主管级上一级领导审批', changeText: '主起草人主管级上一级领导审批', value: 'sid-298A57B6-6658-47C0-94EB-76E3A5790258' }, initiationText: '发起人主管级领导审批',
changeText: '主起草人主管级领导审批',
value: 'sid-A58C400F-BA13-4125-9B00-45EB45F1A559'
},
leaderLeaderApproval: {
initiationText: '发起人主管级上一级领导审批',
changeText: '主起草人主管级上一级领导审批',
value: 'sid-298A57B6-6658-47C0-94EB-76E3A5790258'
},
standardizationApproval: { text: '标准化审批', value: 'sid-06CB29CE-E39F-4CD2-A534-18546DC8C6FB' }, standardizationApproval: { text: '标准化审批', value: 'sid-06CB29CE-E39F-4CD2-A534-18546DC8C6FB' },
newDraftUnitLeaderLeaderSend: { text: '新起草部门主管级上一级领导下发', value: 'sid-AB70F1CA-8311-4639-B3DA-204EF3332B29' }, newDraftUnitLeaderLeaderSend: { text: '新起草部门主管级上一级领导下发', value: 'sid-AB70F1CA-8311-4639-B3DA-204EF3332B29' },
newDraftUnitLeaderConfirm: { text: '新起草部门主管级领导确认', value: 'sid-A26EC37C-7C93-4987-9833-363C4E25EC50' }, newDraftUnitLeaderConfirm: { text: '新起草部门主管级领导确认', value: 'sid-A26EC37C-7C93-4987-9833-363C4E25EC50' },
@@ -559,5 +567,11 @@ export const InconformityItemState = {
// 法规合规评估结果 // 法规合规评估结果
export const StandardEvaluationResultType = { export const StandardEvaluationResultType = {
accordWith: { text: '符合', value: '1' }, accordWith: { text: '符合', value: '1' },
inconformity: { text: '不符合', value: '2' }, inconformity: { text: '不符合', value: '2' }
} }
// 条款使用范围
export const ClauseUsableRange = new EsEnums({
DOMESTIC: { text: '国标', value: '1' },
ENTERPRISE: { text: '企标', value: '3' }
})
@@ -380,7 +380,7 @@ export default {
getClauseTreeData(params).then(res => { getClauseTreeData(params).then(res => {
if (res.success) { if (res.success) {
this.treeData = res.result || [] this.treeData = res.result || []
this.expandedKeys = this.treeData.length > 0 ? this.treeData[0].id : [] this.expandedKeys = this.treeData.length > 0 ? [this.treeData[0].id] : []
} }
}).finally(() => { }).finally(() => {
this.treeLoading = false this.treeLoading = false
@@ -41,7 +41,7 @@
<!-- 1, 日期单选 --> <!-- 1, 日期单选 -->
<a-date-picker v-else-if="item.fieldShowType === FieldType.DATE_SINGLE.value" <a-date-picker v-else-if="item.fieldShowType === FieldType.DATE_SINGLE.value"
class="box-input" class="box-input"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
@@ -51,7 +51,7 @@
style="width: 100%" /> style="width: 100%" />
<!-- 2, 单选用户 --> <!-- 2, 单选用户 -->
<user-selection v-else-if="item.fieldShowType === FieldType.USER_SINGLE.value" <user-selection v-else-if="item.fieldShowType === FieldType.USER_SINGLE.value"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:filedName="item.dbFieldName" :filedName="item.dbFieldName"
@nameChange="userSelectNameChange" @nameChange="userSelectNameChange"
@@ -70,7 +70,7 @@
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" /> :disabled="disabled || disabledFieldList.includes(item.dbFieldName)" />
<!-- 5, 多行文本 --> <!-- 5, 多行文本 -->
<a-textarea v-else-if="item.fieldShowType === FieldType.TEXTAREA.value" <a-textarea v-else-if="item.fieldShowType === FieldType.TEXTAREA.value"
:placeholder="$t('pleaseEnter')+item.dbFieldTxt" :placeholder="$t('pleaseEnter')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:maxLength="500" :maxLength="500"
v-model="formInline[item.dbFieldName]" :rows="4" /> v-model="formInline[item.dbFieldName]" :rows="4" />
@@ -103,13 +103,13 @@
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:maxLength="50" :maxLength="50"
@change="event => event.target.value = event.target.value.trim()" @change="event => event.target.value = event.target.value.trim()"
:placeholder="specialPlaceholder[item.dbFieldName] || $t('pleaseEnter')+item.dbFieldTxt" /> :placeholder="(specialPlaceholder[item.dbFieldName] || $t('pleaseEnter')+item.dbFieldTxt) || + getPlaceholderSuffix(item)" />
<!-- 10, 下拉单选(数据字典) --> <!-- 10, 下拉单选(数据字典) -->
<j-dict-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_SINGLE.value" <j-dict-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_SINGLE.value"
class="box-input" class="box-input"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:type="radioDictSelect.includes(item.dbFieldName)? 'radio' : 'select'" :type="radioDictSelect.includes(item.dbFieldName)? 'radio' : 'select'"
:triggerChange="false" :triggerChange="false"
@change="updateDom" @change="updateDom"
@@ -119,7 +119,7 @@
class="box-input" class="box-input"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:type="'select'" :type="'select'"
@change="updateDom" @change="updateDom"
:triggerChange="false" :triggerChange="false"
@@ -134,7 +134,7 @@
treeCheckStrictly treeCheckStrictly
:label-in-value="false" :label-in-value="false"
@change="updateDom" @change="updateDom"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" /> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!-- 14, 年份选择 --> <!-- 14, 年份选择 -->
<j-date v-else-if="item.fieldShowType === FieldType.YEAR_PICKER.value" <j-date v-else-if="item.fieldShowType === FieldType.YEAR_PICKER.value"
show-type="year" show-type="year"
@@ -142,7 +142,7 @@
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:default-value="defaultValue[item.dbFieldName]" :default-value="defaultValue[item.dbFieldName]"
date-format="YYYY" date-format="YYYY"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" /> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!-- 15, 树选择(单选) --> <!-- 15, 树选择(单选) -->
<s-tree-select v-else-if="item.fieldShowType === FieldType.TREE_SINGLE.value" <s-tree-select v-else-if="item.fieldShowType === FieldType.TREE_SINGLE.value"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
@@ -150,17 +150,20 @@
:tree-data="optionsData[item.dbFieldName]" :tree-data="optionsData[item.dbFieldName]"
:label-in-value="false" :label-in-value="false"
@change="updateDom" @change="updateDom"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" /> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!--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"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:filedName="item.dbFieldName" :filedName="item.dbFieldName"
type="checkbox" type="checkbox"
:options-href="item.fieldHref" :options-href="item.fieldHref"
:nameStr="formInline[item.dbFieldName + '_dictText']" :nameStr="formInline[item.dbFieldName + '_dictText']"
:dict-id="item.dictId" :dict-id="item.dictId"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" /> :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:children-column-name="getTreeSelectionChildrenColumnName(item)"
:is-tag-library-restriction="item.dbFieldName === 'property_tag'"
:search-field-name="item.dbFieldName === 'property_tag' ? 'firstNodeName' : null" />
</a-form-model-item> </a-form-model-item>
</div> </div>
</template> </template>
@@ -231,7 +234,7 @@ import {
} from '../../../../api/documentToolApi.js' } from '../../../../api/documentToolApi.js'
import UserSelection from '../../../../components/selection/UserSelection.vue' import UserSelection from '../../../../components/selection/UserSelection.vue'
import JMultipleDatePicker from '../../../../components/JMultipleDatePicker.vue' import JMultipleDatePicker from '../../../../components/JMultipleDatePicker.vue'
import { FieldType, TypeOfClauseItem, YesOrNoEnum } from '../../../../enums/commonEnums' import { ClauseUsableRange, FieldType, TypeOfClauseItem, YesOrNoEnum } from '../../../../enums/commonEnums'
import { getAction } from '../../../../api/manage' import { getAction } from '../../../../api/manage'
import { getFormDictTreeList } from '../../../../api/api' import { getFormDictTreeList } from '../../../../api/api'
import STreeSelect from '../../../../components/STreeSelect' import STreeSelect from '../../../../components/STreeSelect'
@@ -703,6 +706,28 @@ export default {
filterTreeOption (input, option) { filterTreeOption (input, option) {
const text = option.componentOptions.propsData.title || option.componentOptions.propsData.label const text = option.componentOptions.propsData.title || option.componentOptions.propsData.label
return text.toLowerCase().indexOf(input.toLowerCase()) >= 0 return text.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
/**
* 属性标识的子集字段处理
* @param field
* @returns {null|string}
*/
getTreeSelectionChildrenColumnName (field) {
if (field.dbFieldName === 'property_tag') {
return 'childrenList'
}
return null
},
/**
* 如果字段中的usableRange只有一个值,那么就需要在placeholder中标识
* @param field
*/
getPlaceholderSuffix (field) {
const fieldUsableRange = (field.usableRange || '').split(',')
if (fieldUsableRange.length === 1) {
return `(${ClauseUsableRange.nameOfIndex(fieldUsableRange[0])})`
}
return ''
} }
} }
} }
@@ -39,50 +39,50 @@
<!-- 1, 日期单选 --> <!-- 1, 日期单选 -->
<a-date-picker v-if="item.fieldShowType === FieldType.DATE_SINGLE.value" <a-date-picker v-if="item.fieldShowType === FieldType.DATE_SINGLE.value"
class="box-input" class="box-input"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
style="width: 100%"/> style="width: 100%" />
<!-- 2, 单选用户 --> <!-- 2, 单选用户 -->
<user-selection v-else-if="item.fieldShowType === FieldType.USER_SINGLE.value" <user-selection v-else-if="item.fieldShowType === FieldType.USER_SINGLE.value"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:filedName="item.dbFieldName" :filedName="item.dbFieldName"
@nameChange="userSelectNameChange" @nameChange="userSelectNameChange"
:nameStr="formInline[item.dbFieldName + '_dictText']" :nameStr="formInline[item.dbFieldName + '_dictText']"
type="radio" type="radio"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)"/> :disabled="disabled || disabledFieldList.includes(item.dbFieldName)" />
<!-- 3, 单选组织机构 --> <!-- 3, 单选组织机构 -->
<j-select-depart v-else-if="item.fieldShowType === FieldType.ORGAN_SINGLE.value" <j-select-depart v-else-if="item.fieldShowType === FieldType.ORGAN_SINGLE.value"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:backDepart="true"/> :backDepart="true" />
<!-- 4, 日期多选 --> <!-- 4, 日期多选 -->
<j-multiple-date-picker v-else-if="item.fieldShowType === FieldType.DATE_MORE.value" <j-multiple-date-picker v-else-if="item.fieldShowType === FieldType.DATE_MORE.value"
class="box-input" class="box-input"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:fieldName="item.dbFieldName" :fieldName="item.dbFieldName"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)"/> :disabled="disabled || disabledFieldList.includes(item.dbFieldName)" />
<!-- 5, 多行文本 --> <!-- 5, 多行文本 -->
<a-textarea v-else-if="item.fieldShowType === FieldType.TEXTAREA.value" <a-textarea v-else-if="item.fieldShowType === FieldType.TEXTAREA.value"
:placeholder="$t('pleaseEnter')+item.dbFieldTxt" :placeholder="$t('pleaseEnter')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:maxLength="500" :maxLength="500"
v-model="formInline[item.dbFieldName]" :rows="4"/> v-model="formInline[item.dbFieldName]" :rows="4" />
<!-- 6, 标准多选 --> <!-- 6, 标准多选 -->
<standard-selection v-else-if="item.fieldShowType === FieldType.STANDARD_MORE.value" <standard-selection v-else-if="item.fieldShowType === FieldType.STANDARD_MORE.value"
:source="flag" :source="flag"
:disabledSourceSearch="true" :disabledSourceSearch="true"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
v-model="formInline[item.dbFieldName]"/> v-model="formInline[item.dbFieldName]" />
<!-- 7, 多选组织机构 --> <!-- 7, 多选组织机构 -->
<j-select-depart v-else-if="item.fieldShowType === FieldType.ORGAN_MORE.value" <j-select-depart v-else-if="item.fieldShowType === FieldType.ORGAN_MORE.value"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:multi="true" :multi="true"
:backDepart="true" :backDepart="true"
:treeOpera="true"/> :treeOpera="true" />
<!-- 8, 上传文件 --> <!-- 8, 上传文件 -->
<a-button v-else-if="item.fieldShowType === FieldType.FILE_UP.value" type="primary" class="button-text" <a-button v-else-if="item.fieldShowType === FieldType.FILE_UP.value" type="primary" class="button-text"
@click="clickButtonToUpload(item)"> @click="clickButtonToUpload(item)">
@@ -100,25 +100,25 @@
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:maxLength="50" :maxLength="50"
@change="event => event.target.value = event.target.value.trim()" @change="event => event.target.value = event.target.value.trim()"
:placeholder="specialPlaceholder[item.dbFieldName] || $t('pleaseEnter')+item.dbFieldTxt"/> :placeholder="(specialPlaceholder[item.dbFieldName] || $t('pleaseEnter')+item.dbFieldTxt) + getPlaceholderSuffix(item)" />
<!-- 10, 下拉单选(数据字典) --> <!-- 10, 下拉单选(数据字典) -->
<j-dict-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_SINGLE.value" <j-dict-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_SINGLE.value"
class="box-input" class="box-input"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:type="radioDictSelect.includes(item.dbFieldName)? 'radio' : 'select'" :type="radioDictSelect.includes(item.dbFieldName)? 'radio' : 'select'"
:triggerChange="false" :triggerChange="false"
:dictCode="item.dictField"/> :dictCode="item.dictField" />
<!-- 11, 下拉多选(数据字典) --> <!-- 11, 下拉多选(数据字典) -->
<j-multi-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_MORE.value" <j-multi-select-tag v-else-if="item.fieldShowType === FieldType.OPTION_MORE.value"
class="box-input" class="box-input"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
:type="'select'" :type="'select'"
:triggerChange="false" :triggerChange="false"
:dictCode="item.dictField"/> :dictCode="item.dictField" />
<!-- 12, 树选择 --> <!-- 12, 树选择 -->
<s-tree-select <s-tree-select
v-else-if="item.fieldShowType === FieldType.TREE.value" v-else-if="item.fieldShowType === FieldType.TREE.value"
@@ -128,7 +128,7 @@
tree-checkable tree-checkable
treeCheckStrictly treeCheckStrictly
:label-in-value="false" :label-in-value="false"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"/> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!-- 14, 年份选择 --> <!-- 14, 年份选择 -->
<j-date v-else-if="item.fieldShowType === FieldType.YEAR_PICKER.value" <j-date v-else-if="item.fieldShowType === FieldType.YEAR_PICKER.value"
show-type="year" show-type="year"
@@ -136,7 +136,7 @@
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:default-value="defaultValue[item.dbFieldName]" :default-value="defaultValue[item.dbFieldName]"
date-format="YYYY" date-format="YYYY"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"/> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!-- 15, 树选择(单选) --> <!-- 15, 树选择(单选) -->
<s-tree-select v-else-if="item.fieldShowType === FieldType.TREE_SINGLE.value" <s-tree-select v-else-if="item.fieldShowType === FieldType.TREE_SINGLE.value"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
@@ -145,17 +145,20 @@
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:tree-data="optionsData[item.dbFieldName]" :tree-data="optionsData[item.dbFieldName]"
:label-in-value="false" :label-in-value="false"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt"/> :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)" />
<!--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"
:placeholder="$t('pleaseSelect')+item.dbFieldTxt" :placeholder="$t('pleaseSelect')+item.dbFieldTxt + getPlaceholderSuffix(item)"
v-model="formInline[item.dbFieldName]" v-model="formInline[item.dbFieldName]"
:filedName="item.dbFieldName" :filedName="item.dbFieldName"
type="checkbox" type="checkbox"
:options-href="item.fieldHref" :options-href="item.fieldHref"
:nameStr="formInline[item.dbFieldName + '_dictText']" :nameStr="formInline[item.dbFieldName + '_dictText']"
:dict-id="item.dictId" :dict-id="item.dictId"
:disabled="disabled || disabledFieldList.includes(item.dbFieldName)" /> :disabled="disabled || disabledFieldList.includes(item.dbFieldName)"
:children-column-name="getTreeSelectionChildrenColumnName(item)"
:is-tag-library-restriction="item.dbFieldName === 'property_tag'"
:search-field-name="item.dbFieldName === 'property_tag' ? 'firstNodeName' : null" />
</a-form-model-item> </a-form-model-item>
</div> </div>
</template> </template>
@@ -180,7 +183,7 @@ import UploadFile from '../../../../components/UploadFile.vue'
import StandardSelection from '../../../../components/selection/StandardSelection.vue' import StandardSelection from '../../../../components/selection/StandardSelection.vue'
import UserSelection from '../../../../components/selection/UserSelection.vue' import UserSelection from '../../../../components/selection/UserSelection.vue'
import { getDocSplitEditForm, editBatchEditClause } from '../../../../api/documentToolApi' import { getDocSplitEditForm, editBatchEditClause } from '../../../../api/documentToolApi'
import { FieldType, YesOrNoEnum } from '../../../../enums/commonEnums' import { ClauseUsableRange, FieldType, YesOrNoEnum } from '../../../../enums/commonEnums'
import { getFormDictTreeList } from '../../../../api/api' import { getFormDictTreeList } from '../../../../api/api'
import { getAction } from '../../../../api/manage' import { getAction } from '../../../../api/manage'
import STreeSelect from '../../../../components/STreeSelect' import STreeSelect from '../../../../components/STreeSelect'
@@ -444,6 +447,28 @@ export default {
filterTreeOption (input, option) { filterTreeOption (input, option) {
const text = option.componentOptions.propsData.title || option.componentOptions.propsData.label const text = option.componentOptions.propsData.title || option.componentOptions.propsData.label
return text.toLowerCase().indexOf(input.toLowerCase()) >= 0 return text.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
/**
* 属性标识的子集字段处理
* @param field
* @returns {null|string}
*/
getTreeSelectionChildrenColumnName (field) {
if (field.dbFieldName === 'property_tag') {
return 'childrenList'
}
return null
},
/**
* 如果字段中的usableRange只有一个值,那么就需要在placeholder中标识
* @param field
*/
getPlaceholderSuffix (field) {
const fieldUsableRange = (field.usableRange || '').split(',')
if (fieldUsableRange.length === 1) {
return `(${ClauseUsableRange.nameOfIndex(fieldUsableRange[0])})`
}
return ''
} }
} }
} }
@@ -110,7 +110,7 @@
<!--使用范围--> <!--使用范围-->
<a-form-model-item :label="$t('system.tag.usableRange')" prop="usableRange"> <a-form-model-item :label="$t('system.tag.usableRange')" prop="usableRange">
<j-multi-select-tag v-model="form.usableRange" <j-multi-select-tag v-model="form.usableRange"
:options="usableRangeOptions" dict-code="clause_usable_range"
:placeholder="$t('pleaseSelect') + $t('system.tag.usableRange')" /> :placeholder="$t('pleaseSelect') + $t('system.tag.usableRange')" />
</a-form-model-item> </a-form-model-item>
<!-- 文档拆分列表展示--> <!-- 文档拆分列表展示-->