{"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\\uc\\Position\\PostManager.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\uc\\Position\\PostManager.vue","mtime":1675071993288},{"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\r\nimport org from '@/api/org.js'\r\nimport utils from '@/hotent-ui-util.js'\r\nconst eipOrgDialog = () => import('@/components/dialog/EipOrgDialog.vue')\r\nconst EipJobSelector = () => import('@/components/selector/EipJobSelector.vue')\r\nimport distrubutiveUser from '@/views/uc/org/DistrubutiveUser'\r\nexport default {\r\n  components: {\r\n    eipOrgDialog,\r\n    distrubutiveUser,\r\n    EipJobSelector,\r\n  },\r\n  computed: {\r\n    demDeleteUrl: function () {\r\n      return window.context.uc + '/api/org/v1/orgPost/deleteOrgPost'\r\n    },\r\n    saveRoleUrl: function () {\r\n      let preUrl = window.context.uc + '/api/org/v1/orgPost'\r\n      if (this.orgPost.id) {\r\n        preUrl += '/updateOrgPost'\r\n      } else {\r\n        preUrl += '/saveOrgPost'\r\n      }\r\n      return preUrl\r\n    },\r\n    requestMethod: function () {\r\n      return 'POST'\r\n    },\r\n  },\r\n  data() {\r\n    return {\r\n      dialogVisible: false,\r\n      dialogVisibleMenuPerm: false,\r\n      orgPost: {\r\n        name: '',\r\n        code: '',\r\n        jobCode: '',\r\n        jobName: '',\r\n        // orgName: '',\r\n        orgCode: '',\r\n      },\r\n      isSubmit: true,\r\n      data: [],\r\n      pageResult: {\r\n        page: 1,\r\n        pageSize: 50,\r\n        total: 0,\r\n      },\r\n      loadDataUrl: '',\r\n      menuPerm: {},\r\n      allowRoles: [],\r\n      diaType: '',\r\n      jobs: [],\r\n      postUser: [],\r\n      readOnly: true,\r\n      tempOrgPost: {},\r\n      // 树\r\n      selectOrgId: '',\r\n      selectOrgName: '',\r\n      orgList: [], //下拉框待选择的组织\r\n      demList: [], //下拉框待选择的维度\r\n      treeData: [], //树形菜单展示的数组\r\n      defaultProps: {\r\n        children: 'children',\r\n        label: 'name',\r\n      },\r\n    }\r\n  },\r\n  mounted() {\r\n    this.getAllDemList()\r\n    this.$validator = this.$root.$validator\r\n  },\r\n  methods: {\r\n    // 树\r\n    getAllDemList() {\r\n      org\r\n        .getDescAll()\r\n        .then((resp) => {\r\n          for (let i = 0; i < resp.length; i++) {\r\n            this.orgList.push({\r\n              key: resp[i].id,\r\n              value: resp[i].demName,\r\n            })\r\n            this.demList.push({\r\n              key: resp[i].code,\r\n              value: resp[i].demName,\r\n            })\r\n            this.dimenList = resp\r\n            if (resp[i].isDefault === 1) {\r\n              this.selectOrgId = resp[i].id\r\n            }\r\n          }\r\n        })\r\n        .then((params) => {\r\n          var dem = {\r\n            demId: this.selectOrgId,\r\n          }\r\n          org.getByParentAndDemToTree(dem).then((data) => {\r\n            this.treeData = utils.tile2nest(data)\r\n          })\r\n        })\r\n    },\r\n    getOrgTrees(node, ids) {\r\n      ids.push(node.id)\r\n      let arr = node.children\r\n      if (arr) {\r\n        for (var i = 0; i < arr.length; i++) {\r\n          this.getOrgTrees(arr[i], ids)\r\n        }\r\n      }\r\n    },\r\n    loadTreeData(cb) {\r\n      var param = {\r\n        demId: this.selectOrgId,\r\n      }\r\n      org.getByParentAndDemToTree(param).then((data) => {\r\n        this.treeData = utils.tile2nest(data)\r\n        cb && cb()\r\n      })\r\n    },\r\n    demChange(data) {\r\n      this.selectOrgId = data\r\n      this.orgPost.orgCode = ''\r\n      this.loadTreeData()\r\n    },\r\n    orgTreeClick(orgbytree) {\r\n      //重置数据\r\n      let ary = this.$refs.htTable.querys\r\n      for (var i = 0; i < ary.length; i++) {\r\n        if (ary[i].group && ary[i].group == 'orgTree') {\r\n          ary.remove(ary[i])\r\n        }\r\n      }\r\n      let quickSearchEl = document.querySelector('.quick-search input')\r\n      if (quickSearchEl && !quickSearchEl.value) {\r\n        this.$refs.htTable.querys = []\r\n      }\r\n      if (!orgbytree.code) {\r\n        this.orgPost.orgCode = ''\r\n        this.$refs.htTable.querys.push({\r\n          property: 'DEM_ID_',\r\n          value: orgbytree.demId,\r\n          group: 'orgTree',\r\n          relation: 'AND',\r\n          operation: 'EQUAL',\r\n        })\r\n      } else {\r\n        this.orgPost.orgCode = orgbytree.code\r\n        let ids = []\r\n        let trees = ''\r\n        this.getOrgTrees(orgbytree, ids)\r\n        trees = ids.join(',')\r\n        if (trees != '') {\r\n          this.$refs.htTable.querys.push({\r\n            property: 'ORG_ID_',\r\n            value: trees,\r\n            group: 'orgTree',\r\n            relation: 'AND',\r\n            operation: 'IN',\r\n          })\r\n        }\r\n      }\r\n      this.$refs.htTable.load()\r\n    },\r\n    handleRefresh(cb) {\r\n      this.orgPost.orgCode = ''\r\n      this.loadTreeData(cb)\r\n      //重置数据\r\n      let ary = this.$refs.htTable.querys\r\n      for (var i = 0; i < ary.length; i++) {\r\n        if (ary[i].group && ary[i].group == 'orgTree') {\r\n          ary.remove(ary[i])\r\n        }\r\n      }\r\n      this.$refs.htTable.load()\r\n    },\r\n    // 树\r\n    rowClick(row, column, event) {\r\n      this.$refs.htTable.$refs.htTable.toggleRowSelection(row)\r\n    },\r\n    selectOrg() {\r\n      this.$refs['eipOrgDialog'].showDialog()\r\n    },\r\n    setDemDefault(row) {\r\n      org.setDemDefault(row.code).then(() => {\r\n        this.$refs.htTable.load()\r\n      })\r\n    },\r\n    handleClose() {\r\n      this.dialogVisible = false\r\n      this.diaType = 'close'\r\n      this.loadDataUrl = ''\r\n    },\r\n    handleCloseMenuPerm() {\r\n      this.dialogVisibleMenuPerm = false\r\n    },\r\n    showDialog(row) {\r\n      if (!this.orgPost.orgCode) {\r\n        this.$message.error('请选择岗位组织')\r\n      } else {\r\n        this.dialogVisible = true\r\n        if (row) {\r\n          this.orgPost = this.$options.data().orgPost\r\n          this.loadDataUrl = `/api/org/v1/orgPost/getOrgPost?postCode=${encodeURIComponent(\r\n            row.code\r\n          )}`\r\n        } else {\r\n          this.loadDataUrl = ''\r\n          this.diaType = 'add'\r\n        }\r\n        if (this.diaType === 'showInfo') {\r\n          this.dialogVisible = false\r\n        }\r\n      }\r\n    },\r\n    dialogCancle(dialogVisible) {\r\n      this[dialogVisible] = false\r\n    },\r\n    loadData(param, cb) {\r\n      org\r\n        .getOrgPostPage(param)\r\n        .then((response) => {\r\n          this.data = response.rows\r\n          this.pageResult = {\r\n            page: response.page,\r\n            pageSize: response.pageSize,\r\n            total: response.total,\r\n          }\r\n        })\r\n        .finally(() => cb())\r\n    },\r\n    handleCommand(params) {\r\n      this.readOnly = false\r\n      switch (params.command) {\r\n        case 'showInfo':\r\n          this.diaType = 'showInfo'\r\n          // this.showDialog(params.row)\r\n          this.orgPost = params.row\r\n          org.getFullname(params.row.id).then((resp) => {\r\n            this.postUser = resp\r\n          })\r\n          break\r\n        case 'assignMenu':\r\n          this.diaType = 'edit'\r\n          this.showDialog(params.row)\r\n          break\r\n        case 'disPersonnel':\r\n          this.$refs.distrubutiveUser.showDialog(params.row.id, params.row.code)\r\n          break\r\n        default:\r\n          break\r\n      }\r\n    },\r\n    async beforeSaveData() {\r\n      this.isSubmit = true\r\n    },\r\n    afterSaveData() {\r\n      this.dialogVisible = false\r\n      this.$refs.htTable.load()\r\n    },\r\n    afterDelete() {\r\n      this.$refs.htTable.load()\r\n    },\r\n    afterLoadData(data) {\r\n      // 编辑角色\r\n      if (this.dialogVisible || this.diaType === 'showInfo') {\r\n        this.orgPost = data.value\r\n        this.tempOrgPost = JSON.parse(JSON.stringify(this.orgPost))\r\n        setTimeout(() => this.$validator.validateAll('editDemForm'))\r\n      }\r\n    },\r\n    eipOrgDialogOk(data) {\r\n      if (data.length > 1) {\r\n        this.$message.error('岗位组织不能选择多个')\r\n        return\r\n      }\r\n      if (this.tempOrgPost.orgId && this.tempOrgPost.orgId != data[0].id) {\r\n        let this_ = this\r\n        this.$confirm(\r\n          '修改所属组织，保存后当前岗位下的人员会一并转移到新组织下',\r\n          '提示',\r\n          {\r\n            cancelButtonText: '取消',\r\n            confirmButtonText: '确定',\r\n            type: 'warning',\r\n            closeOnClickModal: false,\r\n          }\r\n        ).then(() => {\r\n          this_.orgPost.orgCode = data[0].code\r\n          this_.$set(this.orgPost, 'orgName', data[0].name)\r\n        })\r\n      } else {\r\n        this.orgPost.orgCode = data[0].code\r\n        this.$set(this.orgPost, 'orgName', data[0].name)\r\n      }\r\n    },\r\n  },\r\n}\r\n",null]}