From d8872903e30f0a53abefcd279ae03258341e931f Mon Sep 17 00:00:00 2001 From: cuiqian2004 <cuiqian2004@163.com> Date: 星期四, 20 三月 2025 09:10:31 +0800 Subject: [PATCH] test --- pages/modal/5601.vue | 1089 +++++++++++++++++--------------------------------------- 1 files changed, 331 insertions(+), 758 deletions(-) diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue index a09008a..3055125 100644 --- a/pages/modal/5601.vue +++ b/pages/modal/5601.vue @@ -1,98 +1,10 @@ <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"> - <!-- 鏅�甯冨眬 --> - <uni-forms-item v-if="item.name != 'Layout'" :label="item.label ?item.label +'锛�:'' " - :label-width="item.labelWidth+'px'"> - <uni-data-picker v-if="item.name=='Select'" :class="item.disabled?'input-disabled':''" - v-model="item.value" :localdata="item.useDict ? item.dict : item.selections" - @change="onEnterChange(item)" :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="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)" - @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="classAttr_extButton(item)"></text> - </view> - <!-- 澶嶉�妗�--> - <checkbox-group v-if="item.name=='Checkbox'" :class="item.disabled?'input-disabled':''" - :disabled="item.disabled" @change="onCheckBoxValue" :data-attr="item.fieldId" - :data-index="index"> - <label v-for="(item2) in item.selections" :key="item2.value"> - <checkbox :value="item2.value" :checked="item.value.includes(item2.value)" /> - <text>{{item2.label}}</text> - </label> - </checkbox-group> - <!-- 鍗曢�妗�--> - <radio-group v-if="item.name=='Radio'" :class="item.disabled?'input-disabled':''" - :disabled="item.disabled" @change="onRadioBoxValue" :data-attr="item.fieldId" - :data-index="index"> - <label v-for="(item2) in item.selections" :key="item2.value"> - <radio :value="item2.value" :checked="item2.value === item.value" /> - <text>{{item2.label}}</text> - </label> - </radio-group> - <!-- Switch寮�叧 --> - <switch class="input-switch" v-if="item.name=='Switch'" :class="item.disabled?'input-disabled':''" - :disabled="item.disabled" v-model="item.value" @change="onEnterChange(item)" /> - </uni-forms-item> - <!-- 鏍呮牸甯冨眬 --> - <uni-row v-else :gutter="item.setting.gutter"> - <uni-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 v-if="col!=null" :label="col.label ? col.label +'锛�:''" - :label-width="col.labelWidth+'px'"> - <uni-data-picker v-if="col.name=='Select'" :class="col.disabled?'input-disabled':''" - v-model="col.value" :localdata="col.useDict ? col.dict : col.selections" - @change="onEnterChange(col)" :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="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)" @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="classAttr_extButton(col)"></text> - </view> - <!-- 澶嶉�妗�--> - <checkbox-group v-if="col.name=='Checkbox'" :class="col.disabled?'input-disabled':''" - :disabled="col.disabled" @change="onCheckBoxValue" :data-attr="col.fieldId" - :data-index="index" :data-iindex="key"> - <label v-for="(col2) in col.selections" :key="col2.value"> - <checkbox :value="col2.value" :checked="col.value.includes(col2.value)" /> - <text>{{col2.label}}</text> - </label> - </checkbox-group> - <!-- 鍗曢�妗�--> - <radio-group v-if="col.name=='Radio'" :class="col.disabled?'input-disabled':''" - :disabled="col.disabled" @change="onRadioBoxValue" :data-attr="col.fieldId" - :data-index="index" :data-iindex="key"> - <label v-for="(col2) in col.selections" :key="col2.value"> - <radio :value="col2.value" :checked="col2.value === col.value" /> - <text>{{col2.label}}</text> - </label> - </radio-group> - <!-- Switch寮�叧 --> - <switch v-if="col.name=='Switch'" :class="col.disabled?'input-disabled':''" - :disabled="col.disabled" v-model="col.value" @change="onEnterChange(col)" /> - </uni-forms-item> - </uni-col> - </uni-row> - </view> - </uni-forms> + <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId" + @click="onClick" @focus="ontap" @change="onEnterChange" @click-prefix="classAttr_extButton" + @click-suffix="classAttr_extButton"></OIForm> + <view class="view-content"> <!-- 鐮佺洏瀛愮晫闈�--> <view v-if="param.Show_Welcom_Page==false" class="uni-panel-content"> @@ -115,38 +27,8 @@ @tap="onPanelClick(ii,style.form.htmlobjId)" :id="'dvpanel'+style.form.htmlobjId" :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"> - <!-- 鏅�甯冨眬 --> - <view v-if="item.name!='Layout'"> - <text class="txt_title" - :style="{'width':item.labelWidth+'px'}">{{item.label}}锛�/text> - <span class="form-item-span" - v-if="item.disabled">{{item.value}}</span> - <input class="uni-input" v-if="!item.disabled" - :type="item.name=='InputNumber'?'number':'text'" - v-model="item.value" :disabled="item.disabled" - :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]? 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" - :style="{'width':cols.labelWidth+'px'}">{{cols.label}}锛�/text> - <span class="form-item-span" - v-if="cols.disabled">{{cols.value}}</span> - <input class="uni-input" v-if="!cols.disabled" - :type="cols.name=='InputNumber'?'number':'text'" - v-model="cols.value" :disabled="cols.disabled" - :placeholder="cols.placeholder" :maxlength="-1" /> - </view> - </uni-col> - </uni-row> - </div> - </div> + <OIForm class="dv-panel-form" :form="style.form" viewMode></OIForm> + <div class="dv-panel-button" v-if="pageData.Select_Button==true || pageData.Row_Button.length > 0"> @@ -163,6 +45,7 @@ {{(btn.Style == 'text'|| btn.Style == 'img_text') ? btn.ShowName :""}} </button> </div> + </div> </checkbox-group> </view> @@ -238,11 +121,16 @@ getUIStyleInfo, runCustomEvent, } from "@/api/data.js" + import dayjs from "dayjs"; + import OIForm from '@/components/oi-form/index.vue' export default { name: "PageModal5601", modules: { Base64, + }, + components: { + OIForm, }, data() { return { @@ -738,10 +626,11 @@ console.log(result.decodedata); item.value = result.decodedata; var $this = this; - if (item.oldvalue != item.value && item.value.trim() != "") { - item.oldvalue = item.value; + let newVal = item.value.trim() + if (newVal) { + item.oldvalue = newVal; var attr = item.fieldId; - this.head_styledef.form.model[attr] = item.value; + this.head_styledef.form.model[attr] = newVal; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠� var onSuffixClickCallbackEvent = item.bind .onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�@@ -752,36 +641,60 @@ if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� $this.onChange(onChangeEvent); } - if (item.value) { //绗竴涓緭鍏ユ涓嶄负绌�- //鍒濆鍖栵紝涓嬩釜杈撳叆妗唂ocus灞炴� - var findd = false - for (let i in $this.head_styledef.form.items) { - const ele = $this.head_styledef.form.items[i] - if (ele.name != "Layout") { - if (ele.name == 'Input' || ele.name == - 'InputNumber') { - if (attr == ele.fieldId) { - findd = true - } else { - if (findd) { - $this.setData({ - focusFieldId: ele.fieldId - }) - break - } + //鍒濆鍖栵紝涓嬩釜杈撳叆妗唂ocus灞炴� + var findd = false + for (let i in $this.head_styledef.form.items) { + const ele = $this.head_styledef.form.items[i] + if (ele.name != "Layout") { + if (ele.name == 'Input' || ele.name == + 'InputNumber') { + if (attr == ele.fieldId) { + findd = true + } else { + if (findd) { + $this.setData({ + focusFieldId: ele.fieldId + }) + break } } - } else { - if (findd) { - let curIndex = ele.setting.colList.findIndex(( - col, index2, arr) => { - return (col.name == 'Input' || col - .name == 'InputNumber'); + + } + } else { + if (findd) { + 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] + .fieldId }) - if (curIndex > -1) { + break + } + + } else { + 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; + }) + if (curIndex2 > -1) { $this.setData({ focusFieldId: ele.setting .colList[curIndex] @@ -789,47 +702,27 @@ }) break } - - } else { - 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; - }) - if (curIndex2 > -1) { - $this.setData({ - focusFieldId: ele.setting - .colList[curIndex] - .fieldId - }) - break - } - } } - } + } } - } }) }, onEnterChange(item) { //鍥炶溅锛岀偣鍑绘寜閽紝鍙栨秷鑺傜偣浜嬩欢 console.log(item); - if (item.oldvalue != item.value && item.value.trim() != "") { - item.oldvalue = item.value; + let newVal = item.value + if (typeof item.value == "string") { + newVal = item.value.trim() + if (!newVal) + return + } + if (item.oldvalue != newVal) { + item.oldvalue = newVal; var attr = item.fieldId; - this.head_styledef.form.model[attr] = item.value; + this.head_styledef.form.model[attr] = newVal; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠� if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠�@@ -838,63 +731,7 @@ } }, - onCheckBoxValue(e) { //缁戝畾Model鍊�- let values = e.detail.value || [] - const item = this.head_styledef.form.items[e.currentTarget?.dataset?.index || 0] - if (item?.setting?.colList) { - const col = item.setting.colList[e.currentTarget?.dataset?.iindex || 0] - if (col) { - col.value = values - let attr = col.fieldId; - this.head_styledef.form.model[attr] = col.value; - var onChangeEvent = col.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠�- this.onChange(onChangeEvent); - } - return - } - } else { - if (item) { - item.value = values - let attr = item.fieldId; - this.head_styledef.form.model[attr] = item.value; - var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠�- this.onChange(onChangeEvent); - } - } - } - }, - onRadioBoxValue(e) { //缁戝畾Model鍊�- let values = e.detail.value || "" - const item = this.head_styledef.form.items[e.currentTarget?.dataset?.index || 0] - if (item?.setting?.colList) { - const col = item.setting.colList[e.currentTarget?.dataset?.iindex || 0] - if (col) { - col.value = values - let attr = col.fieldId; - this.head_styledef.form.model[attr] = col.value; - var onChangeEvent = col.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠�- this.onChange(onChangeEvent); - } - return - } - } else { - if (item) { - item.value = values - let attr = item.fieldId; - this.head_styledef.form.model[attr] = item.value; - var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�- if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠�- this.onChange(onChangeEvent); - } - } - - } - - }, classAttr_extButton(item) { var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠� var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�@@ -933,9 +770,9 @@ 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; + item.setting.colList.forEach(col => { + if (col != null) detail_attr[col + .fieldId] = col.value; }); } else detail_attr[item.fieldId] = item.value; @@ -993,9 +830,9 @@ var head_attr = {}; 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; + item.setting.colList.forEach(col => { + if (col != null) head_attr[col + .fieldId] = col.value; }); } else head_attr[item.fieldId] = item.value; @@ -1091,262 +928,99 @@ 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; + 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; + "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 + 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( - "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 - ); + 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"), + cancelText: $this.translateSys('ok'), + confirmText: $this.translateSys('cancel'), + success: function(res) { + if (res.cancel) { + if (pageData) + pageData.DefList = []; + $this.viewAceionContent(value); + } else if (res.confirm) { + if (pageData) + pageData.DefList = []; + $this.viewAceionContent(value); } } }); } else { if (pageData) - pageData - .DefList = []; - $this - .viewAceionContent( - value); + pageData.DefList = []; + $this.viewAceionContent(value); } - } else if (item.action_type == - "select_subtable_page_row" - ) { + } 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(); - } - ) - .exec(); - } - }); - } + $this.viewActionSelectRow(value) } else if (item.action_type == - "remove_subtable_page_row" - ) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ "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 - ); - } - }); - }); - } + $this.viewActionRemoveRow(value) + } else if (item.action_type == "set_subtable_page_row") { + $this.viewActionSetRow(item.value) - - - } else if (item.action_type == - "set_subtable_page_row") { - $this.viewActionSetRow(item - .value) - - } else if (item.action_type == - "set_subtable_page_ext_data" - ) { + } 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; - }); + const pageData = $this.pageDetail.find((page) => { + return value.page_name == page.Name; + }); if (pageData) - pageData.ExtData = - value.ext_data + pageData.ExtData = value.ext_data - } else if (item.action_type == - "clear_subpage_rows") { + } 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) { + const pageIndex = $this.pageDetail.findIndex((page) => { + return value.page_name == page.Name; + }); + if (pageIndex > -1) { + const pageData = $this.pageDetail[pageIndex] pageData.DefList = [] pageData.ExtData = {} + + $this.$set(this.pageDetail, pageIndex, pageData) } - } else if (item.action_type == - "set_dlg_current_edit_attr" - ) { + } else if (item.action_type == "set_dlg_current_edit_attr") { - if ($this - .focusOldFieldId == - item.value) { + if ($this.focusOldFieldId == item.value) { $this.setData({ focusFieldId: "" }) } else { $this.setData({ - focusFieldId: $this - .focusOldFieldId + focusFieldId: $this.focusOldFieldId }) } $this.$nextTick(() => { $this.setData({ - focusFieldId: item - .value + focusFieldId: item.value }) }); - } else if (item.action_type == - "set_dlg_attr") { + } else if (item.action_type == "set_dlg_attr") { // value = {"attr":"xxx", "value":"xxx"} var data = item.value; $this.setFormValues(data) @@ -1424,11 +1098,59 @@ } }, + viewActionSelectRow(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(); + }).exec(); + } + }); + } + + }, + + viewActionRemoveRow(value) { + if (JSON.stringify(value.row) == '{}') { + return; + } + const pageIndex = $this.pageDetail.findIndex((page, index2, arr) => { + return value.page_name == page.Name; + }) + if (pageIndex < 0) + return + const pageData = $this.pageDetail[pageIndex] + 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); + } + }); + }); + } + $this.$set(this.pageDetail, pageIndex, pageData) + }, //鏇存柊鍒嗛〉绛句腑鐨勫垪琛ㄩ」鍐呭 viewActionSetRow(value) { const $this = this - const pageIndex = $this.pageDetail.findIndex(( - page, index2, arr) => { + const pageIndex = $this.pageDetail.findIndex((page, index2, arr) => { return value.page_name == page.Name; }) if (pageIndex < 0) @@ -1733,7 +1455,7 @@ }); } - + $this.$set(this.pageDetail, pageIndex, pageData) }, setFormValues(attrs) { const head_styledef = this.head_styledef @@ -1815,9 +1537,9 @@ 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; + item.setting.colList.forEach(col => { + if (col != null) head_attr[col.fieldId] = + col.value; }); } else head_attr[item.fieldId] = item.value; @@ -1828,9 +1550,9 @@ 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 + item.setting.colList.forEach(col => { + if (col != null) detail_attr[col + .fieldId] = col .value; }); } else @@ -2557,11 +2279,14 @@ 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"), + cancelText: this.translateSys('ok'), + confirmText: this.translateSys('cancel'), success: function(res) { - if (res.confirm) { + if (res.cancel) { $this.onButtonClicked(btn, pageData, -1); } @@ -2579,8 +2304,10 @@ uni.showModal({ title: this.translateSys("tip"), content: btn.PromptContent || this.translate("confirm"), + cancelText: this.translateSys('ok'), + confirmText: this.translateSys('cancel'), success: function(res) { - if (res.confirm) { + if (res.cancel) { $this.onButtonClicked(btn, pageData, index); } @@ -2651,9 +2378,9 @@ const objAttr = {} row.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�- item.setting.colList.forEach(cols => { - if (cols != null) objAttr[cols - .fieldId] = cols.value; + item.setting.colList.forEach(col => { + if (col != null) objAttr[col + .fieldId] = col.value; }); } else objAttr[item.fieldId] = item.value; @@ -2703,9 +2430,8 @@ const objAttr = {} row.form.items.forEach(item => { if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�- item.setting.colList.forEach(cols => { - if (cols != null) objAttr[cols - .fieldId] = cols.value; + item.setting.colList.forEach(col => { + if (col != null) objAttr[col.fieldId] = col.value; }); } else objAttr[item.fieldId] = item.value; @@ -2782,9 +2508,9 @@ 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; + item.setting.colList.forEach(col => { + if (col != null) head_attr[col.fieldId] = + col.value; }); } else head_attr[item.fieldId] = item.value; @@ -2796,10 +2522,9 @@ 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; + item.setting.colList.forEach(col => { + if (col != null) + detail_attr[col.fieldId] = col.value; }); } else detail_attr[item.fieldId] = item.value; @@ -2953,247 +2678,106 @@ // 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" - ) { //鐮佺洏涓�+ if (item.action_type == "insert_subtable_page_row") { //鐮佺洏涓� var value = item.value; //鍔犺浇宸茬粡鐮佺洏鏁版嵁 - $this.viewAceionRow( - 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 - ] = - ''; - } - }); + $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' - ), + title: $this.translateSys("tip"), + content: $this.translate('execute_event_success'), showCancel: false, - confirmText: this - .translateSys( - 'close' - ) + confirmText: $this.translateSys('close') }); } else if (item.action_type == "set_subtable_page_content" ) { //宸茬爜鐩�- $this.$data.param - .Show_Welcom_Page = - false; + $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 + 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( - "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 - ); + 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"), + cancelText: $this.translateSys('ok'), + confirmText: $this.translateSys('cancel'), + success: function(res) { + if (res.cancel) { + if (pageData) + pageData.DefList = []; + $this.viewAceionContent(value); + } else if (res.confirm) { + if (pageData) + pageData.DefList = []; + $this.viewAceionContent(value); } } }); } else { if (pageData) - pageData - .DefList = []; - $this - .viewAceionContent( - value); + 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) - - } 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; - }); + } else if (item.action_type == + "remove_subtable_page_row") { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ let value = item.value; + $this.viewActionRemoveRow(value) + } else if (item.action_type == "set_subtable_page_row") { + $this.viewActionSetRow(item.value) + } else if (item.action_type == "set_subtable_page_ext_data") { + let value = item.value; + const pageData = $this.pageDetail.find((page) => { + return value.page_name == page.Name; + }); if (pageData) { - pageData.ExtData = - value - .ext_data + pageData.ExtData = value.ext_data } - } else if (item - .action_type == - "clear_subpage_rows") { + } 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 = {} + const pageIndex = $this.pageDetail.findIndex((page) => { + return value.page_name == page.Name; + }); + if (pageIndex > -1) { + const pageData = $this.pageDetail[pageIndex] + pageData.DefList = [] + pageData.ExtData = {} + + $this.$set(this.pageDetail, pageIndex, pageData) } - } else if (item - .action_type == - "set_dlg_current_edit_attr" - ) { - if ($this - .focusOldFieldId == - item.value) + } else if (item.action_type == "set_dlg_current_edit_attr") { + if ($this.focusOldFieldId == item.value) $this.setData({ focusFieldId: "" }) else { $this.setData({ - focusFieldId: $this - .focusOldFieldId + focusFieldId: $this.focusOldFieldId }) } $this.$nextTick(() => { - $this - .setData({ - focusFieldId: item - .value - }) + $this.setData({ + focusFieldId: item.value + }) }); } else if (item.action_type == "set_dlg_attr") { @@ -3204,12 +2788,8 @@ }); } else { - if ($this.$data.After_OK_Event.ID != - event - .ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢 - - $this.sava(pageParam, $this.$data - .After_OK_Event); //鎵ц纭畾鍚庝簨浠�+ if ($this.$data.After_OK_Event.ID != event.ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢 + $this.sava(pageParam, $this.$data.After_OK_Event); //鎵ц纭畾鍚庝簨浠� } } @@ -3217,12 +2797,10 @@ if (result.info) { uni.showModal({ - title: this.translateSys( - "tip"), + title: this.translateSys("tip"), content: result.info, showCancel: false, - confirmText: this - .translateSys('close') + confirmText: this.translateSys('close') }); } } @@ -3234,11 +2812,8 @@ 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( - "comma") + - tip, + content: this.translate("execute_after_ok_event_failed") + + this.translateSys("comma") + tip, showCancel: false, confirmText: this.translateSys('close') }); @@ -3309,7 +2884,7 @@ } .uni-icon { - padding: 8rpx; + padding: 10rpx 5rpx; font-size: 32rpx; color: rgb(192, 196, 204); } @@ -3366,8 +2941,6 @@ background-color: #ddd !important; color: #888 !important; } - - .btn-left { padding: 20rpx; @@ -3439,7 +3012,7 @@ .uni-icon { /* border: 1px solid red; */ - width: 8%; + width: 30rpx; font-family: uniicons; font-size: 40rpx; font-weight: 400; @@ -3455,46 +3028,55 @@ .dv-panel { background-color: #efefef; - padding: 20rpx 20rpx 10rpx 0px; + padding: 10rpx 10rpx 10rpx 0px; border-radius: 12rpx; margin: 10rpx 0 20rpx 0; - text-align: right; - .txt_title { - font-size: 28rpx; - text-align: right; - display: inline-block; - } + .dv-panel-form { + padding: 0px; + margin: 0; - input { - vertical-align: middle; - display: inline-block; - border: 1px solid #d5d5d5; - width: 68%; - height: 48rpx; - line-height: 28rpx; - background: #FFF; - border-radius: 7px !important; - color: #2d8cf0; - padding: 6rpx 8rpx 8rpx; - font-size: 28rpx; - font-family: inherit; - box-shadow: none !important; - transition-duration: 0.1s; - margin-top: 0rpx; - } + .dv-panel-form-item { + margin: 0; + padding: 0px; + } - input::-webkit-input-placeholder { - font-size: 10rpx; - } + .uni-forms-item { + padding-bottom: 5rpx; + margin-bottom: 0; - .form-item-span { - vertical-align: text-top; - color: #2d8cf0; - white-space: normal; - word-break: break-all; - display: inline-block; - width: calc(100% - 100px); + .uni-forms-item__label { + height: 20px !important; + padding: 0 10rpx 0 0 !important; + } + + .uni-input { + width: calc(100% - 12rpx); + padding: 5rpx; + border: 1px solid #d5d5d5; + color: #2d8cf0; + height: 20px; + background: #FFF; + line-height: 20px; + border-radius: 6px !important; + font-size: 14px; + font-family: inherit; + box-shadow: none !important; + transition-duration: 0.1s; + vertical-align: middle; + } + + .form-item-span { + vertical-align: text-top; + color: #2d8cf0; + white-space: normal; + word-break: break-all; + width: 100%; + } + } + + + } .dv-panel-button { @@ -3522,15 +3104,6 @@ } - .dv-panel-input { - width: 100%; - display: inline-block; - text-align: left; - - .dv-input { - margin-bottom: 2rpx; - } - } .logo { height: 100rpx; @@ -3675,7 +3248,7 @@ .popup-footer { float: right; position: absolute; - bottom:10rpx; + bottom: 10rpx; right: 20rpx; } -- Gitblit v1.9.1