{"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\\form\\BusinessObj.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\form\\BusinessObj.vue","mtime":1675071992881},{"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\r\nimport form from \"@/api/form.js\";\r\n\r\nconst businessObjDialog = () => import(\"@/views/form/BusinessObjDialog.vue\");\r\nconst htAsideTree = () => import(\"@/components/common/HtAsideTree.vue\");\r\nimport FormTemplateDialog from \"@/components/dialog/FormTemplateDialog.vue\";\r\nconst eipSysTypeDialog = () =>\r\n  import(\"@/components/dialog/EipSysTypeDialog.vue\");\r\nexport default {\r\n  components: {\r\n    businessObjDialog,\r\n    htAsideTree,\r\n    eipSysTypeDialog,\r\n    FormTemplateDialog,\r\n  },\r\n  data() {\r\n    return {\r\n      selectTypeIds: \"\",\r\n      selectTypeName: \"\",\r\n      currentRow: null, // 当前选中的数据行\r\n      dataView: { id: \"\", type: \"\" },\r\n      dialogVisible: false,\r\n      dialogVisible2: false,\r\n      tableData: [], //表格\r\n      updateTableData: [], //修改分类数据\r\n      deployedId: \"\",\r\n      dataformation: \"\", //数据视图\r\n      pageResult: {\r\n        page: 1,\r\n        pageSize: 20,\r\n        total: 0,\r\n      },\r\n      bindData: \"\",\r\n      clickTree: { id: \"\", name: \"\" },\r\n      formData: {\r\n        //表单\r\n        alias: \"\",\r\n        categoryId: \"\",\r\n        categoryName: \"\",\r\n        deployed: 0,\r\n        description: \"\",\r\n        dsName: \"\",\r\n        isCreateTable: \"\",\r\n        isExternal: \"\",\r\n        status: \"normal\",\r\n        supportDb: true,\r\n        ents: [],\r\n      },\r\n    };\r\n  },\r\n  computed: {\r\n    formDeleteUrl: function () {\r\n      return `${window.context.form}/bo/def/v1/removes`;\r\n    },\r\n  },\r\n  methods: {\r\n    //鼠标选中行改变复选框\r\n    rowClick(row, column, event) {\r\n      this.$refs.htTable.$refs.htTable.toggleRowSelection(row);\r\n    },\r\n    //获取建模id\r\n    opretaId(id) {\r\n      this.openBusinessObjDialog(\"edit\", id);\r\n    },\r\n    //关闭绑定关系\r\n    closeBindDialog() {\r\n      this.dialogVisible2 = false;\r\n    },\r\n    //表格选中数据\r\n    tableSelect(selection) {\r\n      this.updateTableData = selection;\r\n    },\r\n    //表格操作\r\n    showFormDialog(param) {\r\n      switch (param.command) {\r\n        case \"edit\":\r\n          this.openBusinessObjDialog(\"edit\", param.row.id);\r\n          break;\r\n        case \"deployed\":\r\n          this.deployedId = param.row.id;\r\n          this.deploy(param.row);\r\n          break;\r\n        case \"formation\":\r\n          this.getFormation(param);\r\n          break;\r\n        case \"normal\":\r\n          this.updateStatus(param, \"forbidden\");\r\n          break;\r\n        case \"forbidden\":\r\n          this.updateStatus(param, \"normal\");\r\n          break;\r\n        case \"bind\":\r\n          this.openBind(param);\r\n          break;\r\n      }\r\n    },\r\n    openBind(param) {\r\n      this.dialogVisible2 = true;\r\n      this.getBingData(param);\r\n    },\r\n    //获取绑定数据\r\n    getBingData(param) {\r\n      form.getBindData(param.row.id, param.row.alias).then((resp) => {\r\n        this.bindData = resp.data;\r\n      });\r\n    },\r\n    //表单对话框\r\n    openBusinessObjDialog(status, id, entId) {\r\n      this.dataView.type = status;\r\n      this.dataView.id = id;\r\n      if (entId) {\r\n        for (let i = 0; i < this.bindData.entData.length; i++) {\r\n          if (entId == this.bindData.entData[i].id_) {\r\n            this.dataView.entIndex = i;\r\n            this.dialogVisible2 = false;\r\n          }\r\n        }\r\n      }\r\n      this.getFormData();\r\n    },\r\n    //数据视图对话框\r\n    getFormation(param) {\r\n      this.dialogVisible = true;\r\n      form.getDataformation(param.row.alias, (data) => {\r\n        this.dataformation = data.data;\r\n      });\r\n    },\r\n    //关闭数据视图\r\n    handleClose() {\r\n      this.dialogVisible = false;\r\n      this.dialogVisible2 = false;\r\n      this.$refs.htTable.load();\r\n      this.bindData = \"\";\r\n    },\r\n    //设置状态\r\n    updateStatus(param, status) {\r\n      form.updateBusinessObjStatus(param.row.id, status).then((resp) => {\r\n        if (resp.data.state == true) {\r\n          this.$message({ message: resp.data.message, type: \"success\" });\r\n          this.loadTableData();\r\n          return;\r\n        }\r\n        this.$message(resp.message);\r\n      });\r\n    },\r\n    //通过分类树筛选数据\r\n    handleNodeClick: function (data) {\r\n      if (data && data.id != \"9\") {\r\n        this.clickTree.id = data.id;\r\n        this.clickTree.name = data.name;\r\n        this.selectTypeName = data.name;\r\n        this.$refs.htTable.quickSearch();\r\n      } else {\r\n        if(data){\r\n          this.selectTypeName = data.name;\r\n        }\r\n        this.$refs.htTable.load();\r\n      }\r\n    },\r\n    //加载列表\r\n    loadTableData: function (param, cb) {\r\n      let pageInfo = {\r\n        pageBean: {\r\n          page: 1,\r\n          pageSize: 20,\r\n          showTotal: true,\r\n        },\r\n        sorter: [{ direction: \"DESC\", property: \"createTime\" }],\r\n      };\r\n      if (this.selectTypeName && this.selectTypeName!=\"建模分类\") {\r\n        if (!param.querys) {\r\n          param.querys = []\r\n        }\r\n        if (param.querys) {\r\n          // 标记是否有选择分类\r\n          let hasCategoryName = false;\r\n          param.querys.forEach(query => {\r\n            if (query.property == \"categoryName\") {\r\n              hasCategoryName = true;\r\n              query.value = this.selectTypeName;\r\n            }\r\n          })\r\n          if (!hasCategoryName) {\r\n            param.querys.push({\r\n              property: \"categoryName\",\r\n              value: this.selectTypeName,\r\n              group: \"main\",\r\n              operation: \"EQUAL\",\r\n              relation: \"AND\",\r\n            })\r\n          }\r\n        }\r\n      }\r\n      if (param == undefined) {\r\n        form\r\n          .getBusinessObjData(pageInfo)\r\n          .then((resp) => {\r\n            this.tableData = resp.rows;\r\n            this.pageResult = {\r\n              page: resp.page,\r\n              pageSize: resp.pageSize,\r\n              total: resp.total,\r\n            };\r\n          })\r\n          .finally(() => cb && cb());\r\n      } else {\r\n        form\r\n          .getBusinessObjData(param)\r\n          .then((resp) => {\r\n            this.tableData = resp.rows;\r\n            this.pageResult = {\r\n              page: resp.page,\r\n              pageSize: resp.pageSize,\r\n              total: resp.total,\r\n            };\r\n          })\r\n          .finally(() => cb && cb());\r\n      }\r\n    },\r\n\r\n    //表单对话框\r\n    handleOpen() {\r\n      this.$refs.objDialog.handleOpen();\r\n    },\r\n    //表单数据加载\r\n    getFormData() {\r\n      if (this.dataView.id) {\r\n        form.getEntData(this.dataView.id, (resp) => {\r\n          resp.data.ents.forEach((entData, index) => {\r\n            if (entData.isExternal == \"1\" && index == 0) {\r\n              entData.show = \"主实体-外\";\r\n            } else if (entData.isExternal == \"1\") {\r\n              entData.show = \"子实体-外\";\r\n            }\r\n            if (index === 0) {\r\n              entData.isCheck = true;\r\n            }\r\n            if (entData.children) {\r\n              entData.children.forEach((v) => {\r\n                if (v.isExternal == \"1\") {\r\n                  v.show = \"孙实体-外\";\r\n                }\r\n              });\r\n            }\r\n            for (let q = 0; q < entData.attributeList.length; q++) {\r\n              if (entData.attributeList[q]) {\r\n                if (entData.attributeList[q].isRequired == 0) {\r\n                  entData.attributeList[q].isRequired = \"0\";\r\n                } else {\r\n                  entData.attributeList[q].isRequired = \"1\";\r\n                }\r\n              }\r\n              for (let i = 0; i < entData.attributeList.length - 1 - q; i++) {\r\n                if (\r\n                  entData.attributeList[i].index >\r\n                  entData.attributeList[i + 1].index\r\n                ) {\r\n                  let temp = entData.attributeList[i];\r\n                  entData.attributeList[i] = entData.attributeList[i + 1];\r\n                  entData.attributeList[i + 1] = temp;\r\n                }\r\n              }\r\n            }\r\n          });\r\n          this.formData = resp.data;\r\n          this.handleOpen();\r\n        });\r\n      }else{\r\n        this.handleOpen();\r\n      }\r\n    },\r\n    //发布\r\n    deploy(row) {\r\n      form.deploy(this.deployedId).then((resp) => {\r\n        this.$confirm(resp.data.message + \"，是否创建表单？\", \"提示\", {\r\n          confirmButtonText: \"确定\",\r\n          cancelButtonText: \"取消\",\r\n          type: \"warning\",\r\n        })\r\n          .then(() => {\r\n            this.currentRow = row;\r\n            this.$refs.formTemplateDialog.showDialog(row.id);\r\n            this.loadTableData();\r\n          })\r\n          .catch(() => {\r\n            this.loadTableData();\r\n          });\r\n      });\r\n    },\r\n    //多选\r\n    checkNode(data, checkObj) {\r\n      this.selectTypeIds = checkObj.checkedKeys.join(\",\");\r\n      let param = {\r\n        pageBean: {\r\n          page: 1,\r\n          pageSize: 20,\r\n          showTotal: true,\r\n        },\r\n        querys: [\r\n          {\r\n            property: \"categoryId\",\r\n            value: this.selectTypeIds,\r\n            group: \"main\",\r\n            operation: \"IN\",\r\n            relation: \"AND\",\r\n          },\r\n        ],\r\n      };\r\n      this.selectTypeName = \"\";\r\n      this.loadTableData(param);\r\n    },\r\n    sysTypeDialogOnConfirm(data) {\r\n      var id = [];\r\n      for (let i = 0; i < this.updateTableData.length; i++) {\r\n        id.push(this.updateTableData[i].id);\r\n      }\r\n      form.updateCategory(id, data.id, encodeURI(data.name)).then((resp) => {\r\n        if (resp.data.state == true) {\r\n          this.$message({ message: resp.data.message, type: \"success\" });\r\n          this.dialogVisible = false;\r\n          this.updateTableData = [];\r\n          this.loadTableData();\r\n          return;\r\n        }\r\n        this.$message.error(resp.data.message);\r\n      });\r\n    },\r\n\r\n    showDialog(ref) {\r\n      if (this.updateTableData.length == 0) {\r\n        this.$message({\r\n          message: \"请先选择需要设置分类的数据\",\r\n          type: \"warning\",\r\n        });\r\n        return;\r\n      }\r\n      this.$refs[ref].showDialog({});\r\n    },\r\n    // 选择生成表单的模板\r\n    confirmTemplate(templateModel) {\r\n      const row = { ...this.currentRow };\r\n      this.currentRow = null;\r\n      let query = { bos: [row] };\r\n\r\n      if (templateModel) {\r\n        query.templateConf = templateModel;\r\n      }\r\n\r\n      this.$router.push({\r\n        path: \"/form#formManager\",\r\n        query: query,\r\n      });\r\n    },\r\n  },\r\n\r\n  mounted() {\r\n    //业务表单-》查看绑定关系\r\n    if (this.$route.query.id) {\r\n      this.openBusinessObjDialog(\"edit\", this.$route.query.id);\r\n    }\r\n  },\r\n};\r\n",null]}