|
|
@ -34,9 +34,14 @@ |
|
|
<mdp-select item-code="form_data_type" show-style="tag" v-model="editForm.dataType"></mdp-select> |
|
|
<mdp-select item-code="form_data_type" show-style="tag" v-model="editForm.dataType"></mdp-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="主键" prop="pks" > |
|
|
<el-form-item label="主键" prop="pks" > |
|
|
<mdp-select show-style="tag" :multiple="true" v-model="editForm.pks" :plus-options="pkOptions" :props="{id:'id',name:'title'}" split="," @change2="onPksChange"></mdp-select> |
|
|
|
|
|
|
|
|
<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> |
|
|
</el-form-item> |
|
|
<span v-if="['2'].some(k=>k==editForm.dataType)"> |
|
|
<span v-if="['2'].some(k=>k==editForm.dataType)"> |
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="数据源名称" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
|
|
|
<mdp-select v-model="editForm.tableOwner" :load-fun="dataSourceList" ></mdp-select> |
|
|
|
|
|
</el-form-item> |
|
|
<el-form-item label="表名" prop="tableName" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<el-form-item label="表名" prop="tableName" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<el-input v-model="editForm.tableName" placeholder="请保持与数据库表名一致"></el-input> |
|
|
<el-input v-model="editForm.tableName" placeholder="请保持与数据库表名一致"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
@ -46,12 +51,13 @@ |
|
|
</span> |
|
|
</span> |
|
|
|
|
|
|
|
|
<span v-if="['3'].some(k=>k==editForm.dataType)"> |
|
|
<span v-if="['3'].some(k=>k==editForm.dataType)"> |
|
|
<el-form-item label="表名" prop="tableName" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
|
|
|
<el-input v-model="editForm.tableName" placeholder="请保持与数据库表名一致"></el-input> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="数据源名称" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<el-form-item label="数据源名称" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<mdp-select v-model="editForm.tableOwner" :load-fun="dataSourceList" ></mdp-select> |
|
|
<mdp-select v-model="editForm.tableOwner" :load-fun="dataSourceList" ></mdp-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item label="表名" prop="tableName" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
|
|
|
<el-input v-model="editForm.tableName" placeholder="请保持与数据库表名一致"></el-input> |
|
|
|
|
|
</el-form-item> |
|
|
<el-form-item label="建表方式" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<el-form-item label="建表方式" :rules="{required:true,message:'此项必填',trigger:'change'}"> |
|
|
<mdp-select v-model="editForm.ctType" item-code="lcode_create_table_type"></mdp-select> |
|
|
<mdp-select v-model="editForm.ctType" item-code="lcode_create_table_type"></mdp-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
@ -61,8 +67,8 @@ |
|
|
</template> |
|
|
</template> |
|
|
<template #footer="{visible,data,dialog}"> |
|
|
<template #footer="{visible,data,dialog}"> |
|
|
<el-row slot="footer" class="footer"> |
|
|
<el-row slot="footer" class="footer"> |
|
|
<el-button @click="$refs['formSetDialog'].close()">关闭</el-button> |
|
|
|
|
|
<el-button type="primary" @click="saveSubmit">确认</el-button> |
|
|
|
|
|
|
|
|
<el-button @click="dialog.close()">关闭</el-button> |
|
|
|
|
|
<el-button type="primary" @click="saveSubmitDialog">确认</el-button> |
|
|
</el-row> |
|
|
</el-row> |
|
|
</template> |
|
|
</template> |
|
|
</mdp-dialog> |
|
|
</mdp-dialog> |
|
|
@ -211,6 +217,55 @@ export default { |
|
|
return true; |
|
|
return true; |
|
|
}, |
|
|
}, |
|
|
saveSubmit: function () { |
|
|
saveSubmit: function () { |
|
|
|
|
|
|
|
|
|
|
|
if(this.editForm.formName==''){ |
|
|
|
|
|
this.$notify({position:'bottom-left',showClose:true,message: '表单名称不能为空', type: 'error' }); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
var formFields=this.$refs.formFields.getFieldList(); |
|
|
|
|
|
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); |
|
|
|
|
|
if(this.currOpType=='add'){ |
|
|
|
|
|
formDef.deptid=this.userInfo.deptid |
|
|
|
|
|
formDef.branchId=this.userInfo.branchId |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.$refs.formFields.setPrimaryKeys(); |
|
|
|
|
|
|
|
|
|
|
|
formFields.forEach((i,index)=>{i.seq=index}); |
|
|
|
|
|
var params={formDef:formDef,formFields:formFields}; |
|
|
|
|
|
if(!this.preParamCheck(params)){ |
|
|
|
|
|
this.load.edit=false |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
var func=this.apis.add |
|
|
|
|
|
if(this.currOpType=='edit'){ |
|
|
|
|
|
func=this.apis.edit |
|
|
|
|
|
} |
|
|
|
|
|
func(params).then((res) => { |
|
|
|
|
|
this.load.edit=false |
|
|
|
|
|
var tips=res.data.tips; |
|
|
|
|
|
if(tips.isOk){ |
|
|
|
|
|
this.$mdp.removeFormFieldsCache(formDef.id) |
|
|
|
|
|
this.currOpType='edit' |
|
|
|
|
|
var data=res.data.data |
|
|
|
|
|
Object.assign(this.editForm,data.formDef) |
|
|
|
|
|
this.formFields=data.formFields |
|
|
|
|
|
this.afterSubmit(res,tips.isOk,this.currOpType); |
|
|
|
|
|
} |
|
|
|
|
|
this.$notify({ position:'bottom-left',showClose:true, message: tips.msg, type: tips.isOk?'success':'error' }); |
|
|
|
|
|
}).catch( err =>this.load.edit=false); |
|
|
|
|
|
}).catch(()=>{}); |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
saveSubmitDialog: function () { |
|
|
|
|
|
|
|
|
this.$refs['editFormRef'].validate(valid=>{ |
|
|
this.$refs['editFormRef'].validate(valid=>{ |
|
|
if(valid==false){ |
|
|
if(valid==false){ |
|
|
this.$notify({position:'bottom-left',showClose:true,message: '表单验证不通过', type: 'error' }); |
|
|
this.$notify({position:'bottom-left',showClose:true,message: '表单验证不通过', type: 'error' }); |
|
|
@ -258,7 +313,7 @@ export default { |
|
|
} |
|
|
} |
|
|
this.$notify({ position:'bottom-left',showClose:true, message: tips.msg, type: tips.isOk?'success':'error' }); |
|
|
this.$notify({ position:'bottom-left',showClose:true, message: tips.msg, type: tips.isOk?'success':'error' }); |
|
|
}).catch( err =>this.load.edit=false); |
|
|
}).catch( err =>this.load.edit=false); |
|
|
}); |
|
|
|
|
|
|
|
|
}).catch(()=>{}); |
|
|
|
|
|
|
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
|