{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\dataTemplate\\FilterFiledSetting.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\dataTemplate\\FilterFiledSetting.vue","mtime":1675071992131},{"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":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nconst EipDataTemplateDialog = () =>\r\n  import(\"@/components/dialog/EipDataTemplateDialog.vue\");\r\n\r\nexport default {\r\n  components: {\r\n    EipDataTemplateDialog\r\n  },\r\n  name: \"filterFiled-setting\",\r\n  props: [\"data\"],\r\n  data() {\r\n    return {\r\n      reportName: \"\",\r\n      conditionField: [],\r\n      dataTemplate: {},\r\n      displaySettingFields: [],\r\n      filteringField: [],\r\n      permissionMap: {},\r\n      permissionList: [],\r\n      rightList: [\r\n        { key: \"\", value: \"请选择\" },\r\n        { key: \"none\", value: \"无\" },\r\n        { key: \"everyone\", value: \"所有人\" }\r\n      ],\r\n      tabHeight: `${document.documentElement.clientHeight}` - 245,\r\n      currentAuthRow: null,\r\n      settingVisible: false,\r\n      formRow: [],\r\n      selectedRow: [],\r\n      formFieldList: [],\r\n      urlParams: []\r\n    };\r\n  },\r\n  mounted() {\r\n    this.dataTemplate = this.data.bpmDataTemplate;\r\n    if (this.data.displaySettingFields) {\r\n      this.displaySettingFields = JSON.parse(this.data.displaySettingFields);\r\n      this.displaySettingFields = this.displaySettingFields.filter(item => {\r\n        if (item.type==='date' || item.type==='clob'){\r\n          return false;\r\n        }else {\r\n          return true;\r\n        }\r\n      });\r\n    }\r\n    this.templates = this.data.templates;\r\n    this.permissionMap = this.data.permissionList;\r\n    this.initData();\r\n  },\r\n  methods: {\r\n    dialogOk() {\r\n      for(let i=0; i<this.selectedRow.formatterData.length; i++){\r\n        if(!this.selectedRow.formatterData[i].value || !this.selectedRow.formatterData[i].text){\r\n          this.$message.warning(\"第\"+(i+1)+\"行值、标签为空！\");\r\n          return false;\r\n        }\r\n      }\r\n      var conditionField = this.conditionField;\r\n      this.selectedRow.parameter = [];\r\n      conditionField.forEach(item => {\r\n        this.selectedRow.parameter.push({\r\n          property: item.key,\r\n          value: item.parameter,\r\n          group: \"main\",\r\n          operation: item.qt,\r\n          relation: \"AND\"\r\n        });\r\n      });\r\n      if (this.selectedRow.urlType == \"url\" && this.urlParams) {\r\n        this.selectedRow.urlParams = [...this.urlParams];\r\n        this.urlParams = [];\r\n      }\r\n      //this.formRow.formatterData = this.selectedRow.formatterData;\r\n      this.$set(this.formRow,\"formatterData\",this.selectedRow.formatterData)\r\n      this.formRow.parameter = this.selectedRow.parameter;\r\n      if(this.selectedRow.urlParams) {\r\n        this.formRow.urlParams = this.selectedRow.urlParams;\r\n      }\r\n      this.settingVisible = false;\r\n    },\r\n    onDataTemplateConfirm(selectedNode) {\r\n      if (selectedNode && selectedNode.length > 0) {\r\n        this.$nextTick(() => {\r\n          this.conditionField = [];\r\n          var conditionField = JSON.parse(selectedNode[0].conditionField);\r\n          conditionField.forEach(item => {\r\n            var obj = {\r\n              key: item.colPrefix + item.name,\r\n              parameter: \"\",\r\n              qt: item.qt,\r\n              value: item.cm\r\n            };\r\n            this.conditionField.push(obj);\r\n          });\r\n          this.reportName = selectedNode[0].name;\r\n          this.selectedRow.reportNameConfigure = {\r\n            alias: selectedNode[0].alias,\r\n            reportName: selectedNode[0].name,\r\n            conditionField: this.conditionField\r\n          };\r\n        });\r\n      } else {\r\n        this.reportName = \"\";\r\n        this.conditionField = [];\r\n        this.selectedRow.reportNameConfigure = {};\r\n      }\r\n    },\r\n    //保存显示列数据\r\n    saveFilteringField() {\r\n      this.dataTemplate.filteringField = this.filteringField\r\n        ? JSON.stringify(this.filteringField)\r\n        : null;\r\n    },\r\n    //初始化处理\r\n    initData() {\r\n      if (this.dataTemplate.filteringField) {\r\n        this.filteringField = JSON.parse(this.dataTemplate.filteringField);\r\n      }\r\n\r\n      if (this.dataTemplate.formField) {\r\n        this.formFieldList = [];\r\n        const formFieldList = JSON.parse(this.dataTemplate.formField);\r\n        let fieldMap = {};\r\n        let _this = this;\r\n        formFieldList.forEach(ffield => {\r\n          if (!fieldMap[ffield.name]) {\r\n            _this.formFieldList.push(ffield);\r\n            fieldMap[ffield.name] = true;\r\n          }\r\n        });\r\n      }\r\n    },\r\n    showDataTemplateDialog() {\r\n      this.$refs.dataTemplateDialog.showDialog();\r\n    },\r\n    columnFilter(type) {\r\n      return type != \"sub\" && type != \"tabs\";\r\n    },\r\n    //双击字段列表中的字段时将该字段加入到显示字段\r\n    fillToDisplay(row, event, column) {\r\n      let isIn = this.isInDisplayFields(row.name);\r\n      if (!isIn) {\r\n        this.filteringField.push(row);\r\n      }\r\n    },\r\n    //将字段列表中的已选字段加入到显示字段列表\r\n    allFillToDisplay() {\r\n      let selectrows = this.$refs.displaySettingTable.store.states.selection;\r\n      if (!selectrows || selectrows.length < 1) {\r\n        this.$message({\r\n          message: \"请在左侧列表中选择要显示的字段\",\r\n          type: \"warning\"\r\n        });\r\n      }\r\n      selectrows.forEach(obj => {\r\n        if (!this.isInDisplayFields(obj.name)) {\r\n          this.filteringField.push(obj);\r\n        }\r\n      });\r\n    },\r\n    //打开设置权限\r\n    setFieldRightDialog(row) {\r\n      let conf = {\r\n        right: JSON.parse(row.right),\r\n        permissionList: this.permissionList\r\n      };\r\n      this.currentAuthRow = row;\r\n      this.$refs.eipAuthDialog.showDialog(conf);\r\n    },\r\n    //设置权限\r\n    authDialogOnConfirm(data) {\r\n      if (this.currentAuthRow) {\r\n        this.currentAuthRow.right = JSON.stringify(data);\r\n      }\r\n    },\r\n    //显示字段排序\r\n    sort(index, type) {\r\n      if (\"up\" == type) {\r\n        if (index === 0) {\r\n          this.$message({\r\n            message: \"已经是列表中第一位\",\r\n            type: \"warning\"\r\n          });\r\n        } else {\r\n          let temp = this.filteringField[index - 1];\r\n          this.$set(this.filteringField, index - 1, this.filteringField[index]);\r\n          this.$set(this.filteringField, index, temp);\r\n        }\r\n      } else {\r\n        if (index === this.filteringField.length - 1) {\r\n          this.$message({\r\n            message: \"已经是列表中最后一位\",\r\n            type: \"warning\"\r\n          });\r\n        } else {\r\n          let i = this.filteringField[index + 1];\r\n          this.$set(this.filteringField, index + 1, this.filteringField[index]);\r\n          this.$set(this.filteringField, index, i);\r\n        }\r\n      }\r\n    },\r\n\r\n    //删除显示字段\r\n    remove(index) {\r\n      this.filteringField.splice(index, 1);\r\n    },\r\n    //判断字段是否已在显示字段列表中\r\n    isInDisplayFields(name) {\r\n      let isIn = false;\r\n      if (this.filteringField && this.filteringField.length > 0) {\r\n        this.filteringField.forEach(obj => {\r\n          if (obj.name == name) {\r\n            isIn = true;\r\n            return;\r\n          }\r\n        });\r\n      }\r\n      return isIn;\r\n    },\r\n\r\n    setting(row) {\r\n      this.settingVisible = true;\r\n      this.formRow = row;\r\n      this.selectedRow = JSON.parse(JSON.stringify(this.formRow));\r\n      if (this.selectedRow.reportNameConfigure) {\r\n        this.reportName = this.selectedRow.reportNameConfigure.reportName;\r\n        this.conditionField =\r\n          this.selectedRow.reportNameConfigure.conditionField == undefined\r\n            ? []\r\n            : this.selectedRow.reportNameConfigure.conditionField;\r\n      }\r\n\r\n      if (!this.selectedRow.formatterData) {\r\n        this.selectedRow.formatterData = [];\r\n      }\r\n      if (\r\n        this.selectedRow.urlType == \"url\" &&\r\n        this.selectedRow.urlParams &&\r\n        this.selectedRow.urlParams.length > 0\r\n      ) {\r\n        this.urlParams = [...this.selectedRow.urlParams];\r\n      }\r\n    },\r\n    addSetting() {\r\n      this.selectedRow.formatterData.push({\r\n        key: \"\",\r\n        value: \"\"\r\n      });\r\n    },\r\n    removeSetting(index) {\r\n      this.selectedRow.formatterData.splice(index, 1);\r\n    },\r\n    cancelSetting() {\r\n      this.handleDialogClose();\r\n    },\r\n    urlParamsAdd() {\r\n      this.urlParams.push({ name: \"\", field: \"\" });\r\n    },\r\n    urlParamsRemove(item) {\r\n      this.urlParams.remove(item);\r\n    },\r\n    handleDialogClose() {\r\n      this.settingVisible = false;\r\n    },\r\n  }\r\n};\r\n",null]}