From 07925905f1a596e20e980de6d42db217abb753b0 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 12 十二月 2025 18:06:11 +0800
Subject: [PATCH] plugin

---
 pages/modal/form/index.vue | 1033 +++++++++++++++++++--------------------------------------
 1 files changed, 343 insertions(+), 690 deletions(-)

diff --git a/pages/modal/form/index.vue b/pages/modal/form/index.vue
index 18eb702..4214186 100644
--- a/pages/modal/form/index.vue
+++ b/pages/modal/form/index.vue
@@ -57,7 +57,10 @@
 	} from "@/api/data.js"
 	import dayjs from "dayjs";
 	import OIForm from '@/components/oi-form/index.vue'
-
+	import {
+		showInfo,
+		showError
+	} from "@/js/Page.js"
 	export default {
 		name: "PageModalForm",
 		components: {
@@ -130,6 +133,11 @@
 				};
 			},
 		},
+		onReady() {
+			uni.setNavigationBarTitle({
+				title: this.title 
+			}); //璁剧疆椤堕儴鏍囬 
+		},
 		onLoad(options) {
 
 			this.param = JSON.parse(options.param);
@@ -150,20 +158,11 @@
 			if (options.dataJson)
 				this.data_json = JSON.parse(options.dataJson);
 			this.title = options.titlename ? options.titlename : this.param.ShowName; //璁剧疆鎸夐挳鏂囧瓧
-			// console.log(options)
-			uni.setNavigationBarTitle({
-				title: this.title
-			}); //璁剧疆椤堕儴鏍囬 
-
 			if (this.clsId) {
 				this.loadData(objAttr)
 			} else {
-				uni.showModal({
-					title: this.translateSys("error"),
-					content: this.translate("tip_no_master_class"),
-					showCancel: false,
-					confirmText: this.translateSys('close')
-				});
+				showInfo(this.translate("tip_no_master_class"))
+
 			}
 		},
 		//椤甸潰鍒濆鍖栬幏鍙栫劍鐐�@@ -323,16 +322,8 @@
 
 				} 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') + "1",
-						content: exStr,
-						showCancel: false,
-						confirmText: $this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "1")
+
 
 				}
 
@@ -365,12 +356,7 @@
 					formItem.dict = list;
 				} catch (ex) {
 					// console.log(ex);
-					uni.showModal({
-						title: this.translateSys("error") + "3",
-						content: ex.errMsg,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "3")
 				}
 
 			},
@@ -438,60 +424,33 @@
 							data_json,
 							ext_info
 						})
-						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(
-										'close')
-								});
-							} else uni.showModal({
-								title: this.translateSys('tip'),
-								content: tip + ',' + this
-									.translateSys('tip') + ':' +
-									result
-									.ret,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
-							return false;
+						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 (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('<br/>') : '';
+							var tip = result.info ? typeof result.info == 'string' ? result.info :
+								result.info.join('\n') : '';
 							tip = tip || result.err_info
-							if (tip) uni.showModal({
-								title: this.translateSys('tip'),
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
+							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') {
-									if (result.result) {
-										uni.showModal({
-											title: this.translateSys('tip'),
-											content: result.result,
-											showCancel: false,
-											confirmText: this.translateSys('close')
-										});
-									}
+									showError(result.result)
+
 								}
 								try {
 									var actionList = result.action || []
@@ -535,13 +494,7 @@
 									let actionList = (result.action || []).map(a => a.action_type).join(';')
 									let tip = typeof ex == 'string' ? ex : ex.message
 									tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
-									uni.showModal({
-										title: this.translateSys('tip'),
-										content: tip,
-										showCancel: false,
-										confirmText: this.translateSys('close')
-									});
-									console.log(ex)
+									showError(tip, this.translateSys('tip'))
 									return
 								}
 							}
@@ -549,20 +502,20 @@
 
 					}
 				} catch (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') + "2",
-						content: exStr,
-						showCancel: false,
-						confirmText: $this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "2")
 				}
 			},
 			onClick(item) {
-				this.focusFieldId = item.fieldId
+				if (item.name == "Input" || item.name == "InputNumber" || item.name == "Textarea") {
+					this.focusFieldId = item.fieldId
+				} else if (item.name == "ImageButton") {
+					var onClickEvent = item.bind.onClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�+					if (!onClickEvent.id) {
+						showInfo(this.translate('icon_click_event_empty'))
+						return;
+					}
+					this.onChange(onClickEvent);
+				}
 			},
 			ontap(item) { //鎵爜鍔熻兘
 				// var $ele = e;
@@ -685,28 +638,20 @@
 				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('close')
-					});
+					showInfo(this.translate('icon_click_callback_empty'))
+
 					return;
 				}
 				if (!onSuffixClickEvent.id) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate('icon_click_event_empty'),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo(this.translate('icon_click_event_empty'))
