From 368dbde6b3ee39a3ac0cdac5089a9ce56ef525f8 Mon Sep 17 00:00:00 2001 From: cuiqian2004 <cuiqian2004@163.com> Date: 星期一, 04 十一月 2024 12:42:51 +0800 Subject: [PATCH] 5601 open comm_dlg --- pages/modal/5601.vue | 2665 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 1,912 insertions(+), 753 deletions(-) diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue index 4b3901f..52a5dd6 100644 --- a/pages/modal/5601.vue +++ b/pages/modal/5601.vue @@ -1,7 +1,6 @@ <template> <view class="uni-page-modal-5601"> <!-- 琛ㄥご鏍峰紡 --> - <uni-forms ref="baseForm" label-align="right"> <view v-for="(item,index) in head_styledef.form.items" :key="index" class="v-head-style"> <!-- 鏅�甯冨眬 --> @@ -12,20 +11,21 @@ :readonly="item.disabled" :clear-icon="false" :popup-title="item.label"></uni-data-picker> <view class="input-wrapper" v-if="item.name=='Input' || item.name=='InputNumber'"> <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]" - @click="onEnterChange(item)"></text> + @click="classAttr_extButton(item)"></text> <input class="uni-input" :class="item.disabled?'input-disabled':''" :style="{'padding-left':item.setting.prefix?0 : '8rpx','right':item.setting.suffix?0 : '8rpx'}" :type="item.name=='Input'?'text':'number'" v-model="item.value" :disabled="item.disabled" :placeholder="item.placeholder" :focus="focusFieldId == item.fieldId" @focus="ontap(item)" - @keyup.enter="onEnterChange(item)" @blur="onEnterChange(item)" /> + @click="onClick(item)" @keyup.enter="onEnterChange(item)" @blur="onEnterChange(item)" + :maxlength="-1" /> <text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]" - @click="onEnterChange(item)"></text> + @click="classAttr_extButton(item)"></text> </view> </uni-forms-item> <!-- 鏍呮牸甯冨眬 --> <uni-row v-else :gutter="item.setting.gutter"> <uni-col - :span=" item.setting.spanList && item.setting.spanList[key - 1]? item.setting.spanList[key - 1] : 24 / item.setting.col" + :span=" item.setting.spanList && item.setting.spanList[key]? item.setting.spanList[key] : 24 / item.setting.col" v-for="(col,key) in item.setting.colList"> <uni-forms-item :label="col.label +'锛�" :label-width="col.labelWidth+'px'"> <uni-data-picker v-if="col.name=='Select'" :class="col.disabled?'input-disabled':''" @@ -33,15 +33,15 @@ :readonly="col.disabled" :clear-icon="false" :popup-title="col.label"></uni-data-picker> <view class="input-wrapper" v-if="col.name=='Input' || col.name=='InputNumber'"> <text v-if="col.setting.prefix" class="uni-icon" :class="[col.setting.prefix]" - @click="onEnterChange(col)"></text> + @click="classAttr_extButton(col)"></text> <input class="uni-input" :class="col.disabled?'input-disabled':''" :style="{'padding-left':col.setting.prefix?0 : '8px','right':col.setting.suffix?0 : '8px'}" :type="col.name=='Input'?'text':'number'" v-model="col.value" :disabled="col.disabled" :placeholder="col.placeholder" - :focus="focusFieldId == col.fieldId" @focus="ontap(col)" - @keyup.enter="onEnterChange(col)" @blur="onEnterChange(col)" /> + :focus="focusFieldId == col.fieldId" @focus="ontap(col)" @click="onClick(col)" + @keyup.enter="onEnterChange(col)" @blur="onEnterChange(col)" :maxlength="-1" /> <text v-if="col.setting.suffix" class="uni-icon" :class="[col.setting.suffix]" - @click="onEnterChange(col)"></text> + @click="classAttr_extButton(col)"></text> </view> </uni-forms-item> </uni-col> @@ -66,9 +66,10 @@ src="../../images/mobox_log_200x40.png"> </image> <checkbox-group @change="checkboxChange"> - <div class="dv-panel" v-for="(style,ii) in pageData.DefList" @tap="onPanelClick(ii)" + <div class="dv-panel" v-for="(style,ii) in pageData.DefList" + @tap="onPanelClick(ii,style.form.htmlobjId)" :id="'dvpanel'+style.form.htmlobjId" - :class="style.form.htmlobjId==active_id?'bk-active':activelist[ii].active==true?'bk-active':''"> + :class="style.form.htmlobjId==active_id?'bk-active':''"> <div class="dv-panel-input"> <div class="dv-input" v-for="(item,index) in style.form.items"> <!-- 鏅�甯冨眬 --> @@ -80,12 +81,12 @@ <input class="uni-input" v-if="!item.disabled" :type="item.name=='InputNumber'?'number':'text'" v-model="item.value" :disabled="item.disabled" - :placeholder="item.placeholder" /> + :placeholder="item.placeholder" :maxlength="-1" /> </view> <!-- 鏍呮牸甯冨眬 --> <uni-row class="demo-uni-row" v-else :gutter="item.setting.gutter"> <uni-col - :span=" item.setting.spanList && item.setting.spanList[key - 1]? item.setting.spanList[key - 1] : 24 / item.setting.col" + :span=" item.setting.spanList && item.setting.spanList[key]? item.setting.spanList[key] : 24 / item.setting.col" v-for="(cols,key) in item.setting.colList"> <view v-if="cols!=null"> <text class="txt_title" @@ -95,7 +96,7 @@ <input class="uni-input" v-if="!cols.disabled" :type="cols.name=='InputNumber'?'number':'text'" v-model="cols.value" :disabled="cols.disabled" - :placeholder="cols.placeholder" /> + :placeholder="cols.placeholder" :maxlength="-1" /> </view> </uni-col> </uni-row> @@ -117,8 +118,9 @@ <view class="view-bottom" v-if="pageData.OK_Button==true"> <button type="default" @tap="cancel" class="btn_cancel">{{translateSys('cancel')}}</button> - <button type="primary" @tap="ok(pageData)" - class="btn_add">{{translateSys('ok')}}</button> + <button type="primary" @tap="ok(pageData)" class="btn_add" + :class="pageData.okLoading?'btn_disabled':''" + :disabled="pageData.okLoading? true:false">{{translateSys('ok')}}</button> </view> </view> </swiper-item> @@ -135,11 +137,43 @@ </div> </view> </view> + <view> + <uni-popup class="view-popup" ref="popup" background-color="#fff" @change="popupChange"> + <view class="popup-header">{{check_list.title}}</view> + <view class="popup-content" :class="{ 'popup-height': popupType === 'left' || popupType === 'right' }" + :style="{'width':check_list.width?check_list.width+'px':'200px','height':check_list.height?check_list.height+'px':'88%'}"> + <view class="popup-cont" :style="{'height':check_list.height?check_list.height-45+'px':'415px'}"> + <view class="view_popup_CheckList" v-for="(item,index) in check_list.items"> + <checkbox-group class="check_list" @change="checkChange" :data-ischeck="item.check" + :data-index="index" :style="{'margin-left': '10rpx'}"> + <label> + <checkbox :value="item.check" :checked="item.check" /> + <text>{{item.name}}</text> + </label> + </checkbox-group> + </view> + </view> + <view class="popup-footer"> + <button type="default" @tap="popup_sava" class="btn_popup_add">{{translateSys('ok')}}</button> + <button type="default" @tap="popup_cancel" + class="btn_popup_cancel">{{translateSys('cancel')}}</button> + </view> + </view> + </uni-popup> + </view> </view> </template> <script> import Base64 from '../../components/js-base64/base64.js' + import { + dictGetInfo + } from "@/api/mobox.js" + import { + getUIStyleInfo, + runCustomEvent, + } from "@/api/data.js" + export default { name: "PageModal5601", modules: { @@ -166,8 +200,13 @@ After_Del_Event: {}, active_id: '', - activelist: [], selectAttrObj: {}, + + global_attr: [], + refdatastore: [], //寮曠敤鏁版嵁瀛樺偍鍖�/ {attr:'G_PRJ_' + bindattr + '_ID', value:info.id} + popupType: "center", + check_list: {}, + popupParam: {}, }; }, computed: { @@ -186,10 +225,12 @@ }); //璁剧疆椤堕儴鏍囬 this.title = options.titlename; this.param = JSON.parse(options.param); + + //鑾峰彇涓绘暟鎹被ID this.ClsID = this.param.master_cls?.id; if (this.ClsID) { - this.loadData() + this.loadData(options.paramValue) } else { uni.showModal({ title: this.translateSys("error"), @@ -213,19 +254,45 @@ keys.forEach(function(key2, index) { if (index + 1 == keys.length) { that.$set(data, key2, val); + console.log("$set", key2, val) } else { if (!data[key2]) { that.$set(data, key2, {}); + console.log("$set", key2, {}) } } data = data[key2]; }); }); }, - async loadData() { + async loadData(paramValue) { //鑾峰彇鏁版嵁绫荤殑鑷畾涔夎〃鍗曞弬鏁� await this.Head_UIStyleGetInfo(this.ClsID, this.param.Input_UI_Style.ID); + //浼犲叆鍙傛暟鍊�+ if (paramValue) { + const attrs = paramValue.attrs || []; + (this.$data.head_styledef?.form?.items || []).forEach(async (ele, index) => { + if (ele.name != "Layout") { + attrs.forEach(async (ele2, index2) => { + if (ele.fieldId == ele2.name) { + ele.value = ele2.value; + } + }); + } else { + ele.setting.colList.forEach(async (col) => { + if (col) { + attrs.forEach(async (ele2, + index2) => { + if (col.fieldId == ele2.name) { + col.value = ele2.value; + } + }); + } + }); + } + }) + } //鍔犺浇鍒濆鐣岄潰 if (this.$data.param.Show_Welcom_Page) { this.$data.param.Welcome_Page.Img = this.$data.param.Welcome_Page.Img.replace(/ /g, '+'); @@ -235,8 +302,9 @@ //鍔犺浇Tab椤电 const pageList = this.param.Sub_Page || [] for (let i in pageList) { - page.DefList = []; + const page = pageList[i] + page.DefList = []; page.StyleDef = await this.Detail_UIstyleGetInfo( this.ClsID, page.UI_Style.ID @@ -246,6 +314,7 @@ this.setData({ pageDetail: pageList }) + console.log(this.pageDetail); }, changeSwiper(evt) { @@ -268,135 +337,140 @@ } }, async Head_UIStyleGetInfo(class_id, style_id) { //鑾峰彇鑷畾涔夎〃鍗曟牱寮�- var $this = this; - var dataInfo = { - class_id: class_id, - ui_style_id: style_id, - }; - this.$store.dispatch('UIStyleGetInfo', dataInfo).then(ret => { - // console.log(ret); - if (ret.err_code == 0) { - var styledef = ""; - if (ret.result.style_def) { - //mobox2鐨剆tyle_def鏄痡son瀛楃涓�- styledef = ret.result.style_def.replace(/\\/g, ""); - //mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�- if (!ret.result.style_def.includes('"')) styledef = Base64.decode(ret.result - .style_def); - } - const styledefHead = styledef ? JSON.parse(styledef) : {}; - - styledefHead.form.items.forEach(async (ele) => { + try { + var $this = this; + var dataInfo = { + class_id: class_id, + ui_style_id: style_id, + }; + const result = await getUIStyleInfo(dataInfo) + var styledef = ""; + if (result.style_def) { + //mobox2鐨剆tyle_def鏄痡son瀛楃涓�+ styledef = result.style_def.replace(/\\/g, ""); + //mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�+ if (!result.style_def.includes('"')) styledef = Base64.decode( + result + .style_def); + } + const styledefHead = styledef ? JSON.parse(styledef) : {}; + if (styledefHead?.form?.items) { + for (let i in styledefHead.form.items) { + const ele = styledefHead.form.items[i] if (ele.name != "Layout") { if (ele?.useDict) { //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 - await this.DictGetInfo(ele.bind.dict, styledefHead.form.model, + await this.DictGetInfo(ele.bind.dict, + styledefHead.form.model, ele); } if ($this.focusFieldId == "") { - if (ele.name == 'Input' || ele.name == 'InputNumber') { + if (ele.name == 'Input' || ele.name == + 'InputNumber') { $this.setData({ focusFieldId: ele.fieldId }) } } } else { - ele.setting.colList.forEach(async (col) => { + for (let j in ele.setting.colList) { + const col = ele.setting.colList[j] if (col?.useDict) { //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 - await this.DictGetInfo(col.bind.dict, - styledefHead.form.model, col); + await this.DictGetInfo(col.bind + .dict, + styledefHead.form + .model, col); } if ($this.focusFieldId == "") { - if (col.name == 'Input' || col.name == + if (col.name == 'Input' || col + .name == 'InputNumber') { $this.setData({ - focusFieldId: col.fieldId + focusFieldId: col + .fieldId }) } } - }); + } } - }); - this.setData({ - head_styledef: styledefHead - }) - } else { - uni.showModal({ - title: this.translateSys("error") + "1", - content: ret.err_msg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - } - }).catch(ex => { - // console.log(ex); - uni.showModal({ - title: this.translateSys("error") + "1.1", - content: ex.errMsg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - }); - - }, - async Detail_UIstyleGetInfo(class_id, style_id) { //鑾峰彇鑷畾涔夎〃鍗曟牱寮�- var $this = this; - var dataInfo = { - class_id: class_id, - ui_style_id: style_id, - }; - this.$store.dispatch('UIStyleGetInfo', dataInfo).then(ret => { - // console.log(ret); - if (ret.err_code == 0) { - var styledef = ""; - if (ret.result.style_def) { - //mobox2鐨剆tyle_def鏄痡son瀛楃涓�- styledef = ret.result.style_def.replace(/\\/g, ""); - //mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�- if (!ret.result.style_def.includes('"')) styledef = Base64.decode(ret.result - .style_def); } - const detailstyledef = ret.result.style_def ? JSON.parse(styledef) : {}; - detailstyledef.SelBut_Checked = true; - detailstyledef.form.items.forEach(async (ele, index) => { - - if (ele.name != "Layout") { - if (ele.useDict == true) { //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 - await this.DictGetInfo(ele.bind.dict, detailstyledef.form - .model, ele); - } - } else { - ele.setting.colList.forEach(async (col) => { - if (col?.useDict == true) { - await this.DictGetInfo(col.bind.dict, - detailstyledef.form.model, col); - } - }) - } - }); - console.log("Detail_UIstyleGetInfo", detailstyledef); - return detailstyledef - } else { - return {} - uni.showModal({ - title: this.translateSys("error") + "2", - content: ret.err_msg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); } - }).catch(ex => { + this.setData({ + head_styledef: styledefHead + }) + } catch (ex) { // console.log(ex); uni.showModal({ - title: this.translateSys("error") + "2.1", + title: this.translateSys("error") + "1", content: ex.errMsg, showCancel: false, confirmText: this.translateSys("cancel") }); return {} - }); + } + + + }, + async Detail_UIstyleGetInfo(class_id, style_id) { //鑾峰彇鑷畾涔夎〃鍗曟牱寮�+ try { + var $this = this; + var dataInfo = { + class_id: class_id, + ui_style_id: style_id, + }; + const result = await getUIStyleInfo(dataInfo) + var styledef = ""; + if (result.style_def) { + //mobox2鐨剆tyle_def鏄痡son瀛楃涓�+ styledef = result.style_def.replace(/\\/g, ""); + //mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�+ if (!result.style_def.includes('"')) styledef = Base64 + .decode(result + .style_def); + } + + const detailstyledef = result.style_def ? JSON.parse( + styledef) : {}; + detailstyledef.SelBut_Checked = true; + if (detailstyledef?.form?.items) { + for (let index in detailstyledef.form.items) { + const ele = detailstyledef.form.items[index] + + if (ele.name != "Layout") { + if (ele.useDict == true) { //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 + await this.DictGetInfo(ele.bind.dict, + detailstyledef.form + .model, ele); + } + } else { + for (let j in ele.setting.colList) { + const col = ele.setting.colList[j] + if (col?.useDict == true) { + await this.DictGetInfo(col + .bind.dict, + detailstyledef.form + .model, col); + } + } + } + } + + } + console.log("Detail_UIstyleGetInfo", detailstyledef); + return detailstyledef + } catch (ex) { + // console.log(ex); + uni.showModal({ + title: this.translateSys("error") + "2", + content: ex.errMsg, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return {} + } + }, @@ -407,34 +481,25 @@ dict_id: dict.id, dict_name: dict.name }; - // console.log(dataInfo); - this.$store.dispatch('DictGetInfo', dataInfo).then(async (success) => { - console.log(success); - if (success.err_code == 0) { - var list = []; - var itemName = ''; - success.result.dict_item_list.forEach((item) => { - if (item.is_default == '1') - itemName = item.name; - list.push({ - text: item.value, - value: item.name, - }); + try { + const result = await dictGetInfo(dataInfo) + var list = []; + var itemName = ''; + (result.dict_item_list || []).forEach((item) => { + if (item.is_default == '1') + itemName = item.name + list.push({ + text: item.value ? item.value : item.name, + value: item.name, }); - if (itemName) { - formItem.value = itemName; - formModel[formItem.fieldId] = itemName; - } - formItem.dict = list; - } else { - uni.showModal({ - title: this.translateSys("error") + "3.1", - content: success.err_msg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); + }); + //鏈夐粯璁ゅ�锛屾樉绀洪粯璁ゅ� + if (itemName) { + formItem.value = itemName; + formModel[formItem.fieldId] = itemName; } - }).catch(ex => { + formItem.dict = list; + } catch (ex) { // console.log(ex); uni.showModal({ title: this.translateSys("error") + "3", @@ -442,9 +507,12 @@ showCancel: false, confirmText: this.translateSys("cancel") }); - }); - }, + } + }, + onClick(item) { + this.focusFieldId = item.fieldId + }, ontap(item) { //鎵爜鍔熻兘 // var $ele = e; //console.log(e.target) @@ -453,13 +521,15 @@ console.log(result.decodedata); item.value = result.decodedata; var $this = this; - if (item.oldvalue != item.value) { + if (item.oldvalue != item.value && item.value.trim() != "") { item.oldvalue = item.value; var attr = item.fieldId; this.head_styledef.form.model[attr] = item.value; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�- var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�+ var onSuffixClickCallbackEvent = item.bind + .onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�+ var onSuffixClickEvent = item.bind + .onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� var isflag = false; if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�@@ -472,7 +542,8 @@ const ele = $this.head_styledef.form.items[i] if (ele.name != "Layout") { - if (ele.name == 'Input' || ele.name == 'InputNumber') { + if (ele.name == 'Input' || ele.name == + 'InputNumber') { if (attr == ele.fieldId) { findd = true } else { @@ -488,32 +559,39 @@ } } else { if (findd) { - let curIndex = ele.setting.colList.findIndex((col, index2, arr) => { - return (col.name == 'Input' || col.name == 'InputNumber'); + let curIndex = ele.setting.colList.findIndex(( + col, index2, arr) => { + return (col.name == 'Input' || col + .name == 'InputNumber'); }) if (curIndex > -1) { $this.setData({ - focusFieldId: ele.setting.colList[curIndex] + focusFieldId: ele.setting + .colList[curIndex] .fieldId }) break } } else { - let curIndex = ele.setting.colList.findIndex((col, index2, arr) => { + let curIndex = ele.setting.colList.findIndex(( + col, index2, arr) => { return attr == col.fieldId; }) if (curIndex > -1) { findd = true - let curIndex2 = ele.setting.colList.findIndex((col, index2, arr) => { - return (col.name == 'Input' || col.name == - 'InputNumber') && - index2 > - curIndex; - }) + let curIndex2 = ele.setting.colList + .findIndex((col, index2, arr) => { + return (col.name == 'Input' || + col.name == + 'InputNumber') && + index2 > + curIndex; + }) if (curIndex2 > -1) { $this.setData({ - focusFieldId: ele.setting.colList[curIndex] + focusFieldId: ele.setting + .colList[curIndex] .fieldId }) break @@ -528,16 +606,14 @@ } }) }, + onEnterChange(item) { //鍥炶溅锛岀偣鍑绘寜閽紝鍙栨秷鑺傜偣浜嬩欢 console.log(item); - if (item.oldvalue != item.value) { + if (item.oldvalue != item.value && item.value.trim() != "") { item.oldvalue = item.value; var attr = item.fieldId; this.head_styledef.form.model[attr] = item.value; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�- var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�- var isflag = false; if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); @@ -545,45 +621,80 @@ } }, + classAttr_extButton(item) { + var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�+ var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�+ + if (!onSuffixClickCallbackEvent.id) { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translate('icon_click_callback_empty'), + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return; + } + if (!onSuffixClickEvent.id) { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translate('icon_click_event_empty'), + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return; + } + this.$data.popupType = 'right' + // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� + this.$refs.popup.open(this.popupType); + + this.dataObjRunCustomEvent_Return(onSuffixClickCallbackEvent.id, '', onSuffixClickEvent.id, + item); + }, + getDetailAttrList(pageData) { const detailAttrList = []; - pageData.DefList.forEach(style => { - var detail_attr = {}; - style.form.items.forEach(item => { - if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�- item.setting.colList.forEach(cols => { - if (cols != null) detail_attr[cols.fieldId] = cols.value; - }); - } else - detail_attr[item.fieldId] = item.value; - }); - - detail_attr['id'] = style.form.objId; - if (pageData.Select_Button == true) { //鍒ゆ柇閫夋嫨鎸夐挳鏄惁涓簍rue - if (style.SelBut_Checked == true) - detailAttrList.push(detail_attr); - } else - detailAttrList.push(detail_attr); - }); - // console.log(detailAttrList); - //鑾峰彇姝e湪鐮佺洏閲屾病鏈夋樉绀虹殑瀛楁 - pageData.DefList.forEach(style => { - style.form.attrs.forEach(attr => { - for (var key in detailAttrList) { - if (style.form.objId == detailAttrList[key]['id']) { - var keys = Object.keys(detailAttrList[key]); - var isflag = true; - keys.forEach((ele) => { - if (ele == attr.attr) isflag = false; + if (pageData.DefList) { + pageData.DefList.forEach(style => { + var detail_attr = {}; + style.form.items.forEach(item => { + if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+ item.setting.colList.forEach(cols => { + if (cols != null) detail_attr[cols + .fieldId] = cols.value; }); - if (isflag) { - detailAttrList[attr.attr] = attr.value; + } else + detail_attr[item.fieldId] = item.value; + }); + + detail_attr['id'] = style.form.objId; + if (pageData.Select_Button == true) { //鍒ゆ柇閫夋嫨鎸夐挳鏄惁涓簍rue + if (style.SelBut_Checked == true) + detailAttrList.push(detail_attr); + } else + detailAttrList.push(detail_attr); + }); + // console.log(detailAttrList); + //鑾峰彇姝e湪鐮佺洏閲屾病鏈夋樉绀虹殑瀛楁 + pageData.DefList.forEach(style => { + style.form.attrs.forEach(attr => { + for (var key in detailAttrList) { + if (style.form.objId == detailAttrList[key][ + 'id' + ]) { + var keys = Object.keys(detailAttrList[key]); + var isflag = true; + keys.forEach((ele) => { + if (ele == attr.attr) isflag = + false; + }); + if (isflag) { + detailAttrList[attr.attr] = attr.value; + } } } - } + }); }); - }); - + } const jsonlist = []; detailAttrList.forEach(attr => { jsonlist.push({ @@ -607,7 +718,8 @@ this.head_styledef.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� item.setting.colList.forEach(cols => { - if (cols != null) head_attr[cols.fieldId] = cols.value; + if (cols != null) head_attr[cols + .fieldId] = cols.value; }); } else head_attr[item.fieldId] = item.value; @@ -625,12 +737,15 @@ var $this = this; const jsonList = [] this.pageDetail.forEach((page) => { + jsonList.push({ page_name: page.Name, - item_list: $this.getDetailAttrList(page.DefList, page + item_list: $this.getDetailAttrList(page + .DefList, page .Select_Button), ext_data: page.ExtData || {} }) + }) const data_json = Base64.encode( JSON.stringify(jsonList) @@ -654,264 +769,336 @@ global_attr: '', input_param: input_param, }; - this.$store.dispatch('runCustomEvent', dataInfo).then(ret => { - // console.log(ret); - if (ret.err_code == 0) { - var result = ret.result; - if (result.ret != 0) { - var tip = result.err_info ? typeof result.err_info == 'string' ? result - .err_info : result.err_info.join('<br/>') : ''; - if (result.ret == 801) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',' + this.translateSys('tip') + ':' + result - .ret, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - return false; - } else { - var tip = result.info ? typeof result.info == 'string' ? result.info : - result.info.join('<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys("cancel") - }); + runCustomEvent(dataInfo).then(result => { + console.log(result); - if (result.result_type == 0 && result.action) { - result.action.forEach(item => { - if (item.action_type == "insert_subtable_page_row") { //鐮佺洏涓�- $this.$data.param.Show_Welcom_Page = false; - var value = item.value; - $this.viewAceionRow(value); - } else if (item.action_type == - "set_subtable_page_content") { //宸茬爜鐩�- $this.$data.param.Show_Welcom_Page = false; - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + if (result.ret != 0) { + var tip = result.err_info ? typeof result + .err_info == 'string' ? result + .err_info : result.err_info.join('<br/>') : + ''; + if (result.ret == 801) { + if (this.param.Only_Script_Error) { + let pos = tip.indexOf("锛�); + if (pos > -1) tip = tip.substring(pos + + 1); + } + uni.showModal({ + title: this.translateSys( + "tip"), + content: tip, + showCancel: false, + confirmText: this.translateSys( + "cancel") + }); + } else uni.showModal({ + title: this.translateSys('tip'), + content: tip + ',' + this + .translateSys('tip') + ':' + + result + .ret, + showCancel: false, + confirmText: this.translateSys( + "cancel") + }); + return false; + } else { + var tip = result.info ? typeof result.info == + 'string' ? result.info : + result.info.join('<br/>') : ''; + if (tip) uni.showModal({ + title: this.translateSys('tip'), + content: tip, + showCancel: false, + confirmText: this.translateSys( + "cancel") + }); + + if (result.result_type == 0 && result.action) { + result.action.forEach(item => { + + if (item.action_type == + "insert_subtable_page_row" + ) { //鐮佺洏涓�+ $this.$data.param + .Show_Welcom_Page = + false; + var value = item.value; + $this.viewAceionRow(value); + } else if (item.action_type == + "set_subtable_page_content" + ) { //宸茬爜鐩�+ $this.$data.param + .Show_Welcom_Page = + false; + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; }); - if (value.clear_confirm != false && value.clear == - true && - pageData && pageData.DefList.length > 0 - ) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�- uni.showModal({ - title: this.translateSys('tip'), - content: this.translate( - "are_you_sure_clear_first") + - this.translateSys( - "quotation_mark_left") + value - .page_name + this.translateSys( - "sys.quotation_mark_right") + - this.translate( - "are_you_sure_clear_last"), - success: function(res) { - if (res.confirm) { - if (pageData) - pageData.DefList = []; - $this.viewAceionContent( - value); - } else if (res.cancel) { - if (pageData) - pageData.DefList = []; - $this.viewAceionContent( - value); - } + if (value.clear_confirm != + false && value.clear == + true && + pageData && pageData + .DefList.length > 0 + ) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�+ uni.showModal({ + title: this + .translateSys( + 'tip' + ), + content: this + .translate( + "are_you_sure_clear_first" + ) + + this + .translateSys( + "quotation_mark_left" + ) + + value + .page_name + + this + .translateSys( + "quotation_mark_right" + ) + + this + .translate( + "are_you_sure_clear_last" + ), + success: function( + res + ) { + if (res + .confirm + ) { + if ( + pageData) + pageData + .DefList = []; + $this + .viewAceionContent( + value + ); + } else if ( + res + .cancel + ) { + if ( + pageData) + pageData + .DefList = []; + $this + .viewAceionContent( + value + ); } - }); - } else { - if (pageData) - pageData.DefList = []; - $this.viewAceionContent(value); - } - } else if (item.action_type == - "select_subtable_page_row") { - // value = {"page_name":"鐮佺洏涓�, "row":{"id":"xx"}} - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + } }); - if (pageData?.DefList) { - pageData.DefList.forEach(ele => { - $this.activelist[index].active = false; - if (ele.form.objId == value.row.id) { - ele.SelBut_Checked = true; - $this.active_id = ele.form + } else { + if (pageData) + pageData + .DefList = []; + $this + .viewAceionContent( + value); + } + } else if (item.action_type == + "select_subtable_page_row" + ) { + // value = {"page_name":"鐮佺洏涓�, "row":{"id":"xx"}} + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; + }); + if (pageData?.DefList) { + pageData.DefList + .forEach(ele => { + + if (ele + .form + .objId == + value + .row.id + ) { + ele.SelBut_Checked = + true; + $this + .active_id = + ele + .form .htmlobjId; //鑷姩婊氬姩鍒版寚瀹氬厓绱� uni.createSelectorQuery() - .select("#tabpanel" + value - .page_name) //瀵瑰簲澶栧眰鑺傜偣 - .boundingClientRect(( - container) => { - uni.createSelectorQuery() - .select( - "#dvpanel" + - ele.form - .htmlobjId - ) //鐩爣鑺傜偣 - .boundingClientRect( - ( - target - ) => { - uni.pageScrollTo({ - scrollTop: target - .top - - container - .top, //婊氬姩鍒板疄闄呰窛绂绘槸鍏冪礌璺濈椤堕儴鐨勮窛绂诲噺鍘绘渶澶栧眰鐩掑瓙鐨勬粴鍔ㄨ窛绂�- }); - }) - .exec(); - }) + .select( + "#tabpanel" + + value + .page_name + ) //瀵瑰簲澶栧眰鑺傜偣 + .boundingClientRect( + ( + container + ) => { + uni.createSelectorQuery() + .select( + "#dvpanel" + + ele + .form + .htmlobjId + ) //鐩爣鑺傜偣 + .boundingClientRect( + ( + target + ) => { + uni.pageScrollTo({ + scrollTop: target + .top - + container + .top, //婊氬姩鍒板疄闄呰窛绂绘槸鍏冪礌璺濈椤堕儴鐨勮窛绂诲噺鍘绘渶澶栧眰鐩掑瓙鐨勬粴鍔ㄨ窛绂�+ }); + } + ) + .exec(); + } + ) .exec(); } }); - } - } else if (item.action_type == - "remove_subtable_page_row") { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�- var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + } + } else if (item.action_type == + "remove_subtable_page_row" + ) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; }); - if (pageData - ?.DefList - ) //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞//娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�- { - value.row.forEach(row => { + if (pageData + ?.DefList + ) //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞//娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ { + value.row.forEach( + row => { pageData .DefList - .forEach((ele, index) => { - if (ele.form.objId == row - .id) { - pageData - .DefList - .splice(index, 1); - } - }); + .forEach( + (ele, + index + ) => { + if (ele + .form + .objId == + row + .id + ) { + pageData + .DefList + .splice( + index, + 1 + ); + } + }); }); - } - - - - } else if (item.action_type == "set_subtable_page_row") { - $this.viewActionSetRow(item.value) - - } else if (item.action_type == - "set_subtable_page_ext_data") { - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; - }); - if (pageData) - pageData.ExtData = value.ext_data - - } else if (item.action_type == "clear_subpage_rows") { - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; - }); - if (pageData) { - pageData.DefList = [] - pageData.ExtData = {} - } - - } else if (item.action_type == - "set_dlg_current_edit_attr") { - - if ($this.focusOldFieldId == item.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this.focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: item.value - }) - }); - } else if (item.action_type == "set_dlg_attr") { - // value = {"attr":"xxx", "value":"xxx"} - var data = item.value; - $this.$data.head_styledef.form.items.forEach(async ( - ele, index) => { - if (ele.name != "Layout") { - data.forEach( - async (ele2, - index - ) => { - if (ele - .fieldId == - ele2 - .attr - ) { - ele.value = - ele2 - .value; - } - }); - } else { - ele.setting.colList.forEach(async ( - col) => { - if (col) { - data.forEach( - async (ele2, - index - ) => { - if (col - .fieldId == - ele2 - .attr - ) { - col.value = - ele2 - .value; - } - }); - - } - - }) - } - }) } - }); - } else { - if (result.info) { - uni.showModal({ - title: this.translateSys("error") + "4.3", - content: result.info, - showCancel: false, - confirmText: this.translateSys("cancel") + + } else if (item.action_type == + "set_subtable_page_row") { + $this.viewActionSetRow(item + .value) + + } else if (item.action_type == + "set_subtable_page_ext_data" + ) { + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; + }); + if (pageData) + pageData.ExtData = + value.ext_data + + } else if (item.action_type == + "clear_subpage_rows") { + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; + }); + if (pageData) { + pageData.DefList = [] + pageData.ExtData = {} + } + + } else if (item.action_type == + "set_dlg_current_edit_attr" + ) { + + if ($this + .focusOldFieldId == + item.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: item + .value + }) }); + } else if (item.action_type == + "set_dlg_attr") { + // value = {"attr":"xxx", "value":"xxx"} + var data = item.value; + $this.setFormValues(data) } - } + }); + } else { + if (result.info) { + uni.showModal({ + title: this.translateSys( + "error") + "4.3", + content: result.info, + showCancel: false, + confirmText: this + .translateSys("cancel") + }); + } } - } else { - uni.showModal({ - title: this.translateSys("error") + "4", - content: ret.err_msg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); + } + }).catch(ex => { // console.log(ex); + let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex uni.showModal({ title: this.translateSys("error") + "4.1", - content: ex.errMsg, + content: tip, showCancel: false, confirmText: this.translateSys("cancel") }); @@ -921,9 +1108,12 @@ var tip = typeof ex == "string" ? ex : ex.message; uni.showModal({ title: this.translateSys("error") + "4.2", - content: this.translate('execute_after_change_event_failed') + this.translateSys( + content: this.translate( + 'execute_after_change_event_failed') + this + .translateSys( "comma") + - this.translate('reason') + this.translateSys("colon") + tip, + this.translate('reason') + this.translateSys("colon") + + tip, showCancel: false, confirmText: this.translateSys("cancel") }); @@ -953,49 +1143,61 @@ //鏇存柊鍒嗛〉绛句腑鐨勫垪琛ㄩ」鍐呭 viewActionSetRow(value) { const $this = this - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; - }); - if (!pageData) + const pageIndex = $this.pageDetail.findIndex(( + page, index2, arr) => { + return value.page_name == page.Name; + }) + if (pageIndex < 0) return + const pageData = $this.pageDetail[pageIndex] var detailStyleDefList = pageData.DefList || [] detailStyleDefList.forEach(ele => { value.row.forEach((rowData) => { if (ele.form.objId == rowData.id) { rowData.attrs.forEach(attr => { ele.form.items.forEach(ele2 => { - if (ele2.name != 'Layout') { - if (ele2.fieldId == attr + if (ele2.name != + 'Layout') { + if (ele2.fieldId == + attr .attr) { - ele2.value = $this + ele2.value = + $this .operationNumber( - ele2.value, - attr.value, - attr.operation) + ele2 + .value, + attr + .value, + attr + .operation + ) } } else if (ele2.name == 'Layout') { - ele2.setting.colList - .forEach(col => { - if (col) { - if (col - .fieldId == - attr - .attr - ) { - col.value = - $this - .operationNumber( - col - .value, - attr - .value, - attr - .operation - ) + ele2.setting + .colList + .forEach( + col => { + if ( + col) { + if (col + .fieldId == + attr + .attr + ) { + col.value = + $this + .operationNumber( + col + .value, + attr + .value, + attr + .operation + ) + } } - } - }) + }) } }); }); @@ -1003,6 +1205,7 @@ }) }); pageData.DefList = detailStyleDefList + $this.$set(this.pageDetail, pageIndex, pageData) }, //鍔犺浇姝e湪鐮佺洏鍐呭 @@ -1011,129 +1214,259 @@ if (JSON.stringify(data.row) == '{}') { return; } - const pageData = this.pageDetail.find((page) => { - value.page_name == page.Name; - }); - if (!pageData) + const pageIndex = this.pageDetail.findIndex(( + page, index2, arr) => { + return data.page_name == page.Name; + }) + if (pageIndex < 0) return - data.row.forEach(row => { - var styleStr = JSON.stringify(pageData.StyleDef); + const pageData = this.pageDetail[pageIndex] + var styleStr = JSON.stringify(pageData.StyleDef); - var detailStyle = JSON.parse(styleStr); - detailStyle.form.objId = row.id; - detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '').replace( - '{', '').replace('}', - '') : 'null'; - detailStyle.form.attrs = row.attrs; - row.attrs.forEach(attr => { - detailStyle.form.items.forEach(ele => { - if (ele.name != 'Layout') { - if (ele.fieldId == attr.attr) ele.value = - attr.value; - } else if (ele.name == 'Layout') { - ele.setting.colList.forEach(col => { - if (col) { - if (col.fieldId == attr - .attr) col.value = attr - .value; - } - }); - } + var detailStyle = JSON.parse(styleStr); + if (detailStyle.form) { + data.row.forEach(row => { + detailStyle = JSON.parse(styleStr); + detailStyle.form.objId = row.id; + detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '') + .replace( + '{', '').replace('}', + '') : 'null'; + detailStyle.form.attrs = row.attrs; + row.attrs.forEach(attr => { + detailStyle.form.items.forEach(ele => { + if (ele.name != 'Layout') { + if (ele.fieldId == attr.attr) ele + .value = + attr.value; + } else if (ele.name == 'Layout') { + ele.setting.colList.forEach( + col => { + if (col) { + if (col.fieldId == + attr + .attr) col + .value = attr + .value; + } + }); + } + }); }); + + pageData.DefList.push(detailStyle); + this.$set(this.pageDetail, pageIndex, pageData) + }); - - pageData.DefList.push(detailStyle); - - }); + } }, //鍔犺浇宸茬爜鐩樺唴瀹� viewAceionContent(data) { var $this = this; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; - }); - if (!pageData) + const pageIndex = $this.pageDetail.findIndex(( + page, index2, arr) => { + return data.page_name == page.Name; + }) + if (pageIndex < 0) return + const pageData = $this.pageDetail[pageIndex] pageData.ExtData = data.ext_data || {} if (JSON.stringify(data.content) == '{}') { return; } - data.content.forEach(cont => { - var styleStr = JSON.stringify(pageData.StyleDef); + var styleStr = JSON.stringify(pageData.StyleDef); + var detailStyle = JSON.parse(styleStr); + if (detailStyle.form) { + data.content.forEach(cont => { + detailStyle = JSON.parse(styleStr); + detailStyle.SelBut_Checked = data.checkbox ?? true; - var detailStyle = JSON.parse(styleStr); - detailStyle.SelBut_Checked = data.checkbox ?? true; - detailStyle.form.objId = cont.id; - detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g, '') - .replace('{', '').replace('}', - '') : 'null'; - detailStyle.form.attrs = cont.attrs; - cont.attrs.forEach(attr => { - detailStyle.form.items.forEach(ele => { - if (ele.name != 'Layout') { - if (ele.fieldId == attr.attr) ele.value = - attr.value; - } else if (ele.name == 'Layout') { - ele.setting.colList.forEach(col => { - if (col) { - if (col.fieldId == attr - .attr) col.value = attr - .value; - } - }); - } + detailStyle.form.objId = cont.id; + detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g, + '') + .replace('{', '').replace('}', + '') : 'null'; + detailStyle.form.attrs = cont.attrs; + cont.attrs.forEach(attr => { + detailStyle.form.items.forEach(ele => { + if (ele.name != 'Layout') { + if (ele.fieldId == attr.attr) ele + .value = + attr.value; + } else if (ele.name == 'Layout') { + ele.setting.colList.forEach( + col => { + if (col) { + if (col.fieldId == + attr + .attr) col + .value = attr + .value; + } + }); + } + }); }); - }); - //濡傛灉 clear = false 鍒欎笉闇�娓呴櫎锛屾牴鎹甶d鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鎻掑叆鍒伴〉闈紝濡傛灉瀛樺湪鐢ㄦ柊鐨勫睘鎬ц鐩�- if (data.clear == false) { - var isflag = true; - pageData.DefList.forEach((style, index) => { - if (style.form.objId == detailStyle.form.objId) { - cont.attrs.forEach(attr => { - style.form.items.forEach(ele => { - if (ele.name != - 'Layout') { - if (ele.fieldId == - attr.attr) ele - .value = - attr.value; - } else if (ele.name == - 'Layout') { - ele.setting.colList - .forEach( - col => { - if ( - col) { - if (col - .fieldId == - attr - .attr - ) - col - .value = - attr - .value; - } - }); - } + //濡傛灉 clear = false 鍒欎笉闇�娓呴櫎锛屾牴鎹甶d鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鎻掑叆鍒伴〉闈紝濡傛灉瀛樺湪鐢ㄦ柊鐨勫睘鎬ц鐩�+ if (data.clear == false) { + var isflag = true; + pageData.DefList.forEach((style, index) => { + if (style.form.objId == detailStyle.form + .objId) { + cont.attrs.forEach(attr => { + style.form.items.forEach( + ele => { + if (ele.name != + 'Layout') { + if (ele + .fieldId == + attr.attr) + ele + .value = + attr.value; + } else if (ele + .name == + 'Layout') { + ele.setting + .colList + .forEach( + col => { + if ( + col + ) { + if (col + .fieldId == + attr + .attr + ) + col + .value = + attr + .value; + } + }); + } + }); }); - }); - isflag = false; - } - }); - if (isflag) pageData.DefList.push(detailStyle); //寰呭垎鎷�- } else { - pageData.DefList.push(detailStyle); //寰呭垎鎷�- } - $this.activelist.push({ - active: false - }); + isflag = false; + } + }); + if (isflag) pageData.DefList.push(detailStyle); //寰呭垎鎷�+ } else { + pageData.DefList.push(detailStyle); //寰呭垎鎷�+ } + // $this.setData({pageDetail:pageD}) + $this.$set(this.pageDetail, pageIndex, pageData) - }); + }); + } }, + setFormValues(data) { + const head_styledef = this.head_styledef + if (JSON.stringify(data) == '{}') { + return; + } + head_styledef.form.items.forEach(async (ele, index) => { + if (ele.name != "Layout") { + let curIndex = data.findIndex((attr, index2, arr) => { + return attr.attr == ele.fieldId; + }) + if (curIndex > -1) { + const attr = data[curIndex] + if (ele.name == + 'Select' && + attr + .choice_list + ) { + const + dictItemList = []; + const + choiceList = + attr + .choice_list || []; + for (let d in + choiceList) { + const + val = + choiceList[ + d + ]; + dictItemList + .push({ + text: val, + value: val + }); + } + ele.dict = + dictItemList; + } + + ele.value = + attr + .value; + } + } else { + ele.setting + .colList + .forEach( + async ( + col + ) => { + if ( + col) { + let curIndex = data.findIndex(( + attr, index2, arr) => { + return attr.attr == col.fieldId; + }) + if (curIndex > -1) { + const attr = data[curIndex] + if (col.name == + 'Select' && + attr + .choice_list + ) { + const + dictItemList = []; + const + choiceList = + attr + .choice_list || []; + for (let d in + choiceList) { + const + val = + choiceList[ + d + ]; + dictItemList + .push({ + text: val, + value: val + }); + } + col.dict = + dictItemList; + } + + col.value = + attr + .value; + } + } + + }) + + } + }) + + this.setData({ + head_styledef: head_styledef + }) + }, + onClickItem(e) { //閫夋嫨椤电 // console.log(e); this.current = e.currentIndex @@ -1162,7 +1495,8 @@ this.$data.head_styledef.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� item.setting.colList.forEach(cols => { - if (cols != null) head_attr[cols.fieldId] = cols.value; + if (cols != null) head_attr[cols.fieldId] = + cols.value; }); } else head_attr[item.fieldId] = item.value; @@ -1174,7 +1508,8 @@ style.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� item.setting.colList.forEach(cols => { - if (cols != null) detail_attr[cols.fieldId] = cols + if (cols != null) detail_attr[cols + .fieldId] = cols .value; }); } else @@ -1243,14 +1578,639 @@ $this.runCustomEvent(pageData, event, input_param, list); }, - onPanelClick(value) { - // console.log(value); - this.active_id = ''; - this.activelist.forEach(ele => { - ele.active = false; + popupChange(e) { + console.log('褰撳墠妯″紡锛� + e.type + ',鐘舵�锛� + e.show); + }, + checkChange(e) { //寮规check閫夋嫨 + // console.log(e.target.dataset); + var index = e.target.dataset.index; + var ischeck = e.target.dataset.ischeck; + var data = this.$data.check_list.items; + // this.$data.check_list.items=[]; + if (this.$data.check_list.multiple_choice == "0") { //鍒ゆ柇鏃跺崟閫夎繕鏄閫�+ for (var i in data) { + data[i].check = false; + } + } + data[index].check = ischeck ? false : true; + this.$data.check_list.items = data; + + }, + popup_cancel(e) { //寮规鍙栨秷 + this.$refs.popup.close(); + }, + popup_sava(e) { //寮规纭畾 + var $this = this; + var items = $this.$data.check_list.items; + var data = []; + var name = ""; + for (var i = 0; i < items.length; i++) { + if (items[i].check == true) { + if (name) + name += ';'; + name += items[i].name; + data.push({ + id: items[i].id, + name: items[i].name + }); + } + } + if (!$this.$data.popupParam) { + uni.showModal({ + title: this.translateSys("tip"), + content: "popupParam涓虹┖锛�, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return; + } + if (data.length == 0) { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translate("tip_no_select_data"), + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return; + } + var callback_eventid = $this.$data.popupParam.button_callback.trim(); + var info = { + eventid: callback_eventid, + edtype: "0", + projectid: '', + rclsid: '', + robjid: '', + userlogin: '', + clsid: $this.$data.ClsID, + objid: "", + attr: $this.$data.popupParam.req, + dataJson: data + } + $this.DataObjRunCustomEvent(info, $this.$data.popupParam.data_attr); + this.$refs.popup.close(); + }, + + async DataObjRunCustomEvent(info, data_attr) { + var $this = this; + var enviroment = { + 'function': '3000', // 鍔熻兘鐐圭紪鍙�+ cls_id: this.$data.ClsID, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�+ 'button': 'top', // top/bottom + button_name: this.translateSys('add2'), + master: { + cls_id: this.$data.ClsID, // button=bottom鏃�master鐨刢ls_id + //obj_id: '' // button=bottom鏃�master鐨刼bj_id + } + }; + if (data_attr) { + enviroment.edit_dlg = { + type: 'small', //灏忕獥鍙�+ class_id: this.$data.ClsID, //褰撳墠鏁版嵁绫籭d + } + if (data_attr) { + enviroment.edit_dlg.form_control = { //鎵�睘鐨勮〃鍗曟帶浠�+ name: data_attr.Name, //瀛楁灞炴� + text: data_attr.DispName, //鏄剧ず鏂囨湰 + group_name: data_attr.GroupName, //灞炴�缁�+ type: data_attr.Type, //瀛楁绫诲瀷 + readonly: data_attr.ReadOnly, //鏄惁鍙 + button_img: data_attr.button_img, //寮曠敤鎸夐挳鐨勫浘鏍�+ button_tooltip: data_attr.button_tooltip //寮曠敤鎸夐挳鐨則ooltip + } + } + } + enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var input_param = Base64.encode(JSON.stringify(info.attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + if (info.dataJson) + info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var obj_attr = {}; + info.attr.forEach(item => { + obj_attr[item.attr] = item.value; }); - this.activelist[value].active = true; - // console.log(this.$data.activelist); + if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}'; + var dataInfo = { + ed_type: info.edtype, + start_transaction: true, + class_id: info.clsid, + class_name: '', + event_id: info.eventid, + event_name: '', + data_obj_id: info.objid, + obj_attr: obj_attr, + prj_id: info.projectid, + ref_cls_id: info.rclsid, + rel_obj_id: info.robjid, + user_login: info.userlogin, + data_json: info.dataJson, + compose_info: '', + ext_info: enviroment, + global_attr: global_attr, + input_param: input_param, + }; + console.log(dataInfo); + // return; + runCustomEvent(dataInfo).then(data => { + if (data.ret != 0) { + var tip = data.err_info ? typeof data.err_info == 'string' ? data + .err_info : + data + .err_info.join('<br/>') : ''; + if (data.ret == 801) { + if (this.param.Only_Script_Error) { + let pos = tip.indexOf("锛�); + if (pos > -1) tip = tip.substring(pos + 1); + } + uni.showModal({ + title: this.translateSys("tip"), + content: tip, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + } else uni.showModal({ + title: this.translateSys("tip"), + content: tip + ',' + this.translateSys('tip') + ':' + data + .ret, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + return false + } else { + var tip = data.info ? typeof data.info == 'string' ? data.info : data + .info + .join( + '<br/>') : ''; + if (tip) uni.showModal({ + title: this.translateSys("tip"), + content: tip, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + + var actionlist = data.action; + if (actionlist) { + console.log(actionlist); + for (var i = 0; i < actionlist.length; i++) { + var action = actionlist[i]; + if (action.action_type == 'set_dlg_attr') { + var result = action.value; + $this.setFormValues(result) + } else if (action.action_type == 'set_dlg_attr_show') { + var result = action.value; + result.forEach(async (attr, key) => { + $this.$data.head_styledef.form.items + .forEach( + async (ele, + index) => { + //鍒ゆ柇鏄惁鏄爡鏍艰〃鍗�+ if (ele.name != 'Layout') { + if (ele.fieldId == attr + .attr) { + ele.show = attr + .show; + } + } else if (ele.name == + 'Layout') { + ele.setting.colList + .forEach( + col => { + if (col) { + if (col + .fieldId == + attr + .attr + ) { + col.show = + attr + .show; + } + } + }); + } + }); + }); + var head_styledef = JSON.parse(JSON.stringify($this.$data + .head_styledef)); + $this.$data.head_styledef = []; + $this.$data.head_styledef = head_styledef; + // console.log($this.$data.head_styledef); + } else if (action.action_type == 'set_global_attr') { + $this.$data.global_attr = action.value || []; + } else { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translateSys( + "quotation_mark_left") + + action + .action_type + this.translateSys( + "quotation_mark_right") + this + .translate( + "tip_action_unprocessed"), + showCancel: false, + confirmText: this.translateSys("cancel") + }); + } + } + } + console.log($this.head_styledef); + if (data.result) { + var result = data.result; + for (var i = 0; i < result.length; i++) { + for (var c = 0; c < $this.$data.head_styledef.form.items + .length; c++) { + var attr = $this.$data.head_styledef.form.items[c]; + //鍒ゆ柇琛ㄥ崟閲屾槸鍚︽湁杩斿洖瀛楁锛屾病鏈夊氨瑁呰浇鍒癿odel閲岋紝鐐瑰嚮纭畾鎻愪氦鐨勬椂鍊欏甫涓婅繖浜涙暟鎹�+ if ($this.head_styledef.form.model[result[i].attr] == + undefined) { + $this.head_styledef.form.model[result[i].attr] = + result[i] + .value; + } + //鍒ゆ柇鏄惁鏄爡鏍艰〃鍗�+ if (attr.name != 'Layout') { + if (attr.fieldId == result[i].attr) { + attr.value = ''; + attr.oldvalue = ''; + attr.value = result[i].value; + attr.oldvalue = result[i].value; + $this.head_styledef.form.model[attr.fieldId] = + result[i] + .value; + } + } else if (attr.name == 'Layout') { + attr.setting.colList.forEach(col => { + if (col) { + if (col.fieldId == result[i].attr) { + col.value = ''; + col.oldvalue = ''; + col.value = result[i].value; + col.oldvalue = result[i].value; + $this.head_styledef.form.model[col + .fieldId] = + result[i].value; + } + } + }); + } + } + + var length = 0; + if (!$this.$data.refdatastore.filter(function(s) { + return result[i].attr == s.attr + }).length) { + length = 1; + $this.$data.refdatastore.push(result[i]); + } + if (length == 0) { + for (var j = 0; j < $this.$data.refdatastore.length; j++) { + if ($this.$data.refdatastore[j].attr == result[i] + .attr) { + $this.$data.refdatastore[j].value = result[i] + .value; + } + } + } + } + } + } + + }).catch(ex => { + // console.log(ex); + let exStr = JSON.stringify(ex) + if (exStr == "{}") + exStr = ex + let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr + uni.showModal({ + title: this.translateSys("error") + "3.1", + content: exStr, + showCancel: false, + confirmText: this.translateSys("cancel") + }); + }); + }, + dataObjRunCustomEvent_Return(eventid, data_attr, button_callback, item) { + console.log("dataObjRunCustomEvent_Return",eventid,data_attr,button_callback) + const $this = this + var enviroment = { + 'function': '3000', // 鍔熻兘鐐圭紪鍙�+ cls_id: $this.ClsID, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�+ 'button': 'top', // top/bottom + button_name: $this.translateSys('add2'), + master: { + cls_id: $this.ClsID, // button=bottom鏃�master鐨刢ls_id + //obj_id: '' // button=bottom鏃�master鐨刼bj_id + } + }; + var obj_attr = $this.head_styledef.form.model; + console.log(obj_attr); + var req = Object.keys(obj_attr).map((a) => ({ + attr: a, + value: obj_attr[a] || "", + })); + if ($this.refdatastore.length > 0) { + for (var i = 0; i < $this.refdatastore.length; i++) { + if (!req.filter(function(s) { + return $this.refdatastore[i].attr == s.name + }).length) { + req.push({ + 'attr': $this.refdatastore[i].attr, + 'value': $this.refdatastore[i].value + }); + } + } + } + + var extinfo = enviroment; + extinfo.edit_dlg = { + type: 'small', //灏忕獥鍙�+ class_id: $this.ClsID, //褰撳墠鏁版嵁绫籭d + } + extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var global_attr = Base64.encode(JSON.stringify($this.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var obj_attr = {}; + req.forEach(item2 => { + obj_attr[item2.attr] = item2.value; + }); + let input_param = Base64.encode( + JSON.stringify( + Object.keys(obj_attr).map((a) => ({ + attr: a, + value: obj_attr[a] || "", + })) + ) + ); + + if (!eventid.includes('{')) eventid = '{' + eventid + '}'; + var dataInfo = { + ed_type: "0", + start_transaction: true, + class_id: $this.ClsID, + class_name: '', + event_id: eventid, + event_name: '', + data_obj_id: '', + obj_attr: obj_attr, + prj_id: '', + ref_cls_id: '', + rel_obj_id: '', + user_login: '', + data_json: [], + compose_info: '', + ext_info: extinfo, + global_attr: global_attr, + input_param: input_param, + }; + console.log(dataInfo); + // return; + runCustomEvent(dataInfo).then(data => { + if (data.ret != 0) { + var tip = data.err_info ? typeof data.err_info == 'string' ? data + .err_info : + data + .err_info.join('<br/>') : ''; + if (data.ret == 801) { + if ($this.param.Only_Script_Error) { + let pos = tip.indexOf("锛�); + if (pos > -1) tip = tip.substring(pos + 1); + } + uni.showModal({ + title: $this.translateSys("tip"), + content: tip, + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + } else uni.showModal({ + title: $this.translateSys("tip"), + content: tip + ',' + $this.translateSys('tip') + ':' + data + .ret, + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + return false + } else { + var tip = data.info ? typeof data.info == 'string' ? data.info : data + .info + .join( + '<br/>') : ''; + if (tip) uni.showModal({ + title: $this.translateSys("tip"), + content: tip, + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + + if (data != "") { + var actions = data.action; + if (actions) { + for (var i = 0; i < actions.length; i++) { + var action = actions[i]; + console.log(action) + var val = action.value; + var enviroment = JSON.stringify(enviroment); + + if (action.action_type == 'open_panel') { + var d = dialog({ + title: '<i class="ace-icon fa fa-info-circle"></i> ' + + $this.translateSys("tip"), + content: $this.translateSys( + "quotation_mark_left") + + action + .action_type + $this.translateSys( + "quotation_mark_right") + $this + .translate( + "tip_action_unprocessed") + }); + d.show(); + } else if (action.action_type == 'open_select_userdlg') { + var style = val.style; + // style == 'user' ? '閫夋嫨浜哄憳' : style == 'department' ? '閫夋嫨閮ㄩ棬' : style == 'role' ? '閫夋嫨瑙掕壊' : '' + var param = { + item: item, + button_callback: button_callback, + req: req, + data_attr: data_attr + } + uni.navigateTo({ + url: '../selpsn/index?mulit=false¶m=' + + JSON + .stringify( + param), + events: { + AddPer(data, param) { + // console.log(param); + console.log(data); + var callback_eventid = param + .button_callback + .trim(); + var info = { + eventid: callback_eventid, + edtype: "0", + projectid: '', + rclsid: '', + robjid: '', + userlogin: '', + clsid: $this.$data.param + .DataCls + .id, + objid: "", + attr: param.req, + inputparameter: data, + dataJson: [], + } + $this.DataObjRunCustomEvent(info, + param + .data_attr); + } + } + }); + } else if (action.action_type == 'open_data_query_dlg') { + var d = dialog({ + title: '<i class="ace-icon fa fa-info-circle"></i> ' + + $this.translateSys("tip"), + content: $this.translateSys( + "quotation_mark_left") + + action + .action_type + $this.translateSys( + "quotation_mark_right") + $this + .translate( + "tip_action_unprocessed") + }); + d.show(); + } else if (action.action_type == 'open_common_dlg') { + + if (val.common_dlg_id == 'check_list') { + $this.setData({ + check_list: val.config + }) + if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�+ $this.setData({ + popupType: "right" + }) + else + $this.setData({ + popupType: "center" + }) + // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� + $this.$refs.popup.open($this.popupType); + var popupParam = { + item: item, + button_callback: button_callback, + req: req, + data_attr: data_attr + } + $this.setData({ + popupParam: popupParam + }) + } + } else if (action.action_type == 'open_project_query_dlg') { + //console.log(action.value.select_range); + //console.log(action.value.mulit_select); + var priRel = '-1'; + if (action.value.select_range == '鍏ㄩ儴鐩稿叧') + priRel = '0'; + else if (action.value.select_range == '鎴戣礋璐g殑椤圭洰') + priRel = '1'; + else if (action.value.select_range == '鎴戝垱寤虹殑') + priRel = '2'; + else if (action.value.select_range == '鎴戝弬涓庣殑' || action + .value + .select_range == '鎴戝弬鍔犵殑') + priRel = '3'; + else if (action.value.select_range == '鎴戝叧娉ㄧ殑') + priRel = '4'; + else if (action.value.select_range == '鎴戜笅灞炵殑椤圭洰') + priRel = '5'; + var param_ = { + item: item, + button_callback: button_callback, + req: req + } + uni.navigateTo({ + url: '../selPrj/index?relation=' + priRel + + '¶m=' + + JSON.stringify(param_), + events: { + AddPer(data, param) { + var attr = param.item.fieldId; + $this.head_styledef.form.model[ + attr] = + data[0].ID + + ';' + data[0].Name; + + // $this.$data.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name; + // $this.$data.classAttrList[param.index].Attr[param.iindex].ValID=data[0].ID+';'+data[0].Name; + var callback_eventid = param + .button_callback + .trim(); + if (callback_eventid) { + var info = { + eventid: callback_eventid, + edtype: "2", + projectid: data[0].ID, + rclsid: "", + robjid: "", + userlogin: "", + clsid: $this.$data + .param + .DataCls.id, + objid: "", + attr: param.req, + dataJson: [], + } + + $this.DataObjRunCustomEvent( + info); + } + } + } + }); + } else { + uni.showModal({ + title: $this.translateSys("tip"), + content: $this.translateSys( + "quotation_mark_left") + + action.action_type + $this.translateSys( + "quotation_mark_right") + $this + .translate( + "tip_action_unprocessed"), + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + } + } + } + } else { + uni.showModal({ + title: $this.translateSys('tip') + "5.2", + content: $this.translateSys("quotation_mark_left") + + "before_click_button" + $this.translateSys( + "quotation_mark_right") + $this.translateSys( + "comma") + 'event_id' + eventid, + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + } + } + + }).catch(ex => { + // console.log(ex); + let exStr = JSON.stringify(ex) + if (exStr == "{}") + exStr = ex + let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr + uni.showModal({ + title: $this.translateSys('tip') + "5.1", + content: exStr, + showCancel: false, + confirmText: $this.translateSys("cancel") + }); + }); + }, + + + onPanelClick(value, id) { + // console.log(value); + this.active_id = id; }, //纭畾 ok(pageData) { @@ -1269,23 +2229,26 @@ uni.showModal({ title: this.translateSys("tip"), content: this.translate( - "page.tip_no_data_first") + + "tip_no_data_first") + this.translateSys( - "quotation_mark_left") + pageData.Name + this.translateSys( - "sys.quotation_mark_right") + + "quotation_mark_left") + pageData.Name + this + .translateSys( + "quotation_mark_right") + this.translate( - "page.tip_no_data_last"), + "tip_no_data_last"), showCancel: false, confirmText: this.translateSys("cancel") }); return false; } //鑾峰彇琛ㄥご灞炴� + pageData.okLoading = true var head_attr = {}; this.$data.head_styledef.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� item.setting.colList.forEach(cols => { - if (cols != null) head_attr[cols.fieldId] = cols.value; + if (cols != null) head_attr[cols.fieldId] = + cols.value; }); } else head_attr[item.fieldId] = item.value; @@ -1298,7 +2261,8 @@ style.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� item.setting.colList.forEach(cols => { - if (cols != null) detail_attr[cols + if (cols != null) detail_attr[ + cols .fieldId] = cols.value; }); } else @@ -1318,18 +2282,21 @@ pageData.DefList.forEach(style => { style.form.attrs.forEach(attr => { for (var key in detailAttrList) { - if (style.form.objId == detailAttrList[key][ + if (style.form.objId == detailAttrList[key] + [ 'id' ]) { var keys = Object.keys(detailAttrList[ key]); var isflag = true; keys.forEach((ele) => { - if (ele == attr.attr) isflag = + if (ele == attr.attr) + isflag = false; }); if (isflag) { - detailAttrList[attr.attr] = attr.value; + detailAttrList[attr.attr] = attr + .value; } } } @@ -1356,6 +2323,7 @@ }); }); if (jsonlist.length == 0) { + pageData.okLoading = false uni.showModal({ title: this.translateSys("tip"), content: this.translate("tip_no_select_data"), @@ -1403,194 +2371,336 @@ }; // console.log(dataInfo); - this.$store.dispatch('runCustomEvent', dataInfo).then(res => { - console.log(res); - if (res.err_code == 0) { - var result = res.result; - if (result.ret != 0) { - var tip = result.err_info ? typeof result - .err_info == 'string' ? result.err_info : - result.err_info.join('<br/>') : ''; - if (result.ret == 801) uni.showModal({ - title: this.translateSys('tip'), + runCustomEvent(dataInfo).then(result => { + console.log(result); + if (result.ret != 0) { + var tip = result.err_info ? typeof result + .err_info == 'string' ? result.err_info : + result.err_info.join('<br/>') : ''; + if (result.ret == 801) { + if (this.param.Only_Script_Error) { + let pos = tip.indexOf("锛�); + if (pos > -1) tip = tip.substring(pos + + 1); + } + uni.showModal({ + title: this.translateSys( + "tip"), content: tip, showCancel: false, - confirmText: this.translateSys("cancel") + confirmText: this.translateSys( + "cancel") }); - else uni.showModal({ - title: this.translateSys('tip'), - content: tip + ',' + this.translateSys('tip') + ':' + result.ret, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - return false; - } else { - var tip = result.info ? typeof result.info == - 'string' ? result.info : result.info - .join('<br/>') : ''; - if (tip) uni.showModal({ - title: this.translateSys('tip'), - content: tip, - showCancel: false, - confirmText: this.translateSys("cancel") - }); - if (result.result_type == 0) { - if (result.action) { - // uni.showModal({title:this.translateSys("tip"),content:JSON.stringify(result.action),showCancel:false,confirmText:this.translateSys("cancel")}); + } else uni.showModal({ + title: this.translateSys('tip'), + content: tip + ',' + this + .translateSys('tip') + ':' + + result.ret, + showCancel: false, + confirmText: this.translateSys( + "cancel") + }); + return false; + } else { + var tip = result.info ? typeof result.info == + 'string' ? result.info : result.info + .join('<br/>') : ''; + if (tip) uni.showModal({ + title: this.translateSys('tip'), + content: tip, + showCancel: false, + confirmText: this.translateSys( + "cancel") + }); + if (result.result_type == 0) { + if (result.action) { + // uni.showModal({title:this.translateSys("tip"),content:JSON.stringify(result.action),showCancel:false,confirmText:this.translateSys("cancel")}); - result.action.forEach(item => { - if (item.action_type == - "insert_subtable_page_row" - ) { //鐮佺洏涓�- var value = item.value; - //鍔犺浇宸茬粡鐮佺洏鏁版嵁 - $this.viewAceionRow(value, ); - //娓呯┖鏉$爜鍐呭 - $this.$data.head_styledef - .form.items.forEach(( - item, - index) => { - if (item - .fieldId != - "S_CNTR_CODE" - ) { - item.value = - ''; - item.oldvalue = - ''; - $this.$data - .head_styledef - .form - .model[ - item - .fieldId - ] = - ''; - } - }); + result.action.forEach(item => { + if (item.action_type == + "insert_subtable_page_row" + ) { //鐮佺洏涓�+ var value = item.value; + //鍔犺浇宸茬粡鐮佺洏鏁版嵁 + $this.viewAceionRow( + value, ); + //娓呯┖鏉$爜鍐呭 + $this.$data + .head_styledef + .form.items + .forEach(( + item, + index) => { + if (item + .fieldId != + "S_CNTR_CODE" + ) { + item.value = + ''; + item.oldvalue = + ''; + $this + .$data + .head_styledef + .form + .model[ + item + .fieldId + ] = + ''; + } + }); + uni.showModal({ + title: this + .translateSys( + "tip" + ), + content: this + .translate( + 'execute_event_success' + ), + showCancel: false, + confirmText: this + .translateSys( + "cancel" + ) + }); + } else if (item.action_type == + "set_subtable_page_content" + ) { //宸茬爜鐩�+ $this.$data.param + .Show_Welcom_Page = + false; + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page.Name; + }); + if (value.clear_confirm != + false && value.clear == + true && + pageData && pageData + .DefList.length > 0 + ) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹� uni.showModal({ - title: this.translateSys("tip"), - content: this.translate( - 'execute_event_success'), - showCancel: false, - confirmText: this.translateSys("cancel") + title: this + .translateSys( + 'tip' + ), + content: this + .translate( + "are_you_sure_clear_first" + ) + + this + .translateSys( + "quotation_mark_left" + ) + + value + .page_name + + this + .translateSys( + "quotation_mark_right" + ) + + this + .translate( + "are_you_sure_clear_last" + ), + success: function( + res + ) { + if (res + .confirm + ) { + if ( + pageData + ) + pageData + .DefList = []; + $this + .viewAceionContent( + value + ); + } else if ( + res + .cancel + ) { + if ( + pageData + ) + pageData + .DefList = []; + $this + .viewAceionContent( + value + ); + } + } }); - } else if (item.action_type == - "remove_subtable_page_row" - ) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�- var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + } else { + if (pageData) + pageData + .DefList = []; + $this + .viewAceionContent( + value); + } + } else if (item + .action_type == + "remove_subtable_page_row" + ) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page + .Name; }); - if (pageData - ?.DefList - ) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 - //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�- value.row.forEach( - row => { - pageData.DefList - .forEach( - ( - ele, - index - ) => { - if (ele - .form - .objId == - row - .id - ) { - pageData.DefList.splice( - index, 1); - } - }); - }); - } - } else if (item.action_type == - "set_subtable_page_row") { - $this.viewActionSetRow(item - .value) + if (pageData + ?.DefList + ) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ value.row.forEach( + row => { + pageData + .DefList + .forEach( + ( + ele, + index + ) => { + if (ele + .form + .objId == + row + .id + ) { + pageData + .DefList + .splice( + index, + 1 + ); + } + } + ); + }); + } + } else if (item + .action_type == + "set_subtable_page_row" + ) { + $this.viewActionSetRow( + item + .value) - } else if (item.action_type == - "set_subtable_page_ext_data" - ) { - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + } else if (item + .action_type == + "set_subtable_page_ext_data" + ) { + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page + .Name; }); - if (pageData) { - pageData.ExtData = value - .ext_data - } + if (pageData) { + pageData.ExtData = + value + .ext_data + } - } else if (item.action_type == - "clear_subpage_rows") { - var value = item.value; - const pageData = $this.pageDetail.find((page) => { - value.page_name == page.Name; + } else if (item + .action_type == + "clear_subpage_rows") { + var value = item.value; + const pageData = $this + .pageDetail.find(( + page) => { + return value + .page_name == + page + .Name; }); - if (pageData) { - pageData.DefList = [] - pageData.ExtData = {} - } - } else if (item.action_type == - "set_dlg_current_edit_attr" - ) { - if ($this - .focusOldFieldId == - item.value) - $this.setData({ - focusFieldId: "" - }) - else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ + if (pageData) { + pageData + .DefList = [] + pageData + .ExtData = {} + } + } else if (item + .action_type == + "set_dlg_current_edit_attr" + ) { + if ($this + .focusOldFieldId == + item.value) + $this.setData({ + focusFieldId: "" + }) + else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this + .setData({ focusFieldId: item .value }) - }); - } - }); - } else { - if ($this.$data.After_OK_Event.ID != event - .ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢 - - $this.sava(pageParam, $this.$data - .After_OK_Event); //鎵ц纭畾鍚庝簨浠�- + }); + } else if (item.action_type == + "set_dlg_attr") { + // value = {"attr":"xxx", "value":"xxx"} + var data = item.value; + $this.setFormValues(data) } - } - } else { - if (result.info) { - uni.showModal({ - title: this.translateSys("tip"), - content: result.info, - showCancel: false, - confirmText: this.translateSys("cancel") - }); + }); + } else { + if ($this.$data.After_OK_Event.ID != + event + .ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢 + + $this.sava(pageParam, $this.$data + .After_OK_Event); //鎵ц纭畾鍚庝簨浠�+ } } + } else { + + if (result.info) { + uni.showModal({ + title: this.translateSys( + "tip"), + content: result.info, + showCancel: false, + confirmText: this + .translateSys("cancel") + }); + } } - } else { - uni.showModal({ - title: this.translateSys("error") + "8", - content: res.err_msg, - showCancel: false, - confirmText: this.translateSys("cancel") - }); } + + pageParam.okLoading = false }).catch(ex => { - var tip = typeof ex == "string" ? ex : ex.errMsg; + pageParam.okLoading = false + let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex uni.showModal({ title: this.translateSys("error") + "8.1", - content: this.translate("execute_after_ok_event_failed") + this.translateSys( + content: this.translate( + "execute_after_ok_event_failed") + + this.translateSys( "comma") + tip, showCancel: false, @@ -1634,8 +2744,8 @@ .v-head-style { width: 98%; - .uni-form-item { - margin-bottom: 15rpx; + .uni-forms-item { + margin-bottom: 11rpx; } .input-wrapper { @@ -1647,6 +2757,7 @@ .uni-input { flex: 1; padding: 12rpx 8rpx; + color: #2d8cf0; // height: 40rpx; // line-height: 40rpx; } @@ -1712,10 +2823,6 @@ position: relative; border: 0 solid #000; box-sizing: border-box; - } - - .uni-input { - /* border: none; */ } .uni-icon { @@ -1818,8 +2925,15 @@ font-size: 38rpx; font-weight: bold; float: right; + color: #fff; display: inline-block; } + + .btn_disabled { + background-color: #ddd; + color: #888; + } + } } @@ -1951,6 +3065,51 @@ border-radius: 5px; } + .popup-header { + font-size: 42rpx; + font-weight: bold; + margin: 20rpx 20rpx 0px 20rpx; + } + + .view_popup_CheckList { + margin-bottom: 20rpx; + } + + .popup-footer { + float: right; + position: absolute; + bottom: 0; + right: 20rpx; + } + + button.btn_popup_add { + width: 180rpx; + margin-top: 50rpx; + margin-right: 20rpx; + padding: 15rpx; + line-height: 1.5; + background: #27A6E1; + border: none; + color: #fff; + font-size: 38rpx; + font-weight: bold; + /* float: left; */ + display: inline-block; + } + + button.btn_popup_cancel { + width: 180rpx; + margin-top: 50rpx; + padding: 15rpx; + line-height: 1.5; + background: #27A6E1; + border: none; + color: #fff; + font-size: 38rpx; + font-weight: bold; + /* float: right; */ + display: inline-block; + } } -- Gitblit v1.9.1