按钮级别的新版本,多级别的组织架构
loulijun2021
2023-08-24 68338b19f9dc2ad9725326b7e699a3e191030cb8
src/views/basicSettings/organizationList.vue
@@ -29,7 +29,24 @@
            <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">重置</el-button>
          </div>
        </el-form>
        <div
          class="bodyTopFormExpand"
          style="height:5px"
        >
          <!--          <svg-icon-->
          <!--            v-show="mouseHoverType==='mouseout'"-->
          <!--            style="cursor: pointer"-->
          <!--            :icon-class="!isExpandForm?'doubleDown3':'doubleUp3'"-->
          <!--            @mouseenter="mouseHoverType=$event.type"-->
          <!--          />-->
          <!--          <svg-icon-->
          <!--            v-show="mouseHoverType==='mouseenter'"-->
          <!--            style="cursor: pointer"-->
          <!--            :icon-class="!isExpandForm?'doubleDown':'doubleUp'"-->
          <!--            @click="isExpandForm=!isExpandForm"-->
          <!--            @mouseout="mouseHoverType=$event.type"-->
          <!--          />-->
        </div>
      </div>
      <div class="elTableDiv">
@@ -75,7 +92,7 @@
            </template>
          </el-table-column>
          <el-table-column
            prop="lm_user"
            prop="username"
            label="创建人员"
            sortable="custom"
          />
@@ -142,10 +159,10 @@
        <el-form-item label="组织名称" prop="OrganName">
          <el-input v-model="dialogForm.OrganName" style="width: 200px" />
        </el-form-item>
        <el-form-item label="所属组织" prop="parent_id">
        <el-form-item label="所属组织" prop="storgcode">
          <el-cascader
            ref="cascader"
            v-model="dialogForm.parent_id"
            v-model="dialogForm.storgcode"
            :options="cascaderOptions"
            filterable
            :props="defaultProps"
@@ -163,7 +180,13 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button v-waves @click="dialogVisibleCancel">取 消</el-button>
          <el-button v-waves type="primary" @click="dialogVisibleConfirm">确 定</el-button>
          <el-button
            v-waves
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="dialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
@@ -209,7 +232,8 @@
        OrganCode: '', // 组织编码
        OrganName: '', // 组织名称
        leve: 0, // 层级编码
        parent_id: '', // 父级编码
        storgcode: '', // 父级编码
        parent_id: '', // 原pid
        torg_seq: '', // 排序
        status: 'Y'// 状态
      },
@@ -221,7 +245,7 @@
        OrganName: [
          { required: true, message: '请输入组织名称', trigger: ['blur', 'change'] }
        ],
        parent_id: [
        storgcode: [
          { required: true, message: '请选择所属组织', trigger: ['blur', 'change'] }
        ]
      },
@@ -303,7 +327,8 @@
        this.dialogForm.leve = parseFloat(row.leve)
        this.dialogForm.torg_seq = row.torg_seq
        this.dialogForm.status = row.status
        this.dialogForm.parent_id = this.findParent([], row.parent_id, this.cascaderOptions).reverse()
        this.dialogForm.storgcode = this.findParent([], row.parent_id, this.cascaderOptions).reverse()
        this.dialogForm.parent_id = row.parent_id
      })
    },
    filterChildren(treeData, code) {
@@ -365,6 +390,7 @@
    handleClose() {
      this.dialogForm.OrganCode = ''
      this.dialogForm.OrganName = ''
      this.dialogForm.storgcode = ''
      this.dialogForm.parent_id = ''
      this.dialogForm.status = 'Y'
      this.dialogForm.leve = 0
@@ -373,7 +399,7 @@
    },
    cascaderChange(val) {
      const temp = this.Options.find(i => i.torg_code === val[val.length - 1])
      this.dialogForm.parent_id = val
      this.dialogForm.storgcode = val
      this.dialogForm.leve = parseFloat(temp.leve) + 1
      this.dialogForm.torg_seq = this.Options.filter(i => i.parent_id === val[val.length - 1]).length + 1
    },
@@ -385,14 +411,17 @@
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          this.dialogForm.parent_id = this.dialogForm.parent_id[this.dialogForm.parent_id.length - 1]
          this.$store.state.app.buttonIsDisabled = true
          this.dialogForm.storgcode = this.dialogForm.storgcode[this.dialogForm.storgcode.length - 1]
          AddUpdateOrganization(this.dialogForm).then(res => {
            if (res.code === '200') {
              this.$notify.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
              this.dialogVisible = false
              this.$store.state.app.buttonIsDisabled = false
              this.getSTorgData()
            } else {
              this.$notify.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
              this.$store.state.app.buttonIsDisabled = false
            }
          })
        }