cuiqian2004
10 天以前 90e4076a8adf5dac4384f10d9ce22398580eaf34
pages/modal/5601.vue
@@ -1,7 +1,7 @@
<template>
   <view class="uni-page-modal-5601">
   <view class="uni-page-modal-5601" :class="largeMode?'large-mode':''">
      <!-- 表头样式 -->
      <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId"
      <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :hiddenIds="head_styledef.hiddenIds ?head_styledef.hiddenIds :[] "  :focusId="focusFieldId"
         @on-click="onClick" @on-focus="ontap" @on-change="onEnterChange" @on-click-prefix="classAttr_extButton"
         @on-click-suffix="classAttr_extButton"></OIForm>
@@ -17,7 +17,7 @@
            <swiper class="view-tabpage" :current="current" @change="changeSwiper">
               <!-- 子界面 -->
               <swiper-item v-for="(pageData, pageIndex) in pageDetail" :key="pageIndex">
                  <view class="uni-panel-content">
                  <view class="tab-content">
                     <view class="view-tab-content" :id="'tabpanel' + pageData.Name">
                        <image class="logo" v-if="pageData.DefList.length==0"
                           src="../../images/mobox_log_200x40.png">
@@ -27,11 +27,14 @@
                              @tap="onPanelClick(ii,style.form.htmlobjId)"
                              :id="'dvpanel'+style.form.htmlobjId"
                              :class="style.form.htmlobjId==active_id?'bk-active':''">
                              <OIForm class="dv-panel-form" :form="style.form" viewMode></OIForm>
                              <OIForm class="dv-panel-form" :form="style.form"
                                 :hiddenIds="style.hiddenIds ?style.hiddenIds :[] " viewMode @on-change="(item2)=>{
                                    onDetailEnterChange(item2,style,pageIndex)
                                 }"></OIForm>
                              <div class="dv-panel-button"
                                 v-if="pageData.Select_Button==true || pageData.Row_Button.length > 0">
                                 <checkbox v-if="pageData.Select_Button==true" :model="ii"
                                 <checkbox v-if="pageData.Select_Button==true" :value="ii"
                                    :checked="style.SelBut_Checked" />
                                 <!-- <text></text> -->
                                 <!-- <button type="primary" @click="savaItem(ii)" v-if="param.Sub_Page[0].OK_Button==true">保存</Button> -->
@@ -139,6 +142,7 @@
      data() {
         return {
            largeMode: getApp().globalData.largeMode || false,
            title: this.translateSys("inventory"),
            ClsID: '',
            param: {},
@@ -365,21 +369,18 @@
                        Name: page.After_Delete?.Name
                     };
                  }
                  if (evt.ID) {
                     return [{
                        Cls_Name: this.param?.master_cls?.name || "",
                        Cls_ID: this.param?.master_cls?.id || "",
                        FunCode: "Delete",
                        ShowName: this.$t("sys.delete"),
                        Style: "text",
                        Prompt: false,
                        NotTriggerSYSEvent: false,
                        DataStateVerify: false,
                        AttrVerify: false,
                        AfterProcess_Event: evt,
                     }];
                  }
                  return [{
                     Cls_Name: this.param?.master_cls?.name || "",
                     Cls_ID: this.param?.master_cls?.id || "",
                     FunCode: "Delete",
                     ShowName: this.$t("sys.delete"),
                     Style: "text",
                     Prompt: false,
                     NotTriggerSYSEvent: false,
                     DataStateVerify: false,
                     AttrVerify: false,
                     AfterProcess_Event: evt,
                  }];
               }
               return [];
            }
