2c467c9c by lihua

标准代码表新增排序字段

1 parent 1d54f177
...@@ -45,6 +45,9 @@ const currentNodeKey = computed(() => { ...@@ -45,6 +45,9 @@ const currentNodeKey = computed(() => {
45 if (props.treeInfo.currentNodeKey) { 45 if (props.treeInfo.currentNodeKey) {
46 nextTick(() => { 46 nextTick(() => {
47 let domItems = treeRef.value?.$el.getElementsByClassName('el-tree-node'); 47 let domItems = treeRef.value?.$el.getElementsByClassName('el-tree-node');
48 if (!domItems?.length) {
49 return;
50 }
48 let clientHeight = treeRef.value?.$el.clientHeight; 51 let clientHeight = treeRef.value?.$el.clientHeight;
49 for (const item of domItems) { 52 for (const item of domItems) {
50 if (item.getAttribute('data-key') == props.treeInfo.currentNodeKey) { 53 if (item.getAttribute('data-key') == props.treeInfo.currentNodeKey) {
......
...@@ -63,6 +63,22 @@ ...@@ -63,6 +63,22 @@
63 </el-form-item> 63 </el-form-item>
64 </el-col> 64 </el-col>
65 65
66 <el-col :span="12" style="padding-right:10px;display: inline-flex;">
67 <el-form-item label="排序字段" prop="orderField" style="width: 70%;">
68 <el-select v-model="form.orderField" placeholder="请选择">
69 <el-option v-for="item in form.fieldRQVOS?.filter(f => f.fileNameCode != '').map(f => {
70 return {
71 value: f.fileNameCode,
72 label: fieldOptions.find(s => s.value == f.fileNameCode).label
73 }
74 }) || []" :label="item.label" :value="item.value" :key="item.value"></el-option>
75 </el-select>
76 </el-form-item>
77 <el-form-item label="" prop="isDisplay" style="margin-left: 12px;margin-top: 26px;">
78 <el-checkbox v-model="form.isDisplay" :true-label="'Y'" :false-label="'N'">是否展示</el-checkbox>
79 </el-form-item>
80 </el-col>
81
66 <el-col :span="24"> 82 <el-col :span="24">
67 <el-form-item label="描述" prop="description"> 83 <el-form-item label="描述" prop="description">
68 <el-input 84 <el-input
...@@ -78,6 +94,8 @@ ...@@ -78,6 +94,8 @@
78 <el-form-item label="自定义字段选择" v-if="fieldsTableShow" required> 94 <el-form-item label="自定义字段选择" v-if="fieldsTableShow" required>
79 <div class="table-form"> 95 <div class="table-form">
80 <div class="table-form-wrapper" v-for="item,index in form.fieldRQVOS" :key="index"> 96 <div class="table-form-wrapper" v-for="item,index in form.fieldRQVOS" :key="index">
97 <div :style="{ display: 'inline-flex', width: !fieldsDisabled ? 'calc(100% - 30px)' : '100%' }">
98
81 <div class="table-form-item"> 99 <div class="table-form-item">
82 <el-select v-model="item.fileNameCode" style="width:160px" filterable clearable :disabled="fieldsDisabled"> 100 <el-select v-model="item.fileNameCode" style="width:160px" filterable clearable :disabled="fieldsDisabled">
83 <el-option v-for="item in fieldOptions" :label="item.label" :value="item.value" :key="item.value"></el-option> 101 <el-option v-for="item in fieldOptions" :label="item.label" :value="item.value" :key="item.value"></el-option>
...@@ -114,6 +132,7 @@ ...@@ -114,6 +132,7 @@
114 placeholder="请输入" 132 placeholder="请输入"
115 ></el-input> 133 ></el-input>
116 </div> 134 </div>
135 </div>
117 <div class="table-form-operation" v-if="!fieldsDisabled"> 136 <div class="table-form-operation" v-if="!fieldsDisabled">
118 <!-- <el-icon color="#4fa1a4" @click="() => addTableItem(index)"> 137 <!-- <el-icon color="#4fa1a4" @click="() => addTableItem(index)">
119 <CirclePlus /> 138 <CirclePlus />
...@@ -219,13 +238,16 @@ const formTpl = { ...@@ -219,13 +238,16 @@ const formTpl = {
219 publishingUnitCode: '', 238 publishingUnitCode: '',
220 parentGuid: '', 239 parentGuid: '',
221 description: '', 240 description: '',
222 fieldRQVOS: null 241 fieldRQVOS: null,
242 orderField: '',//排序字段
243 isDisplay: 'Y' //是否显示
223 } 244 }
224 const form = ref({...formTpl}) 245 const form = ref({...formTpl})
225 const formRules = { 246 const formRules = {
226 standardName: { required: true, message: '请填写元数据标准名称' }, 247 standardName: { required: true, message: '请填写元数据标准名称' },
227 orderNum: { required: true, message: '请填写排序' }, 248 orderNum: { required: true, message: '请填写排序' },
228 publishingUnitCode: { required: false, message: '请选择发布的单位' } 249 publishingUnitCode: { required: false, message: '请选择发布的单位' },
250 orderField: { required: true, message: '请选择排序字段' },
229 } 251 }
230 252
231 function parentGuidChange (val) { 253 function parentGuidChange (val) {
...@@ -325,7 +347,11 @@ function addTableItem (index) { ...@@ -325,7 +347,11 @@ function addTableItem (index) {
325 }) 347 })
326 } 348 }
327 function deleteTableItem (index) { 349 function deleteTableItem (index) {
328 form.value.fieldRQVOS.splice(index, 1) 350 let item = form.value.fieldRQVOS[index];
351 form.value.fieldRQVOS.splice(index, 1);
352 if (form.value.orderField == item.fileNameCode) {
353 form.value.orderField = '';
354 }
329 } 355 }
330 function inputTypeChange (val, item) { 356 function inputTypeChange (val, item) {
331 console.log(val) 357 console.log(val)
......
...@@ -1471,7 +1471,9 @@ const radioGroupChange = async (val, info) => { ...@@ -1471,7 +1471,9 @@ const radioGroupChange = async (val, info) => {
1471 } 1471 }
1472 1472
1473 function initTree () { 1473 function initTree () {
1474 treeInfo.value.loading = true;
1474 return Promise.all([getParamsList({ dictType: '标准类型'}), getStandardCodeTree()]).then((resList:any) => { 1475 return Promise.all([getParamsList({ dictType: '标准类型'}), getStandardCodeTree()]).then((resList:any) => {
1476 treeInfo.value.loading = false;
1475 let treeRoot = resList[0].data || [] 1477 let treeRoot = resList[0].data || []
1476 let treeData = resList[1].data || [] 1478 let treeData = resList[1].data || []
1477 // console.log('treeRoot', treeRoot) 1479 // console.log('treeRoot', treeRoot)
......
...@@ -242,13 +242,20 @@ function getTableFields () { ...@@ -242,13 +242,20 @@ function getTableFields () {
242 if (res.code === proxy.$passCode && res.data) { 242 if (res.code === proxy.$passCode && res.data) {
243 const data = res.data 243 const data = res.data
244 standardFields.value = data 244 standardFields.value = data
245 const fields = data.map(item => { 245 let orderFieldIndex = null;
246 const fields = data.map((item, index) => {
247 if (currentObj.orderField && currentObj.orderField == item.fileNameCode) {
248 orderFieldIndex = index;
249 }
246 return { 250 return {
247 label: item.fileNameCodeName, 251 label: item.fileNameCodeName,
248 field: item.fileNameCode, 252 field: item.fileNameCode,
249 width: 140 253 width: 140
250 } 254 }
251 }) 255 })
256 if (currentObj.orderField && currentObj.isDisplay == 'N') {
257 fields.splice(orderFieldIndex, 1);
258 }
252 fields.unshift(indexField) 259 fields.unshift(indexField)
253 tableInfo.value.fields = fields 260 tableInfo.value.fields = fields
254 } else { 261 } else {
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!