From 33855a1961d581727cfbf59230085e6b95cc549c Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期一, 29 四月 2024 15:56:37 +0800 Subject: [PATCH] action --- Source/ProjectWeb/src/components/actions/AddEditDialog.vue | 49 +++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 41 insertions(+), 8 deletions(-) diff --git a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue index a051c80..3d288d5 100644 --- a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue +++ b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue @@ -12,19 +12,23 @@ <basic-form ref="formRef" v-if="paramVOS.form" :key="'dialog-'+paramVOS.form" :span="span" + :style="fullscreen?'':'height:'+height" + :isEdit="true" :formItems="formItems" :formData="form"> </basic-form> <ui-view ref="uiViewRef" v-else-if="paramVOS.context" :key="'AddEditDialog-'+type" + :style="fullscreen?'':'height:'+height" :btmType="paramVOS.type" :context="paramVOS.context" :inDialog="true" + :canEdit="true" :sourceData="sourceData" :dataStore="dataStore" :paramVOS="paramVOS" ></ui-view> - <div class="dialog-footer avue-dialog__footer"> + <div v-if="showSave" class="dialog-footer avue-dialog__footer"> <el-button type="primary" plain size="small" @click="saveHandler">淇� 瀛�</el-button> <el-button size="small" @click="dialogClose">鍙� 娑�</el-button> <el-button size="small" @click="resetValue" v-if="paramVOS.form">閲� 缃�</el-button> @@ -36,6 +40,7 @@ import uiView from "@/views/base/UIContentViewerInDialog" import {getFormDefineById,dataForm} from "@/api/base/ui"; import {addSave,editSave} from "@/api/base/actions" +import {validatenull} from "@/util/validate" export default { name: "AddEditDialog", @@ -60,6 +65,7 @@ return { type:"add", visible:false, + showSave:this.paramVOS.customBtn || true, span:12, formItems:[], form:{} @@ -69,11 +75,27 @@ title(){ return this.paramVOS.title || (this.type=='add'?'娣诲姞':'淇敼') }, - width(){ - return this.paramVOS.width || "60%" + width() { + if (!validatenull(this.paramVOS.width)) { + if (this.paramVOS.width.includes("px") || this.paramVOS.width.includes("%")) { + return this.paramVOS.width; + } else { + return this.paramVOS.width + "px"; + } + } else { + return "60%"; + } }, height(){ - return this.paramVOS.height || "500px" + if (!validatenull(this.paramVOS.height)) { + if (this.paramVOS.height.includes("px") || this.paramVOS.height.includes("%")) { + return this.paramVOS.height; + } else { + return this.paramVOS.height + "px"; + } + } else { + return "auto" + } }, fullscreen(){ if(this.paramVOS.width || this.paramVOS.height){ @@ -81,7 +103,7 @@ }else if(this.paramVOS.form){ return false; } - return false; + return true; } }, created() { @@ -111,15 +133,25 @@ if (this.paramVOS.initvalue) { this.form=this.paramVOS.initvalue; } - if(this.type=="edit"){ + if(this.type=="edit") { //鍔犺浇琛ㄥ崟鏁版嵁 - dataForm(this.params,this.paramVOS.getdataurl,this.paramVOS.getdatamethod).then(res => { + let sourceDataMap = {}; + for (let i in this.sourceData) { + const item = this.sourceData[i] + if (item.constructor === Object) return; + sourceDataMap['sourceData["' + i + '"]'] = item; + } + dataForm(Object.assign({ + btmname: this.paramVOS.type, + formDefineId: this.paramVOS.form, + oid: this.dataStore[0].oid + }, sourceDataMap), this.paramVOS.getdataurl, this.paramVOS.getdatamethod).then(res => { this.form = res.data.obj; this.loading = false; }).catch(error => { this.$message.error(error); this.loading = false; - }); + }) } }).catch(error => { this.$message.error(error); @@ -139,6 +171,7 @@ }); }else{ //this.$refs.uiViewRef. + debugger; if(this.saveCallback){ this.saveCallback({}); } -- Gitblit v1.9.3