{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\bizComponents\\flow\\OnlineForm.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\bizComponents\\flow\\OnlineForm.vue","mtime":1675071991569},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["import \"core-js/modules/es7.object.get-own-property-descriptors\";\nimport \"core-js/modules/es6.object.keys\";\nimport _defineProperty from \"D:/jenkins/workspace/xq-web-bpm/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport \"core-js/modules/es6.function.name\";\nimport \"core-js/modules/es6.regexp.to-string\";\nimport \"core-js/modules/es6.regexp.replace\";\nimport \"regenerator-runtime/runtime\";\nimport _asyncToGenerator from \"D:/jenkins/workspace/xq-web-bpm/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport \"core-js/modules/es6.regexp.split\";\nimport \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.map\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport EipInput from '@/components/bizComponents/eipControl/EipInput.vue';\nimport EipCheckbox from '@/components/bizComponents/eipControl/EipCheckbox.vue';\nimport EipSelect from '@/components/bizComponents/eipControl/EipSelect.vue';\nimport EipRadio from '@/components/bizComponents/eipControl/EipRadio.vue';\nimport EipUserSelector from '@/components/bizComponents/eipControl/selector/EipUserSelector.vue';\nimport EipDemensionSelector from '@/components/bizComponents/eipControl/selector/EipDemensionSelector.vue';\nimport EipJobSelector from '@/components/bizComponents/eipControl/selector/EipJobSelector.vue';\nimport EipOrgSelector from '@/components/bizComponents/eipControl/selector/EipOrgSelector.vue';\nimport EipPostSelector from '@/components/bizComponents/eipControl/selector/EipPostSelector.vue';\nimport EipRoleSelector from '@/components/bizComponents/eipControl/selector/EipRoleSelector.vue';\nimport EipTextarea from '@/components/bizComponents/eipControl/EipTextarea.vue';\nimport EipFont from '@/components/bizComponents/eipControl/EipFont.vue';\nimport EipDialog from '@/components/bizComponents/eipControl/EipDialog.vue';\nimport EipAutocomplete from '@/components/bizComponents/eipControl/EipAutocomplete.vue';\nimport EipCascader from '@/components/bizComponents/eipControl/EipCascader.vue';\nimport EipTreeselect from '@/components/bizComponents/eipControl/EipTreeselect.vue';\nimport EipButton from '@/components/bizComponents/eipControl/EipButton.vue';\nimport EipDate from '@/components/bizComponents/eipControl/EipDate.vue';\nimport EipImg from '@/components/bizComponents/eipControl/EipImg.vue';\nimport EipViewer from '@/components/bizComponents/eipControl/EipViewer.vue';\nimport EipSwitch from '@/components/bizComponents/eipControl/EipSwitch.vue';\n\nvar EipMap = function EipMap() {\n  return import(\"@/components/bizComponents/eipControl/EipMap.vue\");\n};\n\nvar EipFontUeditor = function EipFontUeditor() {\n  return import(\"@/components/bizComponents/eipControl/EipFontUeditor.vue\");\n};\n\nimport HtFile from '@/components/bizComponents/control/HtFile.vue';\nimport VRuntimeTemplate from 'v-runtime-template';\nimport HtGangedSelect from '@/components/bizComponents/control/HtGangedSelect.vue';\nimport EipRelFlow from '@/components/bizComponents/eipControl/EipRelFlow.vue';\nimport EipSubDialog from '@/components/bizComponents/eipControl/EipSubDialog.vue';\nimport EipSunDialog from '@/components/bizComponents/eipControl/EipSunDialog.vue';\nimport HtLabel from '@/components/bizComponents/control/HtLabel.vue';\nimport HtDigital from '@/components/bizComponents/control/HtDigital.vue';\nimport HtCurrency from '@/components/bizComponents/control/HtCurrency.vue';\nimport EipRealtimeInput from '@/components/bizComponents/eipControl/EipRealtimeInput.vue';\nimport EipRealtimeTextarea from '@/components/bizComponents/eipControl/EipRealtimeTextarea.vue';\nimport EipStep from '@/components/bizComponents/eipControl/EipStep.vue';\nimport HtInputAutocomplete from '@/components/bizComponents/control/HtInputAutocomplete.vue';\nimport HtTreeselect from '@/components/bizComponents/control/HtTreeselect.vue';\nimport HtCascader from '@/components/bizComponents/control/HtCascader.vue';\nimport HtTree from '@/components/bizComponents/control/HtTree.vue';\nimport EipTabs from '@/components/bizComponents/eipControl/EipTabs.vue';\nimport EipSubPagination from '@/components/bizComponents/eipControl/EipSubPagination.vue';\nimport EipSubImportDialog from '@/components/bizComponents/eipControl/EipSubImportDialog.vue';\nimport EipSubExportDialog from '@/components/bizComponents/eipControl/EipSubExportDialog.vue';\nimport EipAttachment from '@/components/bizComponents/eipControl/EipAttachment.vue';\nimport EipDic from '@/components/bizComponents/eipControl/EipDic.vue';\nimport EipPaginationLayout from '@/components/bizComponents/eipControl/EipPaginationLayout.vue';\nimport EipPagination from '@/components/bizComponents/eipControl/EipPagination.vue';\nimport EipCollapse from '@/components/bizComponents/eipControl/EipCollapse.vue';\nimport EipPaginationSteps from '@/components/bizComponents/eipControl/EipPaginationSteps.vue';\nimport EipDataView from '@/components/bizComponents/eipControl/EipDataView.vue';\nimport EipHotTable from '@/components/bizComponents/eipControl/EipHotTable.vue';\nimport EipHotSubDialog from '@/components/bizComponents/eipControl/EipHotSubDialog.vue';\nimport ContractPreview from '@/components/bizComponents/common/ContractPreview.vue';\nimport EipTag from '@/components/bizComponents/eipControl/EipTag.vue';\nimport EipSubtableBackfill from '@/components/bizComponents/eipControl/EipSubtableBackfill.vue';\nimport EipDivider from '@/components/bizComponents/eipControl/EipDivider.vue';\nimport EipOffice from '@/components/bizComponents/eipControl/EipOffice.vue';\nimport EipQrcode from '@/components/bizComponents/eipControl/EipQrcode.vue';\nimport EipSignature from '@/components/bizComponents/eipControl/EipSignature.vue';\nimport SubPagination from '@/components/bizComponents/eipControl/bus/SubPagination.js';\nimport Vue from 'vue';\nexport default {\n  name: 'online-form',\n  props: ['html', 'data', 'permission', 'isView', 'isPrint', 'initFillData', 'flowKey', 'formId', 'isLook', 'flowKey'],\n  data: function data() {\n    return {\n      loadedFail: false,\n      //表单加载html是否失败\n      subBackfill: new Map(),\n      hotTableFillback: String\n    };\n  },\n  created: function created() {\n    this.init();\n  },\n  watch: {\n    data: {\n      handler: function handler(newVal, oldValue) {\n        this.$root.$emit(\"updateData\", newVal);\n      },\n      deep: true,\n      immediate: true\n    },\n    html: function html(newVal) {\n      if (newVal) {\n        this.init();\n      }\n    },\n    hotTableFillback: function hotTableFillback(newVal) {\n      if (newVal) {\n        var newValArray = newVal.split('_timestamp_');\n        var boPathArray = newValArray[0].split('.');\n        var hotTableRef = 'hottable.' + boPathArray[0] + '.' + boPathArray[1];\n        var subBo = this.data[boPathArray[0]][boPathArray[1]];\n        this.$refs.onlineForm.$refs[hotTableRef].fillbackHotTableData(subBo);\n      }\n    }\n  },\n  methods: {\n    loadSuccess: function loadSuccess(res) {\n      this.$emit(\"loadSuccess\", res);\n    },\n    init: function init() {\n      var initFillData = this.initFillData;\n      var permission = this.permission;\n      Vue.component('ht-runtime-template', {\n        props: ['html', 'data', 'permission', 'isView', 'isPrint'],\n        template: this.html,\n        data: function data() {\n          return {\n            left_image: '',\n            right_image: '',\n            transitionIndex: -1,\n            curTabIndex: 'tabe_check_0',\n            errMesg: '',\n            fillOrg: {},\n            fillOrgConfMap: {}\n          };\n        },\n        computed: {\n          // 子表前端分页过滤器\n          pagingSubData: function pagingSubData() {\n            var me = this;\n            return function (datapath) {\n              // 通过子表数据路径获取分页数据\n              return SubPagination.pagingByPath(datapath, me);\n            };\n          }\n        },\n        mounted: function mounted() {\n          // 如果当前表单的element为Comment说明表单加载失败了。\n          if (this.$el && this.$el.constructor == Comment) {\n            this.$parent.loadedFail = true;\n          }\n\n          this.$validator = this.$root.$validator;\n\n          if (this.permission.table) {\n            for (var subTableName in this.permission.table) {\n              if (this.permission.table[subTableName].required) {\n                this.addSubTableByName(subTableName);\n              }\n            }\n          }\n\n          this.$emit(\"loadSuccess\", true); //初始化handsontable数据\n\n          if (this.data) {\n            var formId = this.formId;\n\n            var _this = this;\n\n            if (!formId) {\n              this.toInitTemolateData(initFillData);\n            } else {\n              var loading = this.$loading({\n                lock: true,\n                text: '正在获取初始化信息...',\n                spinner: 'el-icon-loading',\n                background: 'rgba(0, 0, 0, 0.7)'\n              });\n              this.$http.get('${form}/form/form/v1/previewDesignVue?formId=' + formId).then(function (resp) {\n                if (resp.data) {\n                  var formData = resp.data.data;\n\n                  for (var key in formData) {\n                    if (formData.hasOwnProperty(key)) {\n                      if (!_this.data[key]) {\n                        _this.data[key] = formData[key];\n                      }\n                    }\n                  }\n\n                  loading.close();\n\n                  _this.toInitTemolateData(initFillData);\n                } else {\n                  loading.close();\n\n                  _this.toInitTemolateData(initFillData);\n                }\n              }, function () {\n                loading.close();\n\n                _this.toInitTemolateData(initFillData);\n              });\n            }\n          }\n\n          if (this.isPrint) {\n            this.printDetail();\n          }\n        },\n        //改v-runtime-template.es.js的源码，或者改v-runtime-template的版本改成1.5.2\n        methods: {\n          toInitTemolateData: function toInitTemolateData(initFillData) {\n            if (!this.data) {\n              return;\n            }\n\n            var formData = this.data;\n            var refs = this.$refs;\n\n            for (var def in formData) {\n              if (formData.hasOwnProperty(def)) {\n                var boDef = formData[def];\n\n                for (var bo in boDef) {\n                  if (boDef.hasOwnProperty(bo) && bo.indexOf('sub_') == 0) {\n                    var ref = 'hottable.' + def + '.' + bo;\n\n                    if (refs[ref]) {\n                      try {\n                        refs[ref].fillbackHotTableData(formData[def][bo], permission);\n\n                        if (initFillData) {\n                          refs[ref].initTemplateData();\n                        }\n                      } catch (error) {\n                        console.log(error);\n                      }\n                    }\n                  }\n                }\n              }\n            }\n          },\n          printDetail: function printDetail() {\n            var a = document.getElementsByName('online-form')[0].innerHTML;\n            window.print();\n\n            if (this.isPrint) {\n              this.$router.go(-1);\n            }\n\n            setTimeout(function () {\n              location.reload();\n            }, 200);\n          },\n          leaveTabVerify: function () {\n            var _leaveTabVerify = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(activeName, oldActiveName) {\n              var erritems, formElementAry, frmInst, childrens, result, curEl, msg, _i, _erritems, item, fieldLabel;\n\n              return regeneratorRuntime.wrap(function _callee$(_context) {\n                while (1) {\n                  switch (_context.prev = _context.next) {\n                    case 0:\n                      erritems = [];\n                      formElementAry = document.getElementsByName('online-form');\n                      frmInst = formElementAry[0].__vue__;\n                      childrens = frmInst.$refs.onlineForm.$refs;\n                      _context.next = 6;\n                      return frmInst.$root.$validator.validateAll('custom-form');\n\n                    case 6:\n                      result = _context.sent;\n\n                      if (!result) {\n                        curEl = childrens[oldActiveName].$el;\n                        this.$validator.errors.items.forEach(function (item) {\n                          if (curEl.contains(document.getElementsByName(item.field)[0])) {\n                            erritems.push(item);\n                          }\n                        });\n                      } //拼接提示消息\n\n\n                      msg = '';\n\n                      for (_i = 0, _erritems = erritems; _i < _erritems.length; _i++) {\n                        item = _erritems[_i];\n                        fieldLabel = '';\n\n                        if (item.field) {\n                          fieldLabel = item.field;\n                        }\n\n                        if (item.field && item.field.indexOf('-') != -1) {\n                          fieldLabel = item.field.substr(item.field.indexOf('-') + 1);\n                        }\n\n                        msg += fieldLabel + ' ' + item.msg + '<br/>';\n                      }\n\n                      if (msg) {\n                        this.$notify.error({\n                          title: this.$t('common.errTip'),\n                          dangerouslyUseHTMLString: true,\n                          message: msg\n                        });\n                        reject();\n                      }\n\n                    case 11:\n                    case \"end\":\n                      return _context.stop();\n                  }\n                }\n              }, _callee, this);\n            }));\n\n            function leaveTabVerify(_x, _x2) {\n              return _leaveTabVerify.apply(this, arguments);\n            }\n\n            return leaveTabVerify;\n          }(),\n          //子表上移\n          up: function up(index, data) {\n            if (index === 0) {\n              this.$message({\n                message: '已经是列表中第一位',\n                type: 'warning'\n              });\n            } else {\n              var temp = data[index - 1];\n              this.$parent.loadedFail = true;\n              this.$set(data, index - 1, data[index]);\n              this.$set(data, index, temp);\n              this.$parent.loadedFail = false;\n            }\n          },\n          //子表下移\n          down: function down(index, data) {\n            if (index === data.length - 1) {\n              this.$message({\n                message: '已经是列表中最后一位',\n                type: 'warning'\n              });\n            } else {\n              this.isTransition = true;\n              var i = data[index + 1];\n              this.$parent.loadedFail = true;\n              this.$set(data, index + 1, data[index]);\n              this.$set(data, index, i);\n              this.$parent.loadedFail = false;\n            }\n          },\n          //子表复制数据\n          copy: function copy(obj, item) {\n            var newOne = JSON.parse(JSON.stringify(item)); //把id置空以免走的修改方法\n\n            if (newOne.id_) {\n              delete newOne.id_;\n            }\n\n            if (newOne.sub_row_readonly) {\n              delete newOne.sub_row_readonly;\n            }\n\n            newOne.sub_guid = this.guid();\n            obj.push(newOne);\n          },\n          //子表默认值回填\n          addSubTab: function addSubTab(subTabPath) {\n            var pathArr = subTabPath.split('.');\n\n            if (pathArr.length < 3) {\n              this.$message({\n                message: '子表路径有误',\n                type: 'warning'\n              });\n            } else {\n              var subTabName = pathArr[2].replace('sub_', '');\n              var subInitData = this.data[pathArr[1]].initData[subTabName] || {}; //判断当前子表是否存有回显值\n\n              if (this.$parent.subBackfill && this.$parent.subBackfill.has(subTabPath)) {\n                //this.data[pathArr[1]][pathArr[2]].push(this.$parent.subBackfill.get(subTabPath));\n                subInitData = this.$parent.subBackfill.get(subTabPath);\n              } //把数组里面的值为 null 转换为空字符串\n\n\n              var str = JSON.stringify(subInitData).replace(/null/g, '\"\"');\n              var subData = JSON.parse(str);\n\n              for (var key in subData) {\n                //点添加时判断要新增子表记录中的孙表是否有值\n                if (key.indexOf('sub_') == 0 && subData[key].length > 0) {\n                  subData[key] = []; //有则清空\n                } // //点添加时判断要新增子表记录中的字段是否有值\n                // if(subData[key]){\n                //     subData[key] = \"\";//有则清空\n                // }\n\n              }\n\n              var fillObj = this.toFillOrg(pathArr[1] + '.' + pathArr[2], subData);\n              fillObj.sub_guid = this.guid();\n              this.data[pathArr[1]][pathArr[2]].push(fillObj);\n            }\n          },\n          guid: function guid() {\n            return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n              var r = Math.random() * 16 | 0,\n                  v = c == 'x' ? r : r & 0x3 | 0x8;\n              return v.toString(16);\n            });\n          },\n          //孙表默认值回填\n          addSunTab: function addSunTab(subTabPath, subIndex) {\n            var pathArr = subTabPath.split('.');\n\n            if (pathArr.length < 4) {\n              this.$message({\n                message: '孙表路径有误',\n                type: 'warning'\n              });\n            } else {\n              var subTabName = pathArr[2].replace('sub_', '');\n              var sunTabName = pathArr[3].replace('sub_', '');\n              var subInitData = this.data[pathArr[1]].initData[subTabName].initData[sunTabName] || {}; //判断当前孙表是否存有回显值\n\n              if (this.$parent.subBackfill && this.$parent.subBackfill.has(subTabPath)) {\n                //this.data[pathArr[1]][pathArr[2]].push(this.$parent.subBackfill.get(subTabPath));\n                subInitData = this.$parent.subBackfill.get(subTabPath);\n              } //把数组里面的值为 null 转换为空字符串\n\n\n              var str = JSON.stringify(subInitData).replace(/null/g, '\"\"');\n\n              if (!this.data[pathArr[1]][pathArr[2]][subIndex][pathArr[3]]) {\n                var key = [pathArr[3]];\n                var value = new Array();\n                this.data[pathArr[1]][pathArr[2]][subIndex][key] = value;\n              }\n\n              var sunBodata = JSON.parse(str);\n              sunBodata.sub_guid = this.guid();\n              this.data[pathArr[1]][pathArr[2]][subIndex][pathArr[3]].push(sunBodata);\n              this.$forceUpdate(); //迫使 Vue 实例重新渲染\n              // this.permission.table[sunTabName].required = \"false\";\n            }\n          },\n          addSubTableByName: function addSubTableByName(subTableName) {\n            for (var boAlias in this.data) {\n              var subInitData = this.data[boAlias].initData[subTableName] || {};\n\n              if (this.data[boAlias]['sub_' + subTableName] && this.data[boAlias]['sub_' + subTableName].length < 1) {\n                this.data[boAlias]['sub_' + subTableName].push(JSON.parse(JSON.stringify(subInitData))); // 孙表必填 默认添加一条\n\n                if (this.permission.table) {\n                  for (var tableName in this.permission.table) {\n                    if (this.permission.table[tableName].required) {\n                      if (this.data[boAlias]['sub_' + subTableName][0].hasOwnProperty('sub_' + tableName) && this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName] && this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName].length < 1) {\n                        this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName].push(JSON.parse(JSON.stringify(subInitData.initData[tableName])));\n                      } else if (this.data[boAlias]['sub_' + subTableName][0].hasOwnProperty('sub_' + tableName) && !this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName]) {\n                        this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName] = [];\n                        this.data[boAlias]['sub_' + subTableName][0]['sub_' + tableName].push(subInitData.initData[tableName]);\n                      }\n                    }\n                  }\n                }\n              }\n            }\n          },\n          deleteRow: function deleteRow(subTablePath, item) {\n            var pathArr = subTablePath.split('.');\n\n            if (pathArr.length < 2) {\n              this.$message({\n                message: '子表路径有误',\n                type: 'warning'\n              });\n            } else {\n              var subTabName = pathArr[1].replace('sub_', '');\n\n              if (this.data[pathArr[0]][pathArr[1]].length == 1 && (this.permission.table[subTabName].required == true || this.permission.table[subTabName].required == 'true')) {\n                this.$message({\n                  message: '子表必填一条记录',\n                  type: 'warning'\n                });\n                return;\n              }\n\n              this.data[pathArr[0]][pathArr[1]].remove(item);\n            }\n          },\n          deleteSunRow: function deleteSunRow(subTablePath, item, subIndex) {\n            var pathArr = subTablePath.split('.');\n\n            if (pathArr.length < 3) {\n              this.$message({\n                message: '孙表路径有误',\n                type: 'warning'\n              });\n            } else {\n              var subTabName = pathArr[1].replace('sub_', '');\n              var sunTabName = pathArr[2].replace('sub_', '');\n\n              if (this.data[pathArr[0]][pathArr[1]][subIndex][pathArr[2]].length == 1 && (this.permission.table[sunTabName].required == true || this.permission.table[subTabName].required == 'true')) {\n                this.$message({\n                  message: '孙表必填一条记录',\n                  type: 'warning'\n                });\n                return;\n              }\n\n              this.data[pathArr[0]][pathArr[1]][subIndex][pathArr[2]].remove(item);\n            }\n          },\n          clearAll: function clearAll(subTablePath, isHot, index) {\n            var pathArr = subTablePath.split('.');\n\n            if (pathArr.length < 2) {\n              this.$message({\n                message: '子表路径有误',\n                type: 'warning'\n              }); //孙表\n            } else if ((index || index === 0) && pathArr.length == 3) {\n              this.data[pathArr[0]][pathArr[1]][index][pathArr[2]].empty();\n            } else {\n              var subTabName = pathArr[1].replace('sub_', '');\n\n              if (this.data[pathArr[0]][pathArr[1]].length == 1 && (this.permission.table[subTabName].required == true || this.permission.table[subTabName].required == 'true')) {\n                this.$message({\n                  message: '子表必填一条记录',\n                  type: 'warning'\n                });\n                return;\n              }\n\n              this.data[pathArr[0]][pathArr[1]].empty();\n\n              if (isHot) {\n                var hotTableRef = 'hottable.' + subTablePath;\n                this.$refs[hotTableRef].fillbackHotTableData(null);\n              }\n            }\n          },\n          addInitTemplateData: function addInitTemplateData(subTablePath) {\n            var hotTableRef = 'hottable.' + subTablePath;\n            this.$refs[hotTableRef].toAddInitTemplateData();\n          },\n          mergeCellRefresh: function mergeCellRefresh(subTablePath) {\n            var hotTableRef = 'hottable.' + subTablePath;\n            this.$refs[hotTableRef].mergeCellRefresh();\n          },\n          execCellMathExp: function execCellMathExp(subTablePath) {\n            var hotTableRef = 'hottable.' + subTablePath;\n            this.$refs[hotTableRef].execCellMathExp();\n          },\n          execCrossMapping: function execCrossMapping(subTablePath) {\n            var hotTableRef = 'hottable.' + subTablePath;\n            this.$refs[hotTableRef].execCrossMapping();\n          },\n          getHotTableData: function getHotTableData(subTablePath) {\n            var hotTableRef = 'hottable.' + subTablePath;\n            this.$refs[hotTableRef].getHotTableData();\n          },\n          //点击分页校验按钮触发事件\n          nextStepClick: function nextStepClick(isCheck, index, way) {\n            var _this2 = this;\n\n            var childrens = this.$refs.onlineForm.$children[0].$refs;\n            var nextIndex = way == 'back' ? index - 1 : index + 1; //进入下一个页签并且需要校验当前页签。则进行校验\n\n            if (way == 'next' && isCheck == 'y') {\n              this.$validator.validateAll('custom-form').then(function (result) {\n                var curTabHasError = false;\n\n                if (!result) {\n                  var curEl = childrens['next_step_check_' + index].$el;\n\n                  _this2.$validator.errors.items.forEach(function (item) {\n                    if (curEl.contains(document.getElementsByName(item.field)[0])) {\n                      curTabHasError = true;\n                      return;\n                    }\n                  });\n                }\n\n                if (result || !curTabHasError) {\n                  childrens.el_table_check.currentName = nextIndex + '';\n                  var childrensArray = Object.getOwnPropertyNames(childrens);\n                  childrensArray.remove('collapse');\n\n                  if (index == childrensArray.length - 3 && way == 'next') {\n                    _this2.$root.$emit('startFlowBtnChange', true);\n                  }\n                }\n              });\n            } else {\n              childrens.el_table_check.currentName = nextIndex + '';\n              var childrensArray = Object.getOwnPropertyNames(childrens);\n              childrensArray.remove('collapse');\n\n              if (index == childrensArray.length - 3 && way == 'next') {\n                this.$root.$emit('startFlowBtnChange', true);\n              }\n            }\n          },\n          toFillOrg: function toFillOrg(path, row) {\n            var fillOrgConf = this.fillOrgConfMap[path];\n            var fillObj = {};\n\n            if (fillOrgConf && this.fillOrg) {\n              if (fillOrgConf.name) {\n                var namePath = fillOrgConf.name.split('.');\n                fillObj[namePath[namePath.length - 1]] = this.fillOrg.name;\n              }\n\n              if (fillOrgConf.id) {\n                var idPath = fillOrgConf.id.split('.');\n                fillObj[idPath[idPath.length - 1]] = this.fillOrg.id;\n              }\n\n              if (fillOrgConf.code) {\n                var codePath = fillOrgConf.code.split('.');\n                fillObj[codePath[codePath.length - 1]] = this.fillOrg.code;\n              }\n\n              if (fillOrgConf.instId) {\n                var instIdPath = fillOrgConf.instId.split('.');\n                fillObj[instIdPath[instIdPath.length - 1]] = this.$parent.$parent.instId ? this.$parent.$parent.instId : '';\n              }\n\n              return _objectSpread(_objectSpread({}, row), fillObj);\n            }\n\n            return row;\n          },\n          initFill: function initFill(path, conf) {\n            //收集自动回填信息\n            if (path && conf) {\n              try {\n                var confJson = this.fillOrgConfMap[path] ? this.fillOrgConfMap[path] : JSON.parse(conf);\n\n                if (confJson.id || confJson.code || confJson.name || confJson.instId) {\n                  this.fillOrgConfMap[path] = confJson;\n                  this.initFirstFill(path, confJson);\n                }\n              } catch (error) {}\n            }\n          },\n          initFirstFill: function initFirstFill(path, conf) {\n            //处理第一行的回填\n            var paths = path.split('.');\n\n            if (this.data[paths[0]][paths[1]] && this.data[paths[0]][paths[1]].length == 1 && this.fillOrg.id) {\n              if (conf.id) {\n                var idPath = conf.id.split('.');\n\n                if (!this.data[paths[0]][paths[1]][0][idPath[2]]) {\n                  this.data[paths[0]][paths[1]][0][idPath[2]] = this.fillOrg.id;\n\n                  if (conf.code) {\n                    var codePath = conf.code.split('.');\n\n                    if (!this.data[paths[0]][paths[1]][0][codePath[2]]) {\n                      this.data[paths[0]][paths[1]][0][codePath[2]] = this.fillOrg.code;\n                    }\n                  }\n\n                  if (conf.name) {\n                    var namePath = conf.name.split('.');\n\n                    if (!this.data[paths[0]][paths[1]][0][namePath[2]]) {\n                      this.data[paths[0]][paths[1]][0][namePath[2]] = this.fillOrg.name;\n                    }\n                  }\n                }\n              }\n\n              if (conf.instId) {\n                var instIdPath = conf.instId.split('.');\n\n                if (!this.data[paths[0]][paths[1]][0][instIdPath[2]]) {\n                  this.data[paths[0]][paths[1]][0][instIdPath[2]] = this.$parent.$parent.instId ? this.$parent.$parent.instId : '';\n                }\n              }\n            }\n          },\n          isShowAddButton: function isShowAddButton(path, maxRow, subIndex) {\n            if (maxRow === 0) return false;\n            var pathArr = path.split('.');\n\n            if (subIndex >= 0) {\n              if (pathArr.length < 4) {\n                this.$message({\n                  message: '子表路径有误',\n                  type: 'warning'\n                });\n              } else {\n                var data = this.data[pathArr[1]][pathArr[2]][subIndex][pathArr[3]];\n                return data.length >= maxRow;\n              }\n            } else {\n              if (pathArr.length < 3) {\n                this.$message({\n                  message: '子表路径有误',\n                  type: 'warning'\n                });\n              } else {\n                var _data = this.data[pathArr[1]][pathArr[2]];\n                return _data.length >= maxRow;\n              }\n            }\n\n            return false;\n          }\n        },\n        components: {\n          EipPagination: EipPagination,\n          EipSubPagination: EipSubPagination,\n          EipSubImportDialog: EipSubImportDialog,\n          EipSubExportDialog: EipSubExportDialog,\n          EipPaginationLayout: EipPaginationLayout,\n          EipInput: EipInput,\n          EipCheckbox: EipCheckbox,\n          EipSelect: EipSelect,\n          EipUserSelector: EipUserSelector,\n          EipDemensionSelector: EipDemensionSelector,\n          EipJobSelector: EipJobSelector,\n          EipOrgSelector: EipOrgSelector,\n          EipPostSelector: EipPostSelector,\n          EipRoleSelector: EipRoleSelector,\n          EipRadio: EipRadio,\n          EipTextarea: EipTextarea,\n          EipFont: EipFont,\n          EipDialog: EipDialog,\n          EipButton: EipButton,\n          EipDate: EipDate,\n          EipImg: EipImg,\n          EipViewer: EipViewer,\n          EipSwitch: EipSwitch,\n          HtFile: HtFile,\n          VRuntimeTemplate: VRuntimeTemplate,\n          HtGangedSelect: HtGangedSelect,\n          EipRelFlow: EipRelFlow,\n          EipSubDialog: EipSubDialog,\n          HtLabel: HtLabel,\n          HtDigital: HtDigital,\n          HtCurrency: HtCurrency,\n          EipRealtimeInput: EipRealtimeInput,\n          EipRealtimeTextarea: EipRealtimeTextarea,\n          EipStep: EipStep,\n          HtInputAutocomplete: HtInputAutocomplete,\n          HtTreeselect: HtTreeselect,\n          HtCascader: HtCascader,\n          HtTree: HtTree,\n          EipAttachment: EipAttachment,\n          EipDic: EipDic,\n          EipAutocomplete: EipAutocomplete,\n          EipCascader: EipCascader,\n          EipTreeselect: EipTreeselect,\n          EipCollapse: EipCollapse,\n          EipPaginationSteps: EipPaginationSteps,\n          EipMap: EipMap,\n          EipDataView: EipDataView,\n          EipSunDialog: EipSunDialog,\n          EipTag: EipTag,\n          EipHotTable: EipHotTable,\n          EipHotSubDialog: EipHotSubDialog,\n          ContractPreview: ContractPreview,\n          EipSubtableBackfill: EipSubtableBackfill,\n          EipDivider: EipDivider,\n          EipOffice: EipOffice,\n          EipQrcode: EipQrcode,\n          EipSignature: EipSignature,\n          EipTabs: EipTabs,\n          EipFontUeditor: EipFontUeditor\n        }\n      });\n    }\n  }\n};",null]}