{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\system\\generator\\sysModuleCreate.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\system\\generator\\sysModuleCreate.vue","mtime":1675071993225},{"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//\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//\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//\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//\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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport utils from \"@/hotent-ui-util.js\";\r\nimport req from \"@/request.js\";\r\nconst EipSysTypeSelector = () =>\r\n  import(\"@/components/selector/EipSysTypeSelector.vue\");\r\nconst EipFormDialog = () => import(\"@/components/dialog/EipFormDialog.vue\");\r\nconst eipFlowDialog = () => import(\"@/components/dialog/EipFlowDialog.vue\");\r\nconst EipChartDialog = () => import(\"@/components/dialog/EipChartDialog.vue\");\r\nconst EipDataTemplateDialog = () =>\r\n  import(\"@/components/dialog/EipDataTemplateDialog.vue\");\r\nconst businessObjDialog = () => import(\"@/views/form/BusinessObjDialog.vue\");\r\nconst sysModuleAddMenus = () =>\r\n  import(\"@/views/system/generator/sysModuleAddMenus.vue\");\r\nexport default {\r\n  name: \"sysModuleCreate\",\r\n  components: {\r\n    EipSysTypeSelector,\r\n    EipFormDialog,\r\n    eipFlowDialog,\r\n    EipChartDialog,\r\n    EipDataTemplateDialog,\r\n    businessObjDialog,\r\n    sysModuleAddMenus\r\n  },\r\n  props: [\"id\", \"moduleEditorDialogVisible\"],\r\n  data() {\r\n    return {\r\n      ids: this.id,\r\n      isSubmit: false,\r\n      style: { overflowY: \"auto\", height: \"500px\" },\r\n      divStyle: {\r\n        margin: \"0 12%\",\r\n        background: \"rgba(237, 237, 237, 1)\",\r\n        height: \"500px\"\r\n      },\r\n      workspaceList: [],\r\n      chartList: [],\r\n      datalistList: [],\r\n      moduleName: \"\",\r\n      otherTypeArr: [],\r\n      workspaceSelectList: [\r\n        {\r\n          key: \"todo\",\r\n          value: \"待办事项\"\r\n        },\r\n        {\r\n          key: \"done\",\r\n          value: \"已办事项\"\r\n        },\r\n        {\r\n          key: \"request\",\r\n          value: \"我的请求\"\r\n        },\r\n        {\r\n          key: \"newProcess\",\r\n          value: \"新建流程\"\r\n        },\r\n        {\r\n          key: \"todoRead\",\r\n          value: \"待阅事项\"\r\n        },\r\n        {\r\n          key: \"doneRead\",\r\n          value: \"已阅事项\"\r\n        },\r\n        {\r\n          key: \"myRead\",\r\n          value: \"我传阅的\"\r\n        },\r\n        {\r\n          key: \"myDelegate\",\r\n          value: \"我转办的\"\r\n        }\r\n      ],\r\n      active: 1,\r\n      list: [\r\n        { key: \"workspace\", value: \"工作空间\" },\r\n        { key: \"datalist\", value: \"数据列表\" },\r\n        { key: \"viewlist\", value: \"视图列表\" },\r\n        { key: \"chart\", value: \"图表\" },\r\n        { key: \"other\", value: \"栏目\" }\r\n      ],\r\n      data: {\r\n        id: \"\",\r\n        name: \"\",\r\n        relName: \"\",\r\n        relCode: \"\",\r\n        code: \"\",\r\n        menu: \"\",\r\n        reportName: \"\"\r\n      },\r\n      curSelectForm: {},\r\n      moduleTypeCreateTab: {},\r\n      moduleTypeTab: {},\r\n      moduleTypeForm: {},\r\n      moduleTypeFlow: {},\r\n      flowSvg: require(\"@/assets/img/flow.svg\"),\r\n      formSvg: require(\"@/assets/img/form.svg\")\r\n    };\r\n  },\r\n  computed: {\r\n    menuList: function() {\r\n      if (this.data.type == \"flow\") {\r\n        return this.list.filter(item => item.key != \"viewlist\");\r\n      } else if (this.data.type == \"table\") {\r\n        return this.list.filter(\r\n          item => item.key != \"workspace\" && item.key != \"datalist\"\r\n        );\r\n      } else if (this.data.type != \"table\") {\r\n        return this.list.filter(\r\n          item => item.key != \"workspace\" && item.key != \"viewlist\"\r\n        );\r\n      }\r\n      return this.list;\r\n    }\r\n  },\r\n  watch: {\r\n    id(newV) {\r\n      if (newV) {\r\n        this.active = 2;\r\n        var url =\r\n          window.context.portal + \"/sys/sysModule/v1/getJson?id=\" + newV;\r\n        req.get(url).then(response => {\r\n          this.data = response.data;\r\n          this.initList(this.data);\r\n        });\r\n      }\r\n    }\r\n  },\r\n  mounted() {\r\n    var height = window.screen.availHeight * 0.68 - 70 + \"px\";\r\n    this.style.height = height;\r\n    this.divStyle.height = height;\r\n    this.$validator = this.$root.$validator;\r\n    if (this.id) {\r\n      this.active = 2;\r\n      var url =\r\n        window.context.portal + \"/sys/sysModule/v1/getJson?id=\" + this.id;\r\n      req.get(url).then(response => {\r\n        this.data = response.data;\r\n        this.initList(this.data);\r\n        return this;\r\n      });\r\n    }\r\n  },\r\n  methods: {\r\n    closeBusinessObjDialog() {\r\n      this.$emit(\"close-dialog\");\r\n    },\r\n    initList(data) {\r\n      if (data.moduleDetail && data.moduleDetail.length > 0) {\r\n        var workspaceList = [];\r\n        var datalistList = [];\r\n        var viewlistList = [];\r\n        var chartList = [];\r\n        var otherTypeArr = [];\r\n        var otherTypeMap = {};\r\n        for (var i = 0; i < data.moduleDetail.length; i++) {\r\n          var type = data.moduleDetail[i].type;\r\n          switch (type) {\r\n            case \"workspace\":\r\n              workspaceList.push(data.moduleDetail[i]);\r\n              break;\r\n            case \"datalist\":\r\n              datalistList.push(data.moduleDetail[i]);\r\n              break;\r\n            case \"viewlist\":\r\n              viewlistList.push(data.moduleDetail[i]);\r\n              break;\r\n            case \"chart\":\r\n              chartList.push(data.moduleDetail[i]);\r\n              break;\r\n            case \"other\":\r\n              var item = data.moduleDetail[i];\r\n              if (!otherTypeMap[item.columnName]) {\r\n                otherTypeMap[item.columnName] = {\r\n                  name: item.columnName,\r\n                  otherList: []\r\n                };\r\n              }\r\n              otherTypeMap[item.columnName].otherList.push(item);\r\n              break;\r\n          }\r\n        }\r\n        this.workspaceList = workspaceList;\r\n        this.datalistList = datalistList;\r\n        this.viewlistList = viewlistList;\r\n        this.chartList = chartList;\r\n        if (otherTypeMap) {\r\n          for (var key in otherTypeMap) {\r\n            otherTypeArr.push(otherTypeMap[key]);\r\n          }\r\n        }\r\n        this.otherTypeArr = otherTypeArr;\r\n      }\r\n      setTimeout(() => {\r\n        this.$validator.validate();\r\n      }, 100);\r\n    },\r\n    move(name, ary, item, direct) {\r\n      this[name] = utils.arrayMove(ary, item, direct);\r\n    },\r\n    moveTo(index, ary, item, direct) {\r\n      this.otherTypeArr[index].otherList = utils.arrayMove(ary, item, direct);\r\n    },\r\n    getUrl(code) {\r\n      let item = {};\r\n      switch (code) {\r\n        case \"todo\":\r\n          item.url = \"/v-flow/v-todo/\" + this.data.relCode;\r\n          item.name = \"待办事项\";\r\n          break;\r\n        case \"done\":\r\n          item.url = \"/v-flow/v-done/\" + this.data.relCode;\r\n          item.name = \"已办事项\";\r\n          break;\r\n        case \"request\":\r\n          item.url = \"/v-flow/v-request/\" + this.data.relCode;\r\n          item.name = \"我的请求\";\r\n          break;\r\n        case \"todoRead\":\r\n          item.url = \"/v-flow/v-todoRead/\" + this.data.relCode;\r\n          item.name = \"待阅事项\";\r\n          break;\r\n        case \"doneRead\":\r\n          item.url = \"/v-flow/v-doneRead/\" + this.data.relCode;\r\n          item.name = \"已阅事项\";\r\n          break;\r\n        case \"myRead\":\r\n          item.url = \"/v-flow/v-myRead/\" + this.data.relCode;\r\n          item.name = \"我传阅的\";\r\n          break;\r\n        case \"myDelegate\":\r\n          item.url = \"/v-flow/v-myDelegate/\" + this.data.relCode;\r\n          item.name = \"我转办的\";\r\n          break;\r\n        case \"newProcess\":\r\n          item.url = \"/agentStartByKey/\" + this.data.relCode;\r\n          item.name = \"发起\" + this.data.relName;\r\n          break;\r\n      }\r\n      return item;\r\n    },\r\n    workspaceChangeType(code, index) {\r\n      var data = this.getUrl(code);\r\n      this.workspaceList[index].url = data.url;\r\n      this.workspaceList[index].name = data.name;\r\n    },\r\n    changeshowType(value, index) {\r\n      if (value == \"flow\") {\r\n        var data = this.getUrl(this.workspaceList[index].code);\r\n        this.workspaceList[index].url = data.url;\r\n      } else {\r\n        this.workspaceList[index].url =\r\n          \"/statement/template/preview/\" +\r\n          this.data.reportAlias +\r\n          \"/\" +\r\n          this.workspaceList[index].code +\r\n          \"/\" +\r\n          this.data.relCode +\r\n          \"/\" +\r\n          true;\r\n      }\r\n    },\r\n    initStyle() {\r\n      this.moduleTypeCreateTab = {};\r\n      this.moduleTypeTab = {};\r\n      this.moduleTypeForm = {};\r\n      this.moduleTypeFlow = {};\r\n    },\r\n    selectModuleType(type) {\r\n      this.initStyle();\r\n      switch (type) {\r\n        case \"createTable\":\r\n          this.$refs.objDialog.handleOpen();\r\n          break;\r\n        case \"table\":\r\n          this.data.menu = \"viewlist,chart,other\";\r\n          break;\r\n        case \"form\":\r\n          this.data.menu = \"datalist,chart,other\";\r\n          break;\r\n        case \"flow\":\r\n          this.data.menu = \"workspace,chart,other\";\r\n          break;\r\n      }\r\n      this.data.type = type;\r\n      this.next();\r\n    },\r\n    next() {\r\n      if (this.active == 1 && this.data.type == undefined) {\r\n        this.$message.error(\"请选择模块类型！\");\r\n        return;\r\n      }\r\n      if (this.active === 2) {\r\n        this.$validator.validateAll(\"sysModuleForm\").then(result => {\r\n          if (result) {\r\n            this.active++;\r\n          } else {\r\n            this.$message.error(\"表单未正确填写\");\r\n          }\r\n        });\r\n      } else {\r\n        this.active++;\r\n      }\r\n    },\r\n    step() {\r\n      this.active--;\r\n    },\r\n    selectForm() {\r\n      this.$refs.eipFormDialog.showDialog();\r\n    },\r\n    selectFlow() {\r\n      this.$refs.eipFlowDialog.showDialog();\r\n    },\r\n    dialogFormConfirm(data) {\r\n      if (data && data.length > 0) {\r\n        this.$nextTick(() => {\r\n          this.data.relCode = data[0].formKey;\r\n          this.data.relName = data[0].name;\r\n        });\r\n      } else {\r\n        this.clearForm();\r\n      }\r\n    },\r\n    dialogFlowConfirm(data) {\r\n      if (data && data.length > 0) {\r\n        this.$nextTick(() => {\r\n          this.data.relCode = data[0].defKey;\r\n          this.data.relName = data[0].name;\r\n        });\r\n      } else {\r\n        this.clearForm();\r\n      }\r\n    },\r\n    clearForm() {\r\n      this.$nextTick(() => {\r\n        this.data.relCode = \"\";\r\n        this.data.relName = \"\";\r\n      });\r\n    },\r\n    addWorkspace() {\r\n      this.workspaceList.push({\r\n        code: \"\",\r\n        name: \"\",\r\n        url: \"\",\r\n        type: \"workspace\",\r\n        showType: \"flow\"\r\n      });\r\n    },\r\n\r\n    showChartDialog() {\r\n      this.$refs.chartDialog.showDialog();\r\n    },\r\n    showDataTemplateDialog(type) {\r\n      if (type == \"flow\") {\r\n        this.$refs.dataTemplateDialog.showDialog();\r\n      } else {\r\n        this.$refs.dataReportDialog.showDialog();\r\n      }\r\n    },\r\n    onChartConfirm(selectedNode) {\r\n      if (selectedNode && selectedNode.length > 0) {\r\n        selectedNode.forEach(m => {\r\n          this.chartList.push({\r\n            name: m.name,\r\n            code: m.alias,\r\n            chartType: m.style + \"\",\r\n            type: \"chart\",\r\n            url: m.id\r\n          });\r\n        });\r\n      }\r\n      this.$refs.chartDialog.handleClose();\r\n    },\r\n\r\n    onDataReportConfirm(selectedNode) {\r\n      if (selectedNode && selectedNode.length > 0) {\r\n        selectedNode.forEach(item => {\r\n          var url = \"/statement/template/preview/\" + item.alias + \"/true\";\r\n          var temp = {\r\n            type: \"datalist\",\r\n            name: item.name,\r\n            code: item.alias,\r\n            viewCode: item.boDefAlias,\r\n            chartType: item.typeName,\r\n            url: url\r\n          };\r\n          this.datalistList.push(temp);\r\n        });\r\n      }\r\n    },\r\n    onDataTemplateConfirm(selectedNode) {\r\n      if (selectedNode && selectedNode.length > 0) {\r\n        this.$nextTick(() => {\r\n          this.data.reportName = selectedNode[0].name;\r\n          this.data.reportAlias = selectedNode[0].alias;\r\n        });\r\n      } else {\r\n        if (this.data.type == \"flow\") {\r\n          this.data.reportName = \"\";\r\n          this.data.reportAlias = \"\";\r\n        }\r\n      }\r\n    },\r\n    addOtherType() {\r\n      this.otherTypeArr.push({ name: \"\", otherList: [] });\r\n    },\r\n    getDtailList() {\r\n      var detailList = [];\r\n\r\n      if (\r\n        this.workspaceList.length > 0 &&\r\n        this.data.menu.indexOf(\"workspace\") != -1\r\n      ) {\r\n        this.workspaceList.forEach(item => {\r\n          detailList.push(item);\r\n        });\r\n      }\r\n      if (\r\n        this.datalistList.length > 0 &&\r\n        this.data.menu.indexOf(\"datalist\") != -1\r\n      ) {\r\n        this.datalistList.forEach(item => {\r\n          detailList.push(item);\r\n        });\r\n      }\r\n\r\n      if (this.chartList.length > 0 && this.data.menu.indexOf(\"chart\") != -1) {\r\n        this.chartList.forEach(item => {\r\n          detailList.push(item);\r\n        });\r\n      }\r\n\r\n      if (\r\n        this.otherTypeArr.length > 0 &&\r\n        this.data.menu.indexOf(\"other\") != -1\r\n      ) {\r\n        this.otherTypeArr.forEach(item => {\r\n          var typeName = item.name;\r\n          var otherList = item.otherList;\r\n          otherList.forEach(m => {\r\n            m.columnName = typeName;\r\n            detailList.push(m);\r\n          });\r\n        });\r\n      }\r\n      return detailList;\r\n    },\r\n    stepToSave() {\r\n      this.isSubmit = true;\r\n      var url = window.context.portal + \"/sys/sysModule/v1/saveModule\";\r\n      this.$validator.validateAll(\"modelForm\").then(result => {\r\n        if (!result) {\r\n          this.$message.error(\"表单未正确填写\");\r\n          this.isSubmit = false;\r\n        } else {\r\n          //todo 保存表单信息\r\n          this.data.moduleDetail = this.getDtailList();\r\n          req.post(url, this.data).then(response => {\r\n            if (response.data.state) {\r\n              this.$message.success(response.data.message);\r\n              setInterval(() => {\r\n                this.$emit(\"close-dialog\");\r\n              }, 2000);\r\n            } else {\r\n              this.$message.error(response.data.message);\r\n            }\r\n          });\r\n        }\r\n      });\r\n    },\r\n    modulePush() {\r\n      this.isSubmit = true;\r\n      var url = window.context.portal + \"/sys/sysModule/v1/saveModule\";\r\n      this.$validator.validateAll(\"modelForm\").then(result => {\r\n        if (!result) {\r\n          this.$message.error(\"表单未正确填写\");\r\n          this.isSubmit = false;\r\n        } else {\r\n          this.data.moduleDetail = this.getDtailList();\r\n          req.post(url, this.data).then(response => {\r\n            if (response.data.state) {\r\n              this.isSubmit = false;\r\n              this.data.id = response.data.value;\r\n              this.moduleName = this.data.name\r\n              this.$refs.sysModuleAddMenus.showDialog(response.data.value);\r\n            } else {\r\n              this.isSubmit = false;\r\n              this.$message.error(response.data.message);\r\n            }\r\n          });\r\n        }\r\n      });\r\n    },\r\n    addMenusClose() {\r\n      setInterval(() => {\r\n        this.$emit(\"close-dialog\");\r\n      }, 2000);\r\n    }\r\n  }\r\n};\r\n",null]}