cuiqian2004
2025-05-14 b1233b1089142611698e913e565ec232334ba261
pages/modal/5601.vue
@@ -624,7 +624,7 @@
            // var $ele = e;
            //console.log(e.target)
            this.focusOldFieldId = item.fieldId
            getApp().onScan((result) => {
            getApp().onScan(async (result) => {
               console.log(result.decodedata);
               item.value = result.decodedata;
               var $this = this;
@@ -634,16 +634,14 @@
                  var attr = item.fieldId;
                  this.head_styledef.form.model[attr] = newVal;
                  var onChangeEvent = item.bind.onChangeEvent; //内容变化后事件
                  var onSuffixClickCallbackEvent = item.bind
                     .onSuffixClickCallbackEvent; //后图标点击事件
                  var onSuffixClickEvent = item.bind
                     .onSuffixClickEvent; //后图标点击回调
                  var isflag = false;
                  if (item.changeEventRunding)
                     return
                  item.changeEventRunding = true
                  if (onChangeEvent?.id) { //内容变化后事件
                     $this.onChange(onChangeEvent);
                     await this.onChange(onChangeEvent);
                  }
                  item.changeEventRunding = false
                  //初始化,下个输入框focus属性
                  var findd = false
                  for (let i in $this.head_styledef.form.items) {
@@ -713,7 +711,7 @@
            })
         },
         onEnterChange(item) { //回车,点击按钮,取消节点事件
         async onEnterChange(item) { //回车,点击按钮,取消节点事件
            console.log(item);
            let newVal = item.value
            if (typeof item.value == "string") {
@@ -732,7 +730,7 @@
               this.head_styledef.form.model[attr] = newVal;
               var onChangeEvent = item.bind.onChangeEvent; //内容变化后事件
               if (onChangeEvent?.id) { //内容变化后事件
                  this.onChange(onChangeEvent);
                  await this.onChange(onChangeEvent);
               }
            }
@@ -888,186 +886,176 @@
                     global_attr: '',
                     input_param: input_param,
                  };
                  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/>') : '';
                        if (tip) uni.showModal({
                           title: this.translateSys('tip'),
                  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) {
                        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')
                        });
                        if (result.result_type == 0 && result.action) {
                           result.action.forEach(item => {
                              if (item.action_type == "insert_subtable_page_row") { //码盘中
                                 $this.param.Show_Welcom_Page = false;
                                 var value = item.value;
                                 $this.viewAceionRow(value);
                              } else if (item.action_type ==
                                 "set_subtable_page_content") { //已码盘
                                 $this.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
                                 ) { //判断是否清空页签内容,正在码盘是否有数据
                                    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"),
                                       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);
                                 }
                              } else if (item.action_type == "select_subtable_page") {
                                 var value = item.value;
                                 const pageIndex = $this.pageDetail.findIndex((page) => {
                                    return value.page_name == page.Name;
                                 });
                                 if (pageIndex > -1) {
                                    $this.setData({
                                       current: pageIndex
                                    })
                                 }
                              } else if (item.action_type == "select_subtable_page_row") {
                                 // value = {"page_name":"码盘中", "row":{"id":"xx"}}
                                 var value = item.value;
                                 $this.viewActionSelectRow(value)
                              } else if (item.action_type ==
                                 "remove_subtable_page_row") { //清除面板中指定id的数据
                                 var 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") {
                                 var value = item.value;
                                 const pageData = $this.pageDetail.find((page) => {
                                    return value.page_name == page.Name;
                                 });
                                 if (pageData)
                                    pageData.ExtData = value.ext_data
                              } else if (item.action_type == "clear_subpage_rows") {
                                 var value = item.value;
                                 const 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) {
                                    $this.setData({
                                       focusFieldId: ""
                                    })
                                 } else {
                                    $this.setData({
                                       focusFieldId: $this.focusOldFieldId
                                    })
                                 }
                                 $this.$nextTick(() => {
                                    $this.setData({
                                       focusFieldId: item.value
                                    })
                                 });
                              } else if (item.action_type == "set_dlg_attr") {
                                 // value = {"attr":"xxx", "value":"xxx"}
                                 var data = item.value;
                                 $this.setFormValues(data)
                              }
                           });
                        } else {
                           if (result.info) {
                              uni.showModal({
                                 title: this.translateSys(
                                    "error") + "4.3",
                                 content: result.info,
                                 showCancel: false,
                                 confirmText: this
                                    .translateSys('close')
                              });
                           }
                        }
                     }
                  }).catch(ex => {
                     // console.log(ex);
                     let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
                     uni.showModal({
                        title: this.translateSys("error") + "4.1",
                     } 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')
                        confirmText: this.translateSys(
                           'close')
                     });
                  });
                     if (result.result_type == 0 && result.action) {
                        result.action.forEach(item => {
                           if (item.action_type == "insert_subtable_page_row") { //码盘中
                              $this.param.Show_Welcom_Page = false;
                              var value = item.value;
                              $this.viewAceionRow(value);
                           } else if (item.action_type ==
                              "set_subtable_page_content") { //已码盘
                              $this.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
                              ) { //判断是否清空页签内容,正在码盘是否有数据
                                 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"),
                                    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);
                              }
                           } else if (item.action_type == "select_subtable_page") {
                              var value = item.value;
                              const pageIndex = $this.pageDetail.findIndex((page) => {
                                 return value.page_name == page.Name;
                              });
                              if (pageIndex > -1) {
                                 $this.setData({
                                    current: pageIndex
                                 })
                              }
                           } else if (item.action_type == "select_subtable_page_row") {
                              // value = {"page_name":"码盘中", "row":{"id":"xx"}}
                              var value = item.value;
                              $this.viewActionSelectRow(value)
                           } else if (item.action_type ==
                              "remove_subtable_page_row") { //清除面板中指定id的数据
                              var 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") {
                              var value = item.value;
                              const pageData = $this.pageDetail.find((page) => {
                                 return value.page_name == page.Name;
                              });
                              if (pageData)
                                 pageData.ExtData = value.ext_data
                           } else if (item.action_type == "clear_subpage_rows") {
                              var value = item.value;
                              const 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) {
                                 $this.setData({
                                    focusFieldId: ""
                                 })
                              } else {
                                 $this.setData({
                                    focusFieldId: $this.focusOldFieldId
                                 })
                              }
                              $this.$nextTick(() => {
                                 $this.setData({
                                    focusFieldId: item.value
                                 })
                              });
                           } else if (item.action_type == "set_dlg_attr") {
                              // value = {"attr":"xxx", "value":"xxx"}
                              var data = item.value;
                              $this.setFormValues(data)
                           }
                        });
                     } else {
                        if (result.info) {
                           uni.showModal({
                              title: this.translateSys(
                                 "error") + "4.3",
                              content: result.info,
                              showCancel: false,
                              confirmText: this
                                 .translateSys('close')
                           });
                        }
                     }
                  }
               }
            } catch (ex) {
               var tip = typeof ex == "string" ? ex : ex.message;