@@ -493,7 +494,25 @@
                        }
                     }
                  }
                  const app = getApp()
                  if (app.globalData.bindClasses) {
                     styledefHead.form.items.push({
                        name: "Input",
                        label: this.translate("classes"),
                        labelWidth: 100,
                        disabled: true,
                        value: app.globalData.classes,
                        setting: {
                           width: 100,
                           height: 50,
                        },
                        bind: {
                           attr: "",
                        },
                        fieldId: "S_CLASSES",
                     })
                     styledefHead.form.model["S_CLASSES"] = app.globalData.classes
                  }
               }
               this.setData({
                  head_styledef: styledefHead
@@ -627,9 +646,9 @@
            // var $ele = e;
            //console.log(e.target)
            this.focusOldFieldId = item.fieldId
            getApp().onScan((result) => {
               console.log(result.decodedata);
               item.value = result.decodedata;
            getApp().onScan(async (result) => {
               console.log(result);
               item.value = result;
               var $this = this;
               let newVal = item.value.trim()
               if (newVal) {
@@ -637,16 +656,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) {
@@ -716,7 +733,7 @@
            })
         },
         onEnterChange(item) { //回车,点击按钮,取消节点事件
         async onEnterChange(item) { //回车,点击按钮,取消节点事件
            console.log(item);
            let newVal = item.value
            if (typeof item.value == "string") {
@@ -735,11 +752,12 @@
               this.head_styledef.form.model[attr] = newVal;
               var onChangeEvent = item.bind.onChangeEvent; //内容变化后事件
               if (onChangeEvent?.id) { //内容变化后事件
                  this.onChange(onChangeEvent);
                  await this.onChange(onChangeEvent);
               }
            }
         },
         classAttr_extButton(item) {
            var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //后图标点击事件
@@ -770,7 +788,155 @@
            this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent.id,
               item);
         },
         onDetailEnterChange(item, style, pageIndex) {
            let newVal = item.value
            if (typeof item.value == "string") {
               newVal = item.value.trim()
               if (!newVal) {
                  item.oldvalue = newVal;
                  var attr = item.fieldId;
                  style.form.model[attr] = newVal;
                  return
               }
            }
            if (item.oldvalue != newVal) {
               item.oldvalue = newVal;
               var attr = item.fieldId;
               style.form.model[attr] = newVal;
               var onChangeEvent = item.bind.onChangeEvent; //内容变化后事件
               if (onChangeEvent?.id) { //内容变化后事件
                  this.runDetailChangeEvent(onChangeEvent, style, pageIndex)
               }
            }
         },
         async runDetailChangeEvent(event, style, pageIndex) {
            try {
               const detail_attr = {}
               style.form.items.forEach(item2 => {
                  if (item2.name == "Layout") { //判断是否是栅栏格式
                     item2.setting.colList.forEach(col => {
                        if (col != null) detail_attr[col
                           .fieldId] = col.value;
                     });
                  } else
                     detail_attr[item2.fieldId] = item2.value;
               });
               var obj_attr = detail_attr
               var input_param = Base64.encode(
                  JSON.stringify(
                     Object.keys(detail_attr).map((a) => ({
                        attr: a,
                        value: detail_attr[a] || "",
                     }))
                  )
               );
               var dataInfo = {
                  ed_type: 0,
                  start_transaction: true,
                  class_id: style.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,
               };
               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')
                     });
                  } 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 == "set_dlg_attr") {
                           // value = {"attr":"xxx", "value":"xxx"}
                           var data = item.value;
                           this.setDetailFormValues(data, style, pageIndex)
                        } else if (item.action_type == 'set_dlg_attr_show') {
                           var data = item.value;
                           this.setDetailFormItemVisible(data, style, pageIndex)
                        }
                     });
                  } else {
                     if (result.info) {
                        uni.showModal({
                           title: this.translateSys(
                              "error") + "6.3",
                           content: result.info,
                           showCancel: false,
                           confirmText: this
                              .translateSys('close')
                        });
                     }
                  }
               }
            } catch (ex) {
               console.log(ex)
               var tip = typeof ex == "string" ? ex : ex.message;
               uni.showModal({
                  title: this.translateSys("error") + "6.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')
               });
            }
         },
         getDetailAttrList(pageData) {
            const detailAttrList = [];
            console.log(pageData)
@@ -891,186 +1057,180 @@
                     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 (item.action_type == 'set_dlg_attr_show') {
                              var data = item.value;
                              $this.setFormItemVisible(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;
@@ -1295,14 +1455,12 @@
                              } else if (ele2.name == 'Layout') {
                                 ele2.setting.colList.forEach(col => {
                                    if (col) {
                                       if (col.fieldId == attr
                                          .attr) {
                                       if (col.fieldId == attr.attr) {
                                          col.value = $this
                                             .operationNumber(
                                                col.value,
                                                attr.value,
                                                attr
                                                .operation
                                                attr.operation
                                             )
                                       }
                                    }
@@ -1312,80 +1470,74 @@
                        });
                     }
                  } else if (rowData.condition) {
                     const conditions = rowData.condition || [];
                     if (conditions.length > 0) {
                        let bFindCondition = true;
                        for (let i in conditions) {
                           const condition = conditions[i];
                           let bFind = false;
                           for (let i2 in ele.form.items) {
                              const ele2 = ele.form.items[i2];
                              if (ele2.name != "Layout") {
                                 if (ele2.fieldId == condition.attr) {
                                    if (condition.value == ele2.value) {
                     const conditions = rowData.condition
                     let bFindCondition = true;
                     for (let i in conditions) {
                        const condition = conditions[i];
                        let bFind = false;
                        for (let i2 in ele.form.items) {
                           const ele2 = ele.form.items[i2];
                           if (ele2.name != "Layout") {
                              if (ele2.fieldId == condition.attr) {
                                 if (condition.value == ele2.value) {
                                    bFind = true;
                                 }
                                 break;
                              }
                           } else {
                              const colList = ele2.setting.colList || [];
                              for (let i3 in colList) {
                                 const col = colList[i3];
                                 if (col.fieldId == condition.attr) {
                                    if (condition.value == col.value) {
                                       bFind = true;
                                    }
                                    break;
                                 }
                              } else {
                                 const colList = ele2.setting.colList || [];
                                 for (let i3 in colList) {
                                    const col = colList[i3];
                                    if (col.fieldId == condition.attr) {
                                       if (condition.value == col.value) {
                                          bFind = true;
                                       }
                                       break;
                                    }
                                 }
                                 if (bFind) break;
                              }
                           }
                           if (!bFind) {
                              bFindCondition = false;
                              break;
                              if (bFind) break;
                           }
                        }
                        if (bFindCondition) {
                           rowData.attrs.forEach(attr => {
                              ele.form.items.forEach(ele2 => {
                                 if (ele2.name != 'Layout') {
                                    if (ele2.fieldId == attr.attr) {
                                       ele2.value =
                                          $this.operationNumber(
                                             ele2.value,
                                             attr.value,
                                             attr.operation
                                          )
                                    }
                                 } else if (ele2.name == 'Layout') {
                                    ele2.setting.colList.forEach(col => {
                                       if (col) {
                                          if (col.fieldId == attr
                                             .attr) {
                                             col.value =
                                                $this
                                                .operationNumber(
                                                   col.value,
                                                   attr
                                                   .value,
                                                   attr
                                                   .operation)
                                          }
                                       }
                                    })
                                 }
                              });
                           });
                        if (!bFind) {
                           bFindCondition = false;
                           break;
                        }
                     }
                     if (bFindCondition) {
                        rowData.attrs.forEach(attr => {
                           ele.form.items.forEach(ele2 => {
                              if (ele2.name != 'Layout') {
                                 if (ele2.fieldId == attr.attr) {
                                    ele2.value =
                                       $this.operationNumber(
                                          ele2.value,
                                          attr.value,
                                          attr.operation
                                       )
                                 }
                              } else if (ele2.name == 'Layout') {
                                 ele2.setting.colList.forEach(col => {
                                    if (col) {
                                       if (col.fieldId == attr.attr) {
                                          col.value =
                                             $this.operationNumber(
                                                col.value, attr
                                                .value, attr
                                                .operation)
                                       }
                                    }
                                 })
                              }
                           });
                        });
                     }
                  }
               })
            });
            pageData.DefList = detailStyleDefList
            $this.$set(this.pageDetail, pageIndex, pageData)
         },
         //加载正在码盘内容
         viewAceionRow(data) {
@@ -1450,10 +1602,10 @@
               return;
            }
            var styleStr = JSON.stringify(pageData.StyleDef);
            var detailStyle = JSON.parse(styleStr);
            if (detailStyle.form) {
               data.content.forEach(cont => {
                  detailStyle = JSON.parse(styleStr);
            data.content.forEach(cont => {
               var detailStyle = JSON.parse(styleStr);
               if (detailStyle.form) {
                  detailStyle.SelBut_Checked = data.checkbox ?? true;
                  detailStyle.form.objId = cont.id;
@@ -1512,15 +1664,36 @@
                  }
                  // $this.setData({pageDetail:pageD})
                  $this.$set(this.pageDetail, pageIndex, pageData)
               }
            });
               });
            }
            $this.$set(this.pageDetail, pageIndex, pageData)
         },
         setFormItemVisible(attrs) {
            if (!Array.isArray(attrs)) {
               return
            }
            const head_styledef = this.head_styledef
            if (!head_styledef.hiddenIds) {
               head_styledef.hiddenIds = []
            }
            attrs.forEach((attr) => {
               let index = head_styledef.hiddenIds.findIndex((id) => id == attr.attr);
               if (attr.show) {
                  if (index > -1) head_styledef.hiddenIds.splice(index, 1);
               } else {
                  if (index == -1) head_styledef.hiddenIds.push(attr.attr);
               }
            });
            this.setData({
               head_styledef: head_styledef
            })
         },
         setFormValues(attrs) {
            const head_styledef = this.head_styledef
            if (JSON.stringify(attrs) == '{}') {
               return;
            if (!Array.isArray(attrs)) {
               return
            }
            console.log(attrs)
            attrs.forEach(async (attr, key) => {
@@ -1565,6 +1738,13 @@
                     if (ele.fieldId == attr.attr) {
                        ele.value = attr.value;
                        ele.oldvalue = attr.value;
                        if (ele.name == "Input") {
                           if (attr.prompt) ele.placeholder = attr.prompt;
                        }
                        if (attr.enable !== undefined) {
                           if (attr.enable) ele.disabled = false;
                           else ele.disabled = true;
                        }
                     }
                  } else if (ele.name == "Layout") {
                     ele.setting.colList.forEach((col) => {
@@ -1572,6 +1752,13 @@
                           if (col.fieldId == attr.attr) {
                              col.value = attr.value;
                              col.oldvalue = attr.value;
                              if (col.name == "Input") {
                                 if (attr.prompt) col.placeholder = attr.prompt;
                              }
                              if (attr.enable !== undefined) {
                                 if (attr.enable) col.disabled = false;
                                 else col.disabled = true;
                              }
                           }
                        }
                     });
@@ -1585,13 +1772,113 @@
               head_styledef: head_styledef
            })
         },
         setDetailFormItemVisible(attrs, style, pageIndex) {
            if (pageIndex < 0)
               return
            if (!Array.isArray(attrs)) {
               return
            }
            const pageData = this.pageDetail[pageIndex]
            if (!style.hiddenIds) {
               style.hiddenIds = []
            }
            attrs.forEach((attr) => {
               let index = style.hiddenIds.findIndex((id) => id == attr.attr);
               if (attr.show) {
                  if (index > -1) style.hiddenIds.splice(index, 1);
               } else {
                  if (index == -1) style.hiddenIds.push(attr.attr);
               }
            });
            this.$set(this.pageDetail, pageIndex, pageData)
         },
         setDetailFormValues(attrs, style, pageIndex) {
            if (pageIndex < 0)
               return
            if (!Array.isArray(attrs)) {
               return
            }
            const pageData = this.pageDetail[pageIndex]
            attrs.forEach(async (attr, key) => {
               if (attr.choice_list) {
                  var dictItemList = [];
                  attr.choice_list.forEach(async (val, index) => {
                     dictItemList.push({
                        text: val,
                        value: val
                     });
                  });
                  style.form.items.forEach(async (attr_item, index) => {
                     if (attr_item.name != "Layout") {
                        if (attr_item.fieldId == attr.attr) {
                           if (attr_item.useDict) {
                              attr_item.dict = dictItemList;
                           } else {
                              attr_item.selections = dictItemList;
                           }
                        }
                     } else if (attr_item.name == "Layout") {
                        attr_item.setting.colList.forEach((col) => {
                           if (col) {
                              if (col.fieldId == attr.attr) {
                                 if (col.useDict) {
                                    col.dict = dictItemList;
                                 } else {
                                    col.selections = dictItemList;
                                 }
                              }
                           }
                        });
                     }
                  });
               }
               if (!style.form.model[attr.attr]) {
                  style.form.model[attr.attr] = attr.value;
               }
               style.form.items.forEach(async (ele) => {
                  if (ele.name != "Layout") {
                     if (ele.fieldId == attr.attr) {
                        ele.value = attr.value;
                        ele.oldvalue = attr.value;
                        if (ele.name == "Input") {
                           if (attr.prompt) ele.placeholder = attr.prompt;
                        }
                        if (attr.enable !== undefined) {
                           if (attr.enable) ele.disabled = false;
                           else ele.disabled = true;
                        }
                     }
                  } else if (ele.name == "Layout") {
                     ele.setting.colList.forEach((col) => {
                        if (col) {
                           if (col.fieldId == attr.attr) {
                              col.value = attr.value;
                              col.oldvalue = attr.value;
                              if (col.name == "Input") {
                                 if (attr.prompt) col.placeholder = attr.prompt;
                              }
                              if (attr.enable !== undefined) {
                                 if (attr.enable) col.disabled = false;
                                 else col.disabled = true;
                              }
                           }
                        }
                     });
                  }
               })
               //判断表单里是否有返回字段,没有就装载到model里,点击确定提交的时候带上这些数据
            })
            this.$set(this.pageDetail, pageIndex, pageData)
         },
         onClickItem(e) { //选择页签
            // console.log(e);
            this.current = e.currentIndex
         },
         onDetail1EnterChange(item) { //码盘中样式回车事件
            console.log(item);
         },
         async del(pageData, style, event) {
            //获取表头属性
            var head_attr = {};
@@ -1860,39 +2147,8 @@
                           $this.setFormValues(result)
                        } else if (action.action_type == 'set_dlg_attr_show') {
                           var result = action.value;
                           result.forEach(async (attr, key) => {
                              $this.head_styledef.form.items.forEach(async (
                                 ele,
                                 index) => {
                                 //判断是否是栅格表单
                                 if (ele.name != 'Layout') {
                                    if (ele.fieldId == attr
                                       .attr) {
                                       ele.show = attr.show;
                                    }
                                 } else if (ele.name ==
                                    'Layout') {
                                    ele.setting.colList
                                       .forEach((col) => {
                                          if (col) {
                                             if (col
                                                .fieldId ==
                                                attr
                                                .attr
                                             ) {
                                                col.show =
                                                   attr
                                                   .show;
                                             }
                                          }
                                       });
                                 }
                              });
                           });
                           var head_styledef = JSON.parse(JSON.stringify($this.$data
                              .head_styledef));
                           $this.head_styledef = [];
                           $this.head_styledef = head_styledef;
                           $this.setFormItemVisible(result)
                           // console.log($this.head_styledef);
                        } else if (action.action_type == 'set_global_attr') {
                           $this.global_attr = action.value || [];
@@ -2343,7 +2599,8 @@
                  const style = pageData.DefList[index];
                  //删除码盘中样式面板
                  pageData.DefList.splice(index, 1);
                  this.del(pageData, style, btn.AfterProcess_Event);
                  if (btn.AfterProcess_Event.ID)
                     this.del(pageData, style, btn.AfterProcess_Event);
                  this.$set(this.pageDetail, pageIndex, pageData)
               }
            } else if (btn.FunCode == "Modify") {
@@ -2491,22 +2748,22 @@
         },
         sava(pageData, event) {
            var $this = this;
            if (pageData.DefList.length == 0) {
               uni.showModal({
                  title: this.translateSys("tip"),
                  content: this.translate(
                        "tip_no_data_first") +
                     this.translateSys(
                        "quotation_mark_left") + pageData.Name + this
                     .translateSys(
                        "quotation_mark_right") +
                     this.translate(
                        "tip_no_data_last"),
                  showCancel: false,
                  confirmText: this.translateSys('close')
               });
               return false;
            }
            // if (pageData.DefList.length == 0) {
            //    uni.showModal({
            //       title: this.translateSys("tip"),
            //       content: this.translate(
            //             "tip_no_data_first") +
            //          this.translateSys(
            //             "quotation_mark_left") + pageData.Name + this
            //          .translateSys(
            //             "quotation_mark_right") +
            //          this.translate(
            //             "tip_no_data_last"),
            //       showCancel: false,
            //       confirmText: this.translateSys('close')
            //    });
            //    return false;
            // }
            //获取表头属性
            var head_attr = {};
            this.head_styledef.form.items.forEach(item => {
@@ -2835,6 +3092,10 @@
                              var data = item.value;
                              $this.setFormValues(data)
                           }
                           else if (item.action_type == 'set_dlg_attr_show') {
                              var data = item.value;
                              $this.setFormItemVisible(data)
                           }
                        });
                     } else {
@@ -2911,38 +3172,6 @@
         flex-direction: column;
      }
      .v-head-style {
         width: 98%;
         .uni-forms-item {
            margin-bottom: 11rpx;
         }
         .input-wrapper {
            border: 1px solid #d5d5d5;
            width: 100%;
            display: flex;
            flex-direction: row;
            .uni-input {
               flex: 1;
               padding: 12rpx 8rpx;
               color: #2d8cf0;
               // height: 40rpx;
               // line-height: 40rpx;
            }
            .uni-icon {
               padding: 10rpx 5rpx;
               font-size: 32rpx;
               color: rgb(192, 196, 204);
            }
         }
         .input-wrapper:hover {
            border: 1px solid rgb(41, 121, 255);
         }
      }
      .view-content {
         display: flex;
@@ -2979,6 +3208,12 @@
         flex-direction: column !important;
      }
      .tab-content {
         display: flex;
         width: 100%;
         height: 100%;
         flex-direction: column !important;
      }
      .view-bottom {
         display: flex;
@@ -2994,7 +3229,6 @@
         .btn-left {
            padding: 20rpx;
            line-height: 1.5;
            font-size: 38rpx;
            font-weight: bold;
            float: left;
            display: inline-block;
@@ -3004,7 +3238,6 @@
         .btn-one {
            padding: 20rpx;
            line-height: 1.5;
            font-size: 38rpx;
            font-weight: bold;
            float: left;
            display: inline-block;
@@ -3015,7 +3248,6 @@
         .btn-right {
            padding: 20rpx;
            line-height: 1.5;
            font-size: 38rpx;
            font-weight: bold;
            float: right;
            display: inline-block;
@@ -3085,11 +3317,6 @@
            padding: 0px;
            margin: 0;
            .dv-panel-form-item {
               margin: 0;
               padding: 0px;
            }
            .uni-forms-item {
               padding-bottom: 5rpx;
               margin-bottom: 0;
@@ -3098,40 +3325,14 @@
                  height: 20px !important;
                  padding: 0 10rpx 0 0 !important;
               }
               .uni-input {
                  width: calc(100% - 12rpx);
                  padding: 5rpx;
                  border: 1px solid #d5d5d5;
                  color: #2d8cf0;
                  height: 20px;
                  background: #FFF;
                  line-height: 20px;
                  border-radius: 6px !important;
                  font-size: 14px;
                  font-family: inherit;
                  box-shadow: none !important;
                  transition-duration: 0.1s;
                  vertical-align: middle;
               }
               .form-item-span {
                  vertical-align: text-top;
                  color: #2d8cf0;
                  white-space: normal;
                  word-break: break-all;
                  width: 100%;
               }
            }
         }
         .dv-panel-button {
            width: 100%;
            text-align: left;
            min-height: 30rpx;
            min-height: 16px;
            padding-bottom: 10rpx;
            checkbox {
@@ -3143,7 +3344,7 @@
               text-align: left;
               line-height: 1.5;
               border: none;
               font-size: 30rpx;
               margin-right: 10rpx;
               display: inline-block;
               float: right;
@@ -3203,7 +3404,6 @@
         background: #94D5EF;
         display: block;
         width: 100%;
         font-size: 36rpx;
         line-height: 80rpx;
         font-weight: 500;
      }
@@ -3222,8 +3422,6 @@
         background: #FFF;
         border-radius: 0 !important;
         color: #2d8cf0;
         /* padding: 10rpx 8rpx 12rpx; */
         font-size: 34rpx;
         font-family: inherit;
         box-shadow: none !important;
         transition-duration: 0.1s;
@@ -3245,14 +3443,6 @@
      .input-disabled {
         background-color: #f3f3f3 !important;
      }
      ::v-deep .uni-row {
         margin-bottom: 0px;
      }
      .view-tabpage ::v-deep .uni-row {
         margin-bottom: 5px;
      }
      .demo-uni-col {
@@ -3285,7 +3475,6 @@
      }
      .popup-header {
         font-size: 42rpx;
         font-weight: bold;
         margin: 20rpx 20rpx 0px 20rpx;
      }
@@ -3310,7 +3499,6 @@
         background: #27A6E1;
         border: none;
         color: #fff;
         font-size: 38rpx;
         font-weight: bold;
         /* float: left; */
         display: inline-block;
@@ -3326,7 +3514,6 @@
         // color: #fff;
         background: #fff;
         color: #000;
         font-size: 38rpx;
         font-weight: bold;
         /* float: right; */
         display: inline-block;
@@ -3334,4 +3521,10 @@
   }
   .uni-page-modal-5601.large-mode {
      .dv-panel-button {
         min-height: 32px !important;
      }
   }
</style>