From 310ab72840d7c7025273ac79363107a1f9e4bc8e Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 18 七月 2025 17:34:47 +0800
Subject: [PATCH] test
---
pages/modal/3200_view.vue | 742 ++++++++++++++++++++------------------------------------
1 files changed, 269 insertions(+), 473 deletions(-)
diff --git a/pages/modal/3200_view.vue b/pages/modal/3200_view.vue
index 5b6b485..8eb16dd 100644
--- a/pages/modal/3200_view.vue
+++ b/pages/modal/3200_view.vue
@@ -1,134 +1,15 @@
<template>
- <view class="uni-page-modal-3200-view">
+ <view class="uni-page-modal-3200-view" :class="largeMode?'large-mode':''">
<view class="v-content">
<view class="dv-panel dv-panel-bkcolor">
<div class="dv-panel-input">
<!-- HTML椤甸潰绫诲瀷鏄剧ず -->
- <div class="dv-viewHtml-Panel" v-if="ViewHtml_Panel" v-html="ViewHtml_Panel">
- <!-- <div>
- <label class="item-label">浠诲姟缂栫爜:</label>
- <span class="item-span">TA240318-00005</span>
- </div> -->
- </div>
+ <view class="dv-viewHtml-Panel" v-if="ViewHtml_Panel" v-html="ViewHtml_Panel"></view>
+
<!-- 鑷畾涔夎〃鍗曠被鍨嬫樉绀�-->
<div v-if="!ViewHtml_Panel">
- <div v-for="(item,index) in detail2_styledef.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.value2?'#'+item.value+'#'+item.value2:item.value}}</span>
- <!-- 鏂囨湰妗�鏁板瓧妗�-->
- <view class="dv_input"
- v-if="(item.name=='Input' || item.name=='InputNumber') && !item.disabled">
- <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]"
- @change="onChange(item)"></text>
- <input class="uni-input" :class="item.disabled?'input-disabled':''"
- :type="item.name=='Input'?'text':item.name=='InputNumber'?'number':'text'"
- v-model="item.value" :disabled="item.disabled" :placeholder="item.placeholder"
- :style="{'width':item.setting.prefix && item.setting.suffix?'78%':item.setting.prefix || item.setting.suffix?'87%':'96%'}"
- :focus="focusMateria" @focus="ontap(item)" @blur="onevent(item)" />
- <text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]"
- @click="onChange(item)"></text>
- </view>
- <!-- 涓嬫媺妗�鍗曢� item.useDict?item.dict:item.selections-->
- <uni-data-select id="dv_select" v-if="item.name=='Select' && !item.disabled"
- :class="item.disabled?'input-disabled':''" v-model="item.value"
- :localdata="item.dict" @change="onChange(item)" :disabled="item.disabled"
- :clear="false"></uni-data-select>
- <!-- 澶氳鏂囨湰 -->
- <view class="input-wrapper" v-if="item.name=='Textarea' && !item.disabled">
- <textarea class="uni-input" :value="item.value"
- :class="item.disabled?'input-disabled':''" :placeholder="item.placeholder"
- @blur="onModelValue(item)" style="height:60px;" :style="{'width':'96%'}"
- :disabled="item.disabled"></textarea>
- </view>
- <!-- 澶嶉�妗�-->
- <checkbox-group class="check_rememberPwd" v-if="item.name=='Checkbox'"
- :class="item.disabled?'input-disabled':''" @change="onModelValue(item)"
- :data-ischeck="item.value" :disabled="item.disabled"
- :style="{'margin-left':'10rpx'}">
- <label>
- <checkbox :value="item.value" :checked="item.value" />
- <text>{{item.label}}</text>
- </label>
- </checkbox-group>
- <!-- Switch寮�叧 -->
- <switch v-if="item.name=='Switch'" :class="item.disabled?'input-disabled':''"
- :disabled="item.disabled" v-model="item.value" @change="onModelValue(item)"
- :style="{'margin-left':'10rpx'}" />
- <!-- 鏃ユ湡鏃堕棿 -->
- <view class="input-wrapper"
- v-if="(item.name=='TimePicker' || item.name=='DatePicker') && !item.disabled">
- <picker mode="date" class="date_iput" :class="item.disabled?'input-disabled':''"
- :disabled="item.disabled" :value="item.value" @change="onModelValue(item)">
- <view class="picker">{{item.value}}</view>
- </picker>
- </view>
- </view>
- <!-- 鏍呮牸甯冨眬 -->
- <uni-row class="demo-uni-row" v-if="item.name=='Layout'">
- <uni-col v-for="(cols,key) in item.setting.colList"
- :span="item.setting.spanList?item.setting.spanList[key]:24 / item.setting.col">
- <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.value2?'#'+cols.value+'#'+cols.value2:cols.value}}</span>
- <view class="dv_input"
- v-if="(cols.name=='Input' || cols.name=='InputNumber') && !cols.disabled">
- <text v-if="cols.setting.prefix" class="uni-icon"
- :class="[cols.setting.prefix]" @change="onChange(cols)"></text>
- <input class="uni-input" :class="cols.disabled?'input-disabled':''"
- :type="cols.name=='Input'?'text':cols.name=='InputNumber'?'number':'text'"
- v-model="cols.value" :disabled="cols.disabled"
- :placeholder="cols.placeholder"
- :style="{'width':cols.setting.prefix && cols.setting.suffix?'78%':cols.setting.prefix || cols.setting.suffix?'87%':'96%'}"
- :focus="focusMateria" @focus="ontap(cols)" @blur="onevent(cols)" />
- <text v-if="cols.setting.suffix" class="uni-icon"
- :class="[cols.setting.suffix]" @click="onChange(cols)"></text>
- </view>
- <!-- 涓嬫媺妗�鍗曢� cols.useDict?cols.dict:cols.selections-->
- <uni-data-select id="dv_select" v-if="cols.name=='Select' && !cols.disabled"
- :class="cols.disabled?'input-disabled':''" v-model="cols.value"
- :localdata="cols.dict" @change="onChange(cols)" :disabled="cols.disabled"
- :clear="false"></uni-data-select>
- <!-- 澶氳鏂囨湰 -->
- <view class="input-wrapper" v-if="cols.name=='Textarea' && !cols.disabled">
- <textarea class="uni-input" :value="cols.value"
- :class="cols.disabled?'input-disabled':''"
- :placeholder="cols.placeholder" @blur="onModelValue(cols)"
- style="height:60px;" :style="{'width':'96%'}"
- :disabled="cols.disabled"></textarea>
- </view>
- <!-- 澶嶉�妗�-->
- <checkbox-group class="check_rememberPwd" v-if="cols.name=='Checkbox'"
- :class="cols.disabled?'input-disabled':''" :disabled="item.disabled"
- @change="onModelValue(cols)" :data-ischeck="cols.value"
- :style="{'margin-left':'10rpx'}">
- <label>
- <checkbox :value="cols.value" :checked="cols.value" />
- <text>{{cols.label}}</text>
- </label>
- </checkbox-group>
- <!-- Switch寮�叧 -->
- <switch v-if="cols.name=='Switch'" :class="cols.disabled?'input-disabled':''"
- :disabled="item.disabled" v-model="cols.value" @change="onModelValue(cols)"
- :style="{'margin-left':'10rpx'}" />
- <!-- 鏃ユ湡鏃堕棿 -->
- <view class="input-wrapper"
- v-if="(cols.name=='TimePicker' || cols.name=='DatePicker') && !cols.disabled">
- <picker mode="date" class="date_iput"
- :class="cols.disabled?'input-disabled':''" :disabled="item.disabled"
- :value="cols.value" @change="onModelValue(cols)">
- <view class="picker">{{cols.value}}</view>
- </picker>
- </view>
+ <OIForm :form="detail2_styledef.form" viewMode></OIForm>
- </view>
- </uni-col>
- </uni-row>
- </div>
</div>
</div>
</view>
@@ -137,14 +18,14 @@
<view class="view-floor" v-if="param.ViewPage.Page_Button">
<!-- <button type="default" @click="cancel" class="btn_cancel"
:style="{'width':param.ViewPage.Page_Button.length>1?'39.5%':'48.5%'}">杩斿洖</button> -->
- <button type="default" class="btn_refresh" v-for="(btn,index) in param.ViewPage.Page_Button" v-if="index<2"
- @click="onBtnClick(btn)"
+ <button type="default" class="btn_refresh" :class="btn.disabled?'btn_disabled':''" :disabled="btn.disabled"
+ v-for="(btn,index) in param.ViewPage.Page_Button" v-if="index<2" @click="onBtnClick(btn)"
:style="{'width':param.ViewPage.Page_Button.length==1?'96%':param.ViewPage.Page_Button.length>2?'39.5%':'48%'}">{{btn.ShowName}}</button>
<view class="uni-padding-wrap" v-if="param.ViewPage.Page_Button.length>2">
<view class="uni-btn-v">
<a @tap="actionSheetTap">
- <Icon class="mobox-normal-more" />
+ <text class="mobox-normal-more" />
</a>
</view>
</view>
@@ -153,15 +34,30 @@
</template>
<script>
- import Base64 from '../../components/js-base64/base64.js'
+ import {
+ Base64
+ } from '@/js/Base64.js';
import classUtils from "@/js/utils.js"
+ import {
+ appGetInfo,
+ dictGetInfo
+ } from "@/api/mobox.js"
+ import {
+ getUIStyleInfo,
+ runCustomEvent,
+ dataObjQuery
+ } from "@/api/data.js"
+ import OIForm from '@/components/oi-form/index.vue'
+ import buttonClickMixin from '@/mixins/button-click.js';
+
export default {
- modules: {
- Base64,
+ mixins: [buttonClickMixin],
+ components: {
+ OIForm
},
onBackPress(e) {
// console.log("鐩戝惉杩斿洖鎸夐挳浜嬩欢",e);
- var eventChannel = this.$scope.eventChannel;
+ const eventChannel = this.getOpenerEventChannel();
// const eventChannel = this.getOpenerEventChannel();
eventChannel.emit('ExitViewEvent', "");
// uni.navigateBack({
@@ -171,6 +67,7 @@
},
data() {
return {
+ largeMode: getApp().globalData.largeMode || false,
title: this.translateSys('add2'),
param: {},
styleDef: {
@@ -200,11 +97,11 @@
uni.setNavigationBarTitle({
title: options.titlename
}); //璁剧疆椤堕儴鏍囬
- this.$data.title = options.titlename;
- this.$data.param = JSON.parse(options.param);
- console.log(this.$data.param);
- this.$data.styleDef = JSON.parse(options.style);
- // console.log(this.$data.styleDef);
+ this.title = options.titlename;
+ this.param = JSON.parse(options.param);
+ console.log(this.param);
+ this.styleDef = JSON.parse(options.style);
+ // console.log(this.styleDef);
if (this.param.ViewPage.View_UIDef.ui_type == "HTML椤甸潰") {
// HTML椤甸潰
//鑾峰彇鏁版嵁绫荤殑HTML椤甸潰
@@ -241,32 +138,54 @@
title: this.translateSys("error"),
content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
}
},
methods: {
- async Detail2_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);
+ setData(obj) {
+ let that = this;
+ let keys = [];
+ let val, data;
+
+ Object.keys(obj).forEach(function(key) {
+ keys = key.split(".");
+ val = obj[key];
+ data = that.$data;
+ keys.forEach(function(key2, index) {
+ if (index + 1 == keys.length) {
+ that.$set(data, key2, val);
+ } else {
+ if (!data[key2]) {
+ that.$set(data, key2, {});
+ }
}
- $this.$data.detail2_styledef = ret.result.style_def ? JSON.parse(styledef) : {};
- $this.$data.detail2_styledef.SelBut_Checked = false;
- // console.log($this.$data.detail2_styledef);
+ data = data[key2];
+ });
+ });
+ },
+
+ async Detail2_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);
+ }
+ $this.detail2_styledef = result.style_def ? JSON.parse(styledef) : {};
+ $this.detail2_styledef.SelBut_Checked = false;
+ // console.log($this.detail2_styledef);
+ if ($this.detail2_styledef.form?.items) {
$this.styleDef.form.attrs.forEach((attr) => {
// info[attr.name]=attr.value;
$this.detail2_styledef.form.items.forEach(async (ele, index) => {
@@ -285,84 +204,72 @@
}
});
});
- setTimeout(function() {
- var detail2_styledef = JSON.parse(JSON.stringify($this.detail2_styledef));
- $this.detail2_styledef = [];
- $this.detail2_styledef = detail2_styledef;
- }, 100);
- } else {
- uni.showModal({
- title: this.translateSys("error") + "1",
- content: ret.err_msg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
}
- }).catch(ex => {
+ setTimeout(function() {
+ var detail2_styledef = JSON.parse(JSON.stringify($this.detail2_styledef));
+ $this.detail2_styledef = [];
+ $this.detail2_styledef = detail2_styledef;
+ }, 100);
+ } catch (ex) {
// console.log(ex);
+ let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
uni.showModal({
title: this.translateSys("error") + "1.1",
- content: ex.errMsg,
+ content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
- });
+ }
},
async Html_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);
- }
- $this.ViewPageHtml_Show = ret.result.style_def ? JSON.parse(styledef) : {};
- // console.log($this.ViewPageHtml_Show);
- var obj_attr = {};
- $this.styleDef.form.attrs.forEach((attr) => {
- obj_attr[attr.name] = attr.value;
- });
- obj_attr['id'] = $this.styleDef.form.objId;
- var eventid = $this.ViewPageHtml_Show.event.id;
- if (!$this.ViewPageHtml_Show.event.id.includes('{'))
- eventid = '{' + $this.ViewPageHtml_Show.event.id + '}';
- //HTML椤甸潰浜嬩欢
- $this.runCustomEvent({
- ed_type: 0,
- start_transaction: true,
- class_id: $this.param.DataCls.id,
- event_id: eventid,
- data_obj_id: $this.styleDef.form.objId,
- obj_attr,
- });
- } else {
- uni.showModal({
- title: this.translateSys("error") + "6",
- content: ret.err_msg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
+ 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);
}
- }).catch(ex => {
+ $this.ViewPageHtml_Show = result.style_def ? JSON.parse(styledef) : {};
+ // console.log($this.ViewPageHtml_Show);
+ var obj_attr = {};
+ $this.styleDef.form.attrs.forEach((attr) => {
+ obj_attr[attr.name] = attr.value;
+ });
+ obj_attr['id'] = $this.styleDef.form.objId;
+
+ var eventid = $this.ViewPageHtml_Show.event.id;
+ if (!$this.ViewPageHtml_Show.event.id.includes('{'))
+ eventid = '{' + $this.ViewPageHtml_Show.event.id + '}';
+ //HTML椤甸潰浜嬩欢
+ $this.runCustomEvent({
+ ed_type: 0,
+ start_transaction: true,
+ class_id: $this.param.DataCls.id,
+ event_id: eventid,
+ data_obj_id: $this.styleDef.form.objId,
+ obj_attr,
+ });
+ } catch (ex) {
// console.log(ex);
+ let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
uni.showModal({
title: this.translateSys("error") + "6.1",
- content: ex.errMsg,
+ content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
- });
+ }
+
},
//鏌ヨ鏁版嵁绫绘暟鎹俊鎭�@@ -379,179 +286,53 @@
page: 1,
query_id: '',
};
- this.$store.dispatch('dataObjQuery', dataInfo).then(ret => {
- // console.log(ret);
- if (ret.err_code == 0) {
- if (ret.result) {
- $this.detail1StyleDefList = [];
- ret.result.obj_list.forEach((obj) => {
- var info = {
- S_ID: obj.id,
- };
- obj.attr_list.forEach((attr) => {
- info[attr.name] = attr.value;
- });
- if (key != -1)
- $this.detail2_styledef.form.items[index].setting.colList[key]
- .value2 = info.S_NAME;
- else
- $this.detail2_styledef.form.items[index].value2 = info.S_NAME;
- });
- // console.log($this.detail2_styledef);
- }
- } else {
- uni.showModal({
- title: this.translateSys("error") + "5",
- content: ret.err_msg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
+ const result = await dataObjQuery(dataInfo)
+ // console.log(result);
+ if (result) {
+ $this.detail1StyleDefList = [];
+ result.obj_list.forEach((obj) => {
+ var info = {
+ S_ID: obj.id,
+ };
+ obj.attr_list.forEach((attr) => {
+ info[attr.name] = attr.value;
});
- }
- }).catch(ex => {
- // console.log(ex);
- uni.showModal({
- title: this.translateSys("error") + "5.1",
- content: ex.errMsg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
+ if (key != -1)
+ $this.detail2_styledef.form.items[index].setting.colList[key]
+ .value2 = info.S_NAME;
+ else
+ $this.detail2_styledef.form.items[index].value2 = info.S_NAME;
});
- });
+ // console.log($this.detail2_styledef);
+ }
} catch (ex) {
var tip = typeof ex == "string" ? ex : ex.message;
uni.showModal({
title: this.translateSys("error") + "5.2",
content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
},
+ onCheckBoxValue(e) { //缁戝畾Model鍊�+ let values = e.detail.value || []
+ var attr = item.fieldId;
+ this.detail2_styledef.form.model[attr] = values;
- // 鍐呭鍙樺寲鍚庝簨浠�- async onChange(event) {
- try {
- if (event.id) {
- var obj_attr = this.detail2_styledef.form.model;
- // console.log(obj_attr);
- var input_param = Base64.encode(
- JSON.stringify(
- Object.keys(obj_attr).map((a) => ({
- attr: a,
- value: obj_attr[a] || "",
- }))
- )
- );
- var $this = this;
- var dataInfo = {
- ed_type: 0,
- start_transaction: true,
- class_id: this.$data.detail2_styledef.form.clsId,
- class_name: '',
- event_id: event.id,
- 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: '',
- 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')
- });
-
- if (result.result_type == 0 && result.action) {
- result.action.forEach(item => {
- if (item.action_type == "set_dlg_attr") {
- // value = {"attr":"xxx", "value":"xxx"}
- var data = item.value;
- $this.$data.detail2_styledef.form.items.forEach(async (
- ele, index) => {
- data.forEach(async (ele2, index) => {
- if (ele.fieldId == ele2
- .attr) {
- ele.value = ele2
- .value;
- }
- });
- });
- }
- });
- } else {
- // this.detail2StyleDefList=[];
- 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: ret.err_msg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
- }
- }).catch(ex => {
- // console.log(ex);
- uni.showModal({
- title: this.translateSys("error") + "8.1",
- content: ex.errMsg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
- });
- }
- } catch (ex) {
- var tip = typeof ex == "string" ? ex : ex.message;
- uni.showModal({
- title: this.translateSys("error") + "8.2",
- content: this.translate('execute_after_change_event_failed') + this.translateSys(
- "comma") +
- this.translate('reason') + this.translateSys("colon") + tip,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
-
- }
+ },
+ onRadioBoxValue(e) { //缁戝畾Model鍊�+ let values = e.detail.value || ""
+ var attr = item.fieldId;
+ this.detail2_styledef.form.model[attr] = values;
+ },
+ onModelValue(item) {
+ var attr = item.fieldId;
+ this.detail2_styledef.form.model[attr] = item.value;
+ },
+ onEnterChange(item) {
+ var attr = item.fieldId;
+ this.detail2_styledef.form.model[attr] = item.value;
},
//鐐瑰嚮鎸夐挳
onBtnClick(btn) {
@@ -560,15 +341,25 @@
uni.showModal({
title: this.translateSys("tip"),
content: btn.PromptContent || this.translate("are_you_sure"),
+ cancelText: this.translateSys('ok'),
+ confirmText: this.translateSys('cancel'),
success: function(res) {
- if (res.confirm) {
+ if (res.cancel) {
that.onButtonClicked(btn);
// } else if (res.cancel) {
// console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
}
}
});
- } else that.onButtonClicked(btn);
+ } else {
+ this.handleButtonClick((done) => {
+ that.onButtonClicked(btn);
+ setTimeout(() => {
+ done(); // 閲嶇疆鐘舵�
+ }, 1000);
+ });
+
+ }
},
//鐐瑰嚮鎸夐挳鍒楄〃
actionSheetTap() {
@@ -588,8 +379,10 @@
uni.showModal({
title: this.translateSys("tip"),
content: btn.PromptContent || this.translate("are_you_sure"),
+ cancelText: this.translateSys('ok'),
+ confirmText: this.translateSys('cancel'),
success: function(res) {
- if (res.confirm) {
+ if (res.cancel) {
that.onButtonClicked(btn);
// } else if (res.cancel) {
// console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
@@ -603,7 +396,9 @@
//澶勭悊鐩稿叧鎸夐挳
async onButtonClicked(btn) {
var style = this.styleDef || '';
+
try {
+ btn.disabled = true
var enviroment = {
button: "top",
button_name: btn.ShowName,
@@ -612,28 +407,31 @@
master: {},
};
if (btn.FunCode == "TriggerEvent") {
- this.triggerEvent(btn, style, enviroment);
+ await this.triggerEvent(btn, style, enviroment);
} else {
+ btn.disabled = false
uni.showModal({
title: this.translateSys("tip"),
content: this.translateSys("unrealized"),
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
} catch (ex) {
+ btn.disabled = false
var tip = typeof ex == "string" ? ex : ex.message;
uni.showModal({
title: this.translateSys("error") + "2",
content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
},
//鎵ц瑙﹀彂浜嬩欢
async triggerEvent(btn, style, enviroment) {
try {
+ btn.disabled = true
var obj_attr = {
'S_ID': this.styleDef.form.objId
};
@@ -643,7 +441,7 @@
// console.log(obj_attr);
// let input_param = Base64.encode(JSON.stringify(obj_attr));
// return;
- this.runCustomEvent({
+ await this.runCustomEvent({
ed_type: 0,
start_transaction: true,
class_id: btn.Cls_ID,
@@ -651,13 +449,14 @@
data_obj_id: this.styleDef.form.objId,
obj_attr: obj_attr,
});
+ btn.disabled = false
} catch (ex) {
var tip = typeof ex == "string" ? ex : ex.message;
uni.showModal({
title: this.translateSys("error") + "3",
content: tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
},
@@ -665,101 +464,82 @@
async runCustomEvent(dataInfo) {
try {
var $this = this;
- 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')
- });
+ const result = await runCustomEvent(dataInfo)
+ 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) uni.showModal({
+ title: this.translateSys("tip"),
+ content: tip,
+ showCancel: false,
+ confirmText: this.translateSys('close')
+ });
+ else uni.showModal({
+ title: this.translateSys("tip"),
+ content: tip + ',' + this.translateSys('tip') + ':' + result.ret,
+ showCancel: false,
+ confirmText: this.translateSys('close')
+ });
+ 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('close')
+ });
- if (result.result_type == 0 && result.action) {
- result.action.forEach(item => {
- if (item.action_type == "goback_to_pre_page") { //杩斿洖涓婁竴椤�- var value = item.value;
- // const eventChannel = this.$scope.eventChannel;
- // // const eventChannel = this.getOpenerEventChannel();
- // eventChannel.emit('ExitViewEvent',"");
- uni.navigateBack({
- delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
- });
- } else if (item.action_type == "hidden_button") { //闅愯棌鎸夐挳
- var value = item.value;
- value.forEach(btn => {
- var index = $this.param.ViewPage.Page_Button
- .findIndex(button => button.ShowName ==
- btn)
- if (index > -1)
- $this.param.ViewPage.Page_Button.splice(
- index, 1)
- })
- } else if (item.action_type == "set_panel_html") { //鏄剧ずHtml椤甸潰
- // var value = item.value;
- $this.ViewHtml_Panel = item.value;
-
- }
-
+ if (result.result_type == 0 && result.action) {
+ result.action.forEach(item => {
+ if (item.action_type == "goback_to_pre_page") { //杩斿洖涓婁竴椤�+ var value = item.value;
+ // const eventChannel = this.getOpenerEventChannel();
+ // // const eventChannel = this.getOpenerEventChannel();
+ // eventChannel.emit('ExitViewEvent',"");
+ uni.navigateBack({
+ delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
});
- } 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')
- });
+ } else if (item.action_type == "hidden_button") { //闅愯棌鎸夐挳
+ var value = item.value;
+ value.forEach(btn => {
+ var index = $this.param.ViewPage.Page_Button
+ .findIndex(button => button.ShowName ==
+ btn)
+ if (index > -1)
+ $this.param.ViewPage.Page_Button.splice(
+ index, 1)
+ })
+ } else if (item.action_type == "set_panel_html") { //鏄剧ずHtml椤甸潰
+ // var value = item.value;
+ $this.ViewHtml_Panel = item.value;
+
}
- }
+ });
} else {
- uni.showModal({
- title: this.translateSys("error") + "4",
- content: ret.err_msg,
+ 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')
+ confirmText: this.translateSys('close')
});
}
- }).catch(ex => {
- // console.log(ex);
- uni.showModal({
- title: this.translateSys("error") + "4.1",
- content: ex.errMsg,
- showCancel: false,
- confirmText: this.translateSys('cancel')
- });
- });
+ }
+
} catch (ex) {
- var tip = typeof ex == "string" ? ex : ex.message;
+ var tip = typeof ex == "string" ? ex : ex.errMsg;
uni.showModal({
- title: this.translateSys("error") + "4.2",
+ title: this.translateSys("error") + "4.1",
content: this.translate('execute_after_change_event_failed') + this.translateSys(
"comma") +
this.translate('reason') + this.translateSys("colon") + tip,
showCancel: false,
- confirmText: this.translateSys('cancel')
+ confirmText: this.translateSys('close')
});
}
@@ -926,7 +706,7 @@
},
cancel(e) { //鍙栨秷
- var eventChannel = this.$scope.eventChannel;
+ const eventChannel = this.getOpenerEventChannel();
// const eventChannel = this.getOpenerEventChannel();
eventChannel.emit('ExitViewEvent', "");
uni.navigateBack({
@@ -996,7 +776,8 @@
.uni-icon {
/* border: 1px solid red; */
- width: 8%;
+ width: 30rpx;
+ padding: 10rpx 5rpx;
font-family: uniicons;
font-size: 40rpx;
font-weight: 400;
@@ -1032,6 +813,16 @@
width: 100%;
display: inline-block;
text-align: left;
+
+ .uni-forms-item {
+ padding-bottom: 5rpx;
+ margin-bottom: 0;
+
+ .uni-forms-item__label {
+ height: 20px !important;
+ padding: 0 10rpx 0 0 !important;
+ }
+ }
}
.dv-panel-buticon {
@@ -1131,7 +922,7 @@
margin-top: 25rpx;
padding: 20rpx;
line-height: 1.5;
- background: #4D6AF4;
+ background: #27A6E1;
border: none;
color: #fff;
font-size: 38rpx;
@@ -1141,14 +932,19 @@
margin: 0 3px;
}
+ button.btn_disabled {
+ background-color: #ddd;
+ color: #888;
+ }
+
button.btn_cancel {
width: 49.5%;
margin-top: 25rpx;
padding: 20rpx;
line-height: 1.5;
- background: #fff;
- border: none;
- color: #000;
+ // background: #fff;
+ // border: none;
+ // color: #000;
font-size: 38rpx;
font-weight: bold;
float: left;
--
Gitblit v1.9.1