+
 					return;
 				}
 				this.popupType = 'right'
 				// open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴�
 				this.$refs.popup.open(this.popupType);
 
-				this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent.id,
+				this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, onSuffixClickCallbackEvent.id,
 					item);
 			},
 
@@ -761,151 +706,284 @@
 						};
 						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(
-											'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/>') : '';
-								tip = tip || result.err_info
-								if (tip) uni.showModal({
-									title: this.translateSys('tip'),
-									content: tip,
-									showCancel: false,
-									confirmText: this.translateSys(
-										'close')
-								});
-								if ([0, 2, 3, 4, -1].includes(result.result_type)) {
-									if (result.result_type == 2) {
-
-									} else if (typeof result.result == 'string') {
-										if (result.result) {
-											uni.showModal({
-												title: this.translateSys('tip'),
-												content: result.result,
-												showCancel: false,
-												confirmText: this.translateSys('close')
-											});
-										}
-									}
-									try {
-										var actionList = result.action || []
-										actionList.forEach(item => {
-
-											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 (action.action_type ==
-												'set_dlg_attr_show') {
-												var data = action.value;
-
-												$this.setFormItemVisible(data)
-											}
-										});
-
-									} catch (ex) {
-										let actionList = (result.action || []).map(a => a.action_type)
-											.join(';')
-										let tip = typeof ex == 'string' ? ex : ex.message
-										tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
-										uni.showModal({
-											title: this.translateSys('tip'),
-											content: tip,
-											showCancel: false,
-											confirmText: this.translateSys('close')
-										});
-										console.log(ex)
-										return
-									}
-								}
-
-							}
+							$this.onFormEventResult(result, "")
 
 						}).catch(ex => {
 							// console.log(ex);
-							let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
-							uni.showModal({
-								title: this.translateSys("error") + "4.1",
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys('close')
-							});
+							showError(ex, this.translateSys('error') + "4.1")
 						});
 					}
 				} catch (ex) {
-					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(
-								"comma") +
-							this.translate('reason') + this.translateSys("colon") +
-							tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "4.2")
 				}
 			},
