Browse Source

优化

master
陈裕财 2 years ago
parent
commit
1162bd0e51
  1. 43
      src/views/mdp/lcode/formDef/Form.vue
  2. 10
      src/views/mdp/lcode/formField/FieldCfg.vue

43
src/views/mdp/lcode/formDef/Form.vue

@ -4,7 +4,7 @@
<form-field ref="formFields" :form-def.sync="editForm" :form-fields="formFields" :visible="formFieldsVisible">
<span slot="setBtn">
<el-button type="success" @click="goToFormDefIndex()" icon="el-icon-search">表单中心</el-button>
<el-button type="primary" icon="el-icon-setting" @click="$refs['formSetDialog'].open(editForm)">表单配置</el-button>
<el-button type="primary" icon="el-icon-setting" @click="$refs['formSetDialog'].open({pkOptions:getPkOptions()})">表单配置</el-button>
</span>
<el-input slot="formName" label="标题" v-model="editForm.formName" required width="100%"> </el-input>
</form-field>
@ -33,7 +33,7 @@
<el-form-item label="存储方式" prop="dataType">
<mdp-select item-code="form_data_type" show-style="tag" v-model="editForm.dataType"></mdp-select>
</el-form-item>
<el-form-item label="主键" prop="pks" >
<el-form-item label="主键" prop="pks" :rules="[{required:true,message:'此项必填',trigger:'change'}]" v-if="editForm.dataType=='1'||editForm.dataType=='3'">
<el-input v-model="editForm.pks" v-if="editForm.dataType=='2'" placeholder="宿主表主键将由后台自动获取" readonly></el-input>
<mdp-select v-else show-style="tag" :multiple="true" v-model="editForm.pks" :plus-options="pkOptions" :props="{id:'id',name:'title'}" split="," @change2="onPksChange"></mdp-select>
</el-form-item>
@ -95,19 +95,7 @@ export default {
},
computed: {
pkOptions(){
var pkOptions=[]
if(this.formFields){
pkOptions.push(...this.formFields.filter(k=>k.extType!='row' && k.extType!='card' && k.extType!='tabs'))
}
pkOptions.push({id:'cuserid',title:'创建用户编号'})
pkOptions.push({id:'deptid',title:'创建部门编号'})
pkOptions.push({id:'ctime:1',title:'创建日期(yyy)'})
pkOptions.push({id:'ctime:2',title:'创建日期(yyy-MM)'})
pkOptions.push({id:'ctime:3',title:'创建日期(yyy-MM-dd)'})
pkOptions.push({id:'ctime:4',title:'创建日期(yyy-MM-dd HH)'})
pkOptions.push({id:'ctime:5',title:'创建日期(yyy-MM-dd HH:mm)'})
pkOptions.push({id:'ctime:6',title:'创建日期(yyy-MM-dd HH:mm:ss)'})
return pkOptions;
return this.getPkOptions()
}
},
props:{
@ -154,6 +142,21 @@ export default {
},
methods: {
dataSourceList,
getPkOptions(){
var formFields=this.$refs.formFields.getFieldList();
var pkOptions=[...formFields.filter(k=>k.extType!='row' && k.extType!='card' && k.extType!='tabs')];
if(this.editForm.dataType=='1'){
pkOptions.push({id:'cuserid',title:'创建用户编号'})
pkOptions.push({id:'deptid',title:'创建部门编号'})
pkOptions.push({id:'ctime:1',title:'创建日期(yyy)'})
pkOptions.push({id:'ctime:2',title:'创建日期(yyy-MM)'})
pkOptions.push({id:'ctime:3',title:'创建日期(yyy-MM-dd)'})
pkOptions.push({id:'ctime:4',title:'创建日期(yyy-MM-dd HH)'})
pkOptions.push({id:'ctime:5',title:'创建日期(yyy-MM-dd HH:mm)'})
pkOptions.push({id:'ctime:6',title:'创建日期(yyy-MM-dd HH:mm:ss)'})
}
return pkOptions;
},
//(mounted+onOpen)
initCurrData(){
if(!this.formId){
@ -227,6 +230,14 @@ export default {
this.$notify({position:'bottom-left',showClose:true,message: '最少需要定义一个字段', type: 'error' });
return;
}
if(this.editForm.dataType=='1'||this.editForm.dataType=='3'){
if(!this.editForm.pks){
this.$notify({position:'bottom-left',showClose:true,message: '请设置表单主键', type: 'error' });
return;
}
}
this.$confirm('确认提交吗?', '提示', {}).then(() => {
this.load.edit=true
let formDef = Object.assign({}, this.editForm);
@ -279,7 +290,7 @@ export default {
if(formFields.length==0 ){
this.$notify({position:'bottom-left',showClose:true,message: '最少需要定义一个字段', type: 'error' });
return;
}
}
this.$confirm('确认提交吗?', '提示', {}).then(() => {
this.load.edit=true
let formDef = Object.assign({}, this.editForm);

10
src/views/mdp/lcode/formField/FieldCfg.vue

@ -20,9 +20,7 @@
:open-delay="700"
trigger="hover">
<div>
编码规则 支持两种编码格式假设有字段 客户姓名 cust_name <br>
1. ext_infos.cust_name, 此编码方式的字段用户录入的客户姓名将存储在ext_infos.cust_name<br>
2. cust_name 不带ext_infos.此编码方式的字段用户录入的客户姓名将存储在 cust_name<br>
编码规则 举例 客户姓名 cust_name <br>
</div>
<el-input slot="reference" v-model="field.id" auto-complete="off" placeholder="请输入内容" @change="onIdChange" @click.native="oldId=field.id">
<template slot="append">
@ -33,12 +31,14 @@
</el-popover>
</el-form-item>
<el-form-item>
<el-checkbox v-model="field.bkey" true-label="1" false-label="0" @change="onBkeyChange">是否主键</el-checkbox>
<el-checkbox v-model="field.req" :disabled="field.bkey=='1'" true-label="1" false-label="0">是否必输</el-checkbox>
<el-checkbox v-model="field.bkey" true-label="1" false-label="0" @change="onBkeyChange">主键</el-checkbox>
<el-checkbox v-model="field.req" :disabled="field.bkey=='1'" true-label="1" false-label="0">必输</el-checkbox>
<el-checkbox v-model="field.mul" :disabled=" field.typ!='checkbox' && field.typ!='select' && field.extType!='dept'" true-label="1" false-label="0">多选</el-checkbox>
<el-checkbox v-model="field.ronly" true-label="1" false-label="0">只读</el-checkbox>
<el-checkbox v-model="field.hidden" true-label="1" false-label="0">隐藏</el-checkbox>
</el-form-item>
<el-form-item label="长度" prop="len">

Loading…
Cancel
Save