From 49dfdd3bf265db28d38167f34e9aabfdd3e8e5db Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 17 十月 2025 10:16:58 +0800
Subject: [PATCH] imagebutton
---
pages/modal/3200_view.vue | 321 ++++++++++++++++++++++++++---------------------------
1 files changed, 156 insertions(+), 165 deletions(-)
diff --git a/pages/modal/3200_view.vue b/pages/modal/3200_view.vue
index f8c0970..ffb290d 100644
--- a/pages/modal/3200_view.vue
+++ b/pages/modal/3200_view.vue
@@ -1,5 +1,5 @@
<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">
@@ -8,7 +8,7 @@
<!-- 鑷畾涔夎〃鍗曠被鍨嬫樉绀�-->
<div v-if="!ViewHtml_Panel">
- <OIForm :form="detail2_styledef.form.items" viewMode></OIForm>
+ <OIForm :form="detail2_styledef.form" viewMode></OIForm>
</div>
</div>
@@ -36,8 +36,14 @@
<script>
import {
Base64
- } from '@/js/Base64.js';
+ } from '@/js/Base64.js';
import classUtils from "@/js/utils.js"
+ import {
+ showInfo,
+ showError,
+ showLoading,
+ hideLoading
+ } from "@/js/Page.js"
import {
appGetInfo,
dictGetInfo
@@ -49,7 +55,7 @@
} from "@/api/data.js"
import OIForm from '@/components/oi-form/index.vue'
import buttonClickMixin from '@/mixins/button-click.js';
-
+
export default {
mixins: [buttonClickMixin],
components: {
@@ -67,6 +73,7 @@
},
data() {
return {
+ largeMode: getApp().globalData.largeMode || false,
title: this.translateSys('add2'),
param: {},
styleDef: {
@@ -93,53 +100,56 @@
},
async onLoad(options) {
// console.log(options);
- uni.setNavigationBarTitle({
- title: options.titlename
- }); //璁剧疆椤堕儴鏍囬
- 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椤甸潰
- this.Html_UIstyleGetInfo(this.param.DataCls.id, this.param.ViewPage.View_UIDef.id, 'viewPage');
- } else {
- this.Detail2_UIstyleGetInfo(this.param.DataCls.id, this.param.ViewPage.View_UIDef.id);
- }
-
-
- //杩涘叆椤甸潰鍚庝簨浠�- var eventid = this.param.ViewPage.Enter_View_Event?.id;
- if (eventid) {
- try {
- var obj_attr = {
- 'S_ID': this.styleDef.form.objId
- };
- this.styleDef.form.attrs.forEach((attr) => {
- obj_attr[attr.name] = attr.value;
- });
- // console.log(obj_attr);
- var input_param = Base64.encode(JSON.stringify(obj_attr));
- 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,
- input_param,
- });
- } catch (ex) {
- var tip = typeof ex == "string" ? ex : ex.message;
- uni.showModal({
- title: this.translateSys("error"),
- content: tip,
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ try {
+ showLoading("loading...")
+ uni.setNavigationBarTitle({
+ title: options.titlename
+ }); //璁剧疆椤堕儴鏍囬
+ 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椤甸潰
+ await this.Html_UIstyleGetInfo(this.param.DataCls.id, this.param.ViewPage.View_UIDef.id,
+ 'viewPage');
+ } else {
+ await this.Detail2_UIstyleGetInfo(this.param.DataCls.id, this.param.ViewPage.View_UIDef.id);
}
+
+
+ //杩涘叆椤甸潰鍚庝簨浠�+ var eventid = this.param.ViewPage.Enter_View_Event?.id;
+ if (eventid) {
+ try {
+ var obj_attr = {
+ 'S_ID': this.styleDef.form.objId
+ };
+ this.styleDef.form.attrs.forEach((attr) => {
+ obj_attr[attr.name] = attr.value;
+ });
+ // console.log(obj_attr);
+ var input_param = Base64.encode(JSON.stringify(obj_attr));
+ await 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,
+ input_param,
+ });
+ } catch (ex) {
+ showError(ex, this.translateSys('error'))
+ }
+ }
+ hideLoading()
+ } catch (ex) {
+
+ hideLoading()
+ showError(ex, this.translateSys("error"));
}
},
methods: {
@@ -211,13 +221,7 @@
}, 100);
} catch (ex) {
// console.log(ex);
- let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
- uni.showModal({
- title: this.translateSys("error") + "1.1",
- content: tip,
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ showError(ex, this.translateSys('error') + "1.1")
}
},
@@ -260,13 +264,7 @@
});
} catch (ex) {
// console.log(ex);
- let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
- uni.showModal({
- title: this.translateSys("error") + "6.1",
- content: tip,
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ showError(ex, this.translateSys('error') + "6.1")
}
@@ -305,13 +303,7 @@
// 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('close')
- });
+ showError(ex, this.translateSys('error') + "5.2")
}
},
onCheckBoxValue(e) { //缁戝畾Model鍊�@@ -350,14 +342,14 @@
}
}
});
- } else{
+ } else {
this.handleButtonClick((done) => {
- that.onButtonClicked(btn);
+ that.onButtonClicked(btn);
setTimeout(() => {
done(); // 閲嶇疆鐘舵�
}, 1000);
});
-
+
}
},
//鐐瑰嚮鎸夐挳鍒楄〃
@@ -409,27 +401,18 @@
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('close')
- });
+ showInfo(this.translateSys("unrealized"))
+
}
} 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('close')
- });
+ showError(ex, this.translateSys('error') + "2")
}
},
//鎵ц瑙﹀彂浜嬩欢
async triggerEvent(btn, style, enviroment) {
try {
+ showLoading("loading...")
btn.disabled = true
var obj_attr = {
'S_ID': this.styleDef.form.objId
@@ -440,6 +423,7 @@
// console.log(obj_attr);
// let input_param = Base64.encode(JSON.stringify(obj_attr));
// return;
+
await this.runCustomEvent({
ed_type: 0,
start_transaction: true,
@@ -449,14 +433,10 @@
obj_attr: obj_attr,
});
btn.disabled = false
+ hideLoading()
} catch (ex) {
- var tip = typeof ex == "string" ? ex : ex.message;
- uni.showModal({
- title: this.translateSys("error") + "3",
- content: tip,
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ hideLoading()
+ showError(ex, this.translateSys('error') + "3")
}
},
//浜嬩欢
@@ -465,81 +445,82 @@
var $this = this;
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.getOpenerEventChannel();
- // // 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;
-
- }
-
- });
- } 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.ret != 0 && result.ret != 1) {
+ let cls_name = result.event_info?.cls_name
+ let event_name = result.event_info?.event_name
+ tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result
+ .err_info
+ .join('\n') : ''
+ if (result.ret == 801) {
+ if (this.param.Only_Script_Error) {
+ let pos = tip.indexOf("锛�);
+ if (pos > -1) tip = tip.substring(pos + 1);
+ }
}
+ if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+ if (result.ret == 801) showInfo(tip)
+ else showError(`${tip}锛屾彁绀猴細${result.ret}`, this.translateSys('tip'))
+ this.saving = false
+ return false
+ } else {
+ var tip = result.info ? typeof result.info == 'string' ? result.info :
+ result.info.join('\n') : '';
+ tip = tip || result.err_info
+ let time = result.info_time || 0
+ if (time)
+ showError(tip, this.translateSys('tip'))
+ else
+ showInfo(tip)
+
+ if ([0, 2, 3, 4, -1].includes(result.result_type)) {
+ if (result.result_type == 2) {
+
+ } else if (typeof result.result == 'string') {
+ showInfo(result.result)
+
+ }
+ try {
+ var actionList = result.action || []
+ actionList.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 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;
+
+ }
+
+ });
+
+ } catch (ex) {
+ let actionList = (result.action || []).map(a => a.action_type).join(';')
+ let tip = typeof ex == 'string' ? ex : ex.message
+ tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
+ showError(tip, this.translateSys('tip'))
+ return
+ }
+ }
+
}
} catch (ex) {
- var tip = typeof ex == "string" ? ex : ex.errMsg;
- uni.showModal({
- 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('close')
- });
+ showError(ex, this.translateSys('error') + "4.1")
}
},
@@ -812,6 +793,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 {
--
Gitblit v1.9.1