+			async onFormEventResult(data, button_callback, item,req) {
+				try {
+					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
+						}
+					};
+					if (data.ret != 0 && data.ret != 1) {
+						let cls_name = data.event_info?.cls_name
+						let event_name = data.event_info?.event_name
+						tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : data.err_info
+							.join('\n') : ''
 
+						if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+						if (data.ret == 801) showInfo(tip)
+						else showError(`${tip}锛屾彁绀猴細${data.ret}`, this.translateSys('tip'))
+						this.saving = false
+						return false
+					} else {
+						var tip = data.info ? typeof data.info == 'string' ? data.info :
+							data.info.join('\n') : '';
+						tip = tip || data.err_info
+						let time = data.info_time || 0
+						if (time)
+							showError(tip, this.translateSys('tip'))
+						else
+							showInfo(tip)
+						showInfo(tip)
+						if ([0, 2, 3, 4, -1].includes(data.result_type)) {
+							if (data.result_type == 2) {
+
+							} else if (typeof data.result == 'string') {
+								showInfo(data.result)
+
+							}
+							try {
+								var enviroment = JSON.stringify(enviroment);
+								var actions = data.action || []
+								for (var i = 0; i < actions.length; i++) {
+									var action = actions[i];
+									console.log(action)
+									var val = action.value;
+									if (action.action_type ==
+										"set_dlg_current_edit_attr"
+									) {
+
+										if ($this
+											.focusOldFieldId ==
+											action.value) {
+											$this.setData({
+												focusFieldId: ""
+											})
+										} else {
+											$this.setData({
+												focusFieldId: $this
+													.focusOldFieldId
+											})
+										}
+										$this.$nextTick(() => {
+											$this.setData({
+												focusFieldId: action
+													.value
+											})
+										});
+									} else if (action.action_type ==
+										"set_dlg_attr") {
+										// value = {"attr":"xxx", "value":"xxx"}
+										var data = action.value;
+										$this.setFormValues(data)
+									} else if (action.action_type ==
+										'set_dlg_attr_show') {
+										var data = action.value;
+
+										$this.setFormItemVisible(data)
+									} else if (action.action_type == 'set_global_attr') {
+										$this.global_attr = action.value || [];
+									} else 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: ""
+										}
+										uni.navigateTo({
+											url: '../selpsn/index?mulit=false&param=' +
+												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.clsId,
+														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: ""
+											}
+											$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 +
+												'&param=' +
+												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.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name;
+													// $this.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.clsId,
+															objid: "",
+															attr: param.req,
+															dataJson: [],
+														}
+
+														$this.DataObjRunCustomEvent(
+															info);
+													}
+												}
+											}
+										});
+									} else {
+										showInfo($this.translateSys(
+												"quotation_mark_left") +
+											action.action_type + $this
+											.translateSys(
+												"quotation_mark_right") + $this
+											.translate(
+												"tip_action_unprocessed"))
+
+									}
+								}
+
+							} catch (ex) {
+								let actionList = (data.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) {
+					showError(ex, this.translateSys("error") + "10.1")
+				}
+			},
 			setFormValues(attrs) {
 				console.log(attrs)
 				const head_styledef = this.head_styledef
-				if (JSON.stringify(attrs) == '{}') {
-					return;
+				if (!Array.isArray(attrs)) {
+					return
 				}
 				attrs.forEach(async (attr, key) => {
 					if (attr.choice_list) {
@@ -1027,21 +1105,13 @@
 					}
 				}
 				if (!$this.popupParam) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: "popupParam涓虹┖锛�,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo("popupParam涓虹┖锛�)
+
 					return;
 				}
 				if (data.length == 0) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate("tip_no_select_data"),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo(this.translate("tip_no_select_data"))
+
 					return;
 				}
 				let global_attr = Base64.encode(JSON.stringify(this.global_attr))
@@ -1066,6 +1136,8 @@
 
 			async DataObjRunCustomEvent(info, data_attr) {
 				var $this = this;
+				if (!info.eventid)
+					return
 				var enviroment = {
 					'function': '3000', // 鍔熻兘鐐圭紪鍙� 					cls_id: this.clsId, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�@@ -1125,118 +1197,15 @@
 				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('close')
-							});
-						} else uni.showModal({
-							title: this.translateSys("tip"),
-							content: tip + ',' + this.translateSys('tip') + ':' + data
-								.ret,
-							showCancel: false,
-							confirmText: this.translateSys('close')
-						});
-						return false
-					} else {
-						var tip = data.info ? typeof data.info == 'string' ? data.info : data
-							.info
-							.join(
-								'<br/>') : '';
-						tip = tip || data.err_info
-						if (tip) uni.showModal({
-							title: this.translateSys("tip"),
-							content: tip,
-							showCancel: false,
-							confirmText: this.translateSys('close')
-						});
-						if ([0, 2, 3, 4, -1].includes(data.result_type)) {
-							if (data.result_type == 2) {
-								$this.setFormValues(data.result || [])
-							} else if (typeof data.result == 'string') {
-								if (data.result) {
-									uni.showModal({
-										title: this.translateSys('tip'),
-										content: data.result,
-										showCancel: false,
-										confirmText: this.translateSys('close')
-									});
-								}
-							}
-							try {
-								var actionlist = data.action || []
-								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;
-
-										$this.setFormItemVisible(result)
-									} else if (action.action_type == 'set_global_attr') {
-										$this.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('close')
-										});
-									}
-								}
-
-							} catch (ex) {
-								let actionList = (data.action || []).map(a => a.action_type).join(';')
-								let tip = typeof ex == 'string' ? ex : ex.message
-								tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
-								uni.showModal({
-									title: this.translateSys('tip'),
-									content: tip,
-									showCancel: false,
-									confirmText: this.translateSys('close')
-								});
-								console.log(ex)
-								return
-							}
-						}
-
-
-					}
+					$this.onFormEventResult(data, "")
 
 				}).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('close')
-					});
+					showError(ex, this.translateSys('error') + "3.1")
 				});
 			},
