From 303d480e7569a0c0a476b462e843ea76658faac5 Mon Sep 17 00:00:00 2001 From: cyy <cuiqian2004@163.com> Date: 星期六, 01 三月 2025 17:55:53 +0800 Subject: [PATCH] 5601 modify form smallwmd --- pages/modal/5601.vue | 167 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 153 insertions(+), 14 deletions(-) diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue index e1d05fc..c8553f1 100644 --- a/pages/modal/5601.vue +++ b/pages/modal/5601.vue @@ -274,14 +274,11 @@ }, }, onLoad(options) { - console.log(options.titlename, options); uni.setNavigationBarTitle({ title: options.titlename }); //璁剧疆椤堕儴鏍囬 this.title = options.titlename; this.param = JSON.parse(options.param); - - //鑾峰彇涓绘暟鎹被ID this.ClsID = this.param.master_cls?.id; if (this.ClsID) { @@ -443,6 +440,9 @@ AttrVerify: false, Event: evt, }; + if (page.After_ok?.ID) { + btn.After_Event = page.After_ok; + } return [btn, btnCancel]; } else return [btnCancel]; } else { @@ -733,7 +733,7 @@ .onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� var isflag = false; - if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� $this.onChange(onChangeEvent); } if (item.value) { //绗竴涓緭鍏ユ涓嶄负绌�@@ -816,7 +816,7 @@ this.head_styledef.form.model[attr] = item.value; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠� - if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } @@ -832,7 +832,7 @@ let attr = col.fieldId; this.head_styledef.form.model[attr] = col.value; var onChangeEvent = col.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } return @@ -843,7 +843,7 @@ let attr = item.fieldId; this.head_styledef.form.model[attr] = item.value; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } } @@ -860,7 +860,7 @@ let attr = col.fieldId; this.head_styledef.form.model[attr] = col.value; var onChangeEvent = col.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } return @@ -871,7 +871,7 @@ let attr = item.fieldId; this.head_styledef.form.model[attr] = item.value; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�+ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } } @@ -2571,14 +2571,17 @@ }) }, onBtnClick(btn, pageData) { + const $this = this if (btn.Prompt) { const sContent = btn.PromptContent || this.translate("confirm") uni.showModal({ title: this.translateSys("tip"), content: btn.PromptContent || this.translate("confirm"), success: function(res) { - if (res.confirm) {} - this.onButtonClicked(btn, pageData, -1); + if (res.confirm) { + $this.onButtonClicked(btn, pageData, -1); + } + }, }) @@ -2587,14 +2590,17 @@ } }, onRowBtnClick(btn, pageData, index) { + const $this = this if (btn.Prompt) { const sContent = btn.PromptContent || this.translate("confirm") uni.showModal({ title: this.translateSys("tip"), content: btn.PromptContent || this.translate("confirm"), success: function(res) { - if (res.confirm) {} - this.onButtonClicked(btn, pageData, index); + if (res.confirm) { + $this.onButtonClicked(btn, pageData, index); + } + }, }) @@ -2608,7 +2614,7 @@ button: "top", button_name: btn.ShowName, cls_id: btn.Cls_ID, - function: "3018", + function: "5601", master: {}, }; if (btn.FunCode == "TriggerEvent") { @@ -2618,14 +2624,146 @@ this.cancel(); } else if (btn.FunCode == "Delete") { if (index > -1) { + const pageIndex = this.pageDetail.findIndex(( + page) => { + return pageData.Name == page.Name; + }) const style = pageData.DefList[index]; //鍒犻櫎鐮佺洏涓牱寮忛潰鏉� pageData.DefList.splice(index, 1); this.del(pageData, style, btn.AfterProcess_Event); + this.$set(this.pageDetail, pageIndex, pageData) } + } else if (btn.FunCode == "Modify") { + if (index > -1) { + const style = pageData.DefList[index]; + if (btn.Edit_dlg.Model == "small") { + this.showSmallDialog(btn, style, enviroment, pageData); + } else if (btn.Edit_dlg.Model == "form") { + this.showFormDialog(btn, style, enviroment, pageData); + } else { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translateSys("unrealized"), + showCancel: false, + confirmText: this.translateSys("cancel") + }); + } + } + } else { this.$Message.warning(this.$t("sys.unrealized")); } + }, + //淇敼灏忕獥鍙f暟鎹�+ showSmallDialog(btn, row, enviroment, pageData) { + var data = { + Add_BtnName: btn.ShowName, + EditDlgMode: btn.Edit_dlg.Model, + clsid: btn.Cls_ID, + objid: "", + cls_name: btn.Cls_Name, + Edit_dlg: btn.Edit_dlg + }; + const objAttr = {} + row.form.items.forEach(item => { + if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+ item.setting.colList.forEach(cols => { + if (cols != null) objAttr[cols + .fieldId] = cols.value; + }); + } else + objAttr[item.fieldId] = item.value; + }); + const url = `../modal/3018?param=${JSON.stringify(data)}&titlename=${btn.Edit_dlg + .Name}&editMode=1&objAttr=${JSON.stringify(objAttr)}&type=updateDataObj` + + var $this = this; + uni.navigateTo({ + url: url, + events: { + // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁 + updateDataObj: function(formData) { + const pageIndex = $this.pageDetail.findIndex(( + page) => { + return pageData.Name == page.Name; + }) + if (pageIndex < 0) + return + Object.assign(row.form.model, formData); + row.form.items.forEach(async (ele, index) => { + if (ele.name != "Layout") { + let value = formData[ele.fieldId] + if (value) + ele.value = value + + } else { + ele.setting.colList.forEach(async (col) => { + if (col) { + let value = formData[col.fieldId] + if (value) + col.value = value + } + }); + } + }) + $this.$set($this.pageDetail, pageIndex, pageData) + + }, + + } + }); + }, + + //淇敼鑷畾涔夎〃鍗曟暟鎹�+ showFormDialog(btn, row, enviroment, pageData) { + const objAttr = {} + row.form.items.forEach(item => { + if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+ item.setting.colList.forEach(cols => { + if (cols != null) objAttr[cols + .fieldId] = cols.value; + }); + } else + objAttr[item.fieldId] = item.value; + }); + + const url = `../modal/form/index?param=${JSON.stringify(btn)}&titlename=${btn.Edit_dlg + .Name}&editMode=1&objAttr=${JSON.stringify(objAttr)}&type=updateDataObj` + var $this = this; + uni.navigateTo({ + url: url, + events: { + // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁 + updateDataObj: function(formData) { + const pageIndex = $this.pageDetail.findIndex(( + page) => { + return pageData.Name == page.Name; + }) + if (pageIndex < 0) + return + Object.assign(row.form.model, formData); + row.form.items.forEach(async (ele) => { + if (ele.name != "Layout") { + let value = formData[ele.fieldId] + if (value) + ele.value = value + + } else { + ele.setting.colList.forEach(async (col) => { + if (col) { + let value = formData[col.fieldId] + if (value) + col.value = value + } + }); + } + }) + $this.$set($this.pageDetail, pageIndex, pageData) + + }, + } + }); }, //纭畾 ok(pageData) { @@ -3364,6 +3502,7 @@ line-height: 1.5; border: none; font-size: 30rpx; + margin-right: 10rpx; display: inline-block; float: right; text-align: center; -- Gitblit v1.9.1