-			dataObjRunCustomEvent_Return(eventid, data_attr, button_callback, item) {
-				console.log("dataObjRunCustomEvent_Return", eventid, data_attr, button_callback)
+			dataObjRunCustomEvent_Return(eventid, button_callback, item) {
+				console.log("dataObjRunCustomEvent_Return", eventid, button_callback)
 				const $this = this
 				var enviroment = {
 					'function': '3000', // 鍔熻兘鐐圭紪鍙�@@ -1293,261 +1262,11 @@
 				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('close')
-							});
-						} else uni.showModal({
-							title: $this.translateSys("tip"),
-							content: tip + ',' + $this.translateSys('tip') + ':' + data
-								.ret,
-							showCancel: false,
-							confirmText: $this.translateSys('close')
-						});
-						return false
-					} else {
-						var tip = data.info ? typeof data.info == 'string' ? data.info : data
-							.info
-							.join(
-								'<br/>') : '';
-						tip = tip || data.err_info
-						if (tip) uni.showModal({
-							title: $this.translateSys("tip"),
-							content: tip,
-							showCancel: false,
-							confirmText: $this.translateSys('close')
-						});
-						if ([0, 2, 3, 4, -1].includes(data.result_type)) {
-							if (data.result_type == 2) {
-
-							} else if (typeof data.result == 'string') {
-								if (data.result) {
-									uni.showModal({
-										title: this.translateSys('tip'),
-										content: data.result,
-										showCancel: false,
-										confirmText: this.translateSys('close')
-									});
-								}
-							}
-							try {
-								var actions = data.action || []
-								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&param=' +
-												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.clsId,
-														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 +
-												'&param=' +
-												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.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name;
-													// $this.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.clsId,
-															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('close')
-										});
-									}
-								}
-
-							} catch (ex) {
-								let actionList = (data.action || []).map(a => a.action_type).join(';')
-								let tip = typeof ex == 'string' ? ex : ex.message
-								tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
-								uni.showModal({
-									title: this.translateSys('tip'),
-									content: tip,
-									showCancel: false,
-									confirmText: this.translateSys('close')
-								});
-								console.log(ex)
-								return
-							}
-						}
-					}
+					$this.onFormEventResult(data, button_callback, item,req)
 
 				}).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('close')
-					});
+					showError(ex, this.translateSys('tip') + "5.1")
+
 				});
 			},
 			//纭畾
@@ -1575,6 +1294,7 @@
 					uni.navigateBack()
 				} catch (ex) {
 					this.okLoading = true
+					showError(ex, this.translateSys('tip') + "1")
 					return false;
 				}
 			},
@@ -1611,7 +1331,7 @@
 					return true;
 				} catch (ex) {
 					console.log("sava", ex)
-					this.showError(ex)
+					showError(ex, this.translateSys('tip'))
 					return false;
 				}
 
@@ -1657,16 +1377,7 @@
 					await runCustomEvent(dataInfo)
 					return true
 				} catch (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') + "7.1",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "7.1")
 					return false
 				}
 
@@ -1684,16 +1395,7 @@
 					await dataObjCreate(dataInfo)
 					return true
 				} catch (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") + "6.1",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "6.1")
 					return false
 				}
 
@@ -1711,16 +1413,7 @@
 					return true
 
 				} catch (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") + "6.2",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "6.2")
 					return false
 				}
 
@@ -1765,16 +1458,7 @@
 					await runCustomEvent(dataInfo)
 					return true
 				} catch (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') + "7.2",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "7.2")
 					return false
 				}
 
@@ -1798,7 +1482,9 @@
 						delta: 1 //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
 					});
 					await this.afterCancel();
-				} catch (ex) {}
+				} catch (ex) {
+					showError(ex, this.translateSys('tip'))
+				}
 			},
 			async beforeCancel() {
 				try {
@@ -1835,18 +1521,7 @@
 					})
 					return true
 				} catch (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") +
-							"8.1",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('tip') + "8.1")
 					return false
 				}
 			},
@@ -1888,33 +1563,11 @@
 					})
 					return true
 				} catch (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") +
-							"8.2",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys(
-							'close')
-					});
+					showError(ex, this.translateSys('tip') + "8.2")
 					return false
 				}
 			},
-			showError(ex) {
-				uni.showModal({
-					title: this.translateSys('error'),
-					content: typeof ex == "string" ? ex : typeof ex.errMsg == "string" ? ex
-						.errMsg : "",
-					showCancel: false,
-					confirmText: this.translateSys(
-						'cancel')
-				})
-			},
+
 			translate(t) {
 				if (typeof this.$t == "function") return this.$t(
 					`page.${t}`)

--
Gitblit v1.9.1