src/views/jcsz/jsqd.vue
@@ -236,7 +236,12 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button @click="dialogVisibleCancel">取 消</el-button>
          <el-button type="primary" @click="dialogVisibleConfirm">确 定</el-button>
          <el-button
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="dialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
@@ -479,7 +484,12 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button @click="userDialogVisibleCancel">取 消</el-button>
          <el-button type="primary" @click="userDialogVisibleConfirm">确 定</el-button>
          <el-button
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="userDialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
@@ -557,7 +567,12 @@
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button @click="rightDialogVisibleCancel">取 消</el-button>
          <el-button type="primary" @click="rightDialogVisibleConfirm">确 定</el-button>
          <el-button
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="rightDialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
@@ -854,6 +869,7 @@
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          this.$store.state.app.buttonIsDisabled = true
          const data = {
            RoleId: this.dialogForm.RoleId,
            RoleCode: this.dialogForm.RoleCode,
@@ -865,11 +881,13 @@
          }
          AddUpdateRole(data).then(res => {
            if (res.code === '200') {
              this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
              this.dialogVisible = false
              this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
              this.getRoleSearch()
              this.$store.state.app.buttonIsDisabled = false
            } else {
              this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
              this.$store.state.app.buttonIsDisabled = false
            }
          })
        }
@@ -963,17 +981,33 @@
    },
    /* 关联用户模块*/
    userClick(row) {
    async  userClick(row) {
      if (row.role_code === 'S001') {
        return this.$message.info('此角色无法操作!')
      }
      this.userDialogVisible = true
      const loading = this.$loading({
        lock: true,
        text: '正在加载数据,请稍等...',
        spinner: 'el-icon-loading',
        customClass: 'osloading',
        background: 'rgba(0, 0, 0, 0.7)'
      })
      this.userForm.roleName = row.role_name
      this.dialogFormUser.rolecode = row.role_code
      this.getRoleAssociationUser()
      const res = await this.getRoleAssociationUser()
      if (res.code === '200') {
        setTimeout(() => {
          loading.close()
          this.userDialogVisible = true
      this.$nextTick(() => {
        this.$refs.multipleTable.doLayout()
      })
        }, 1000)
      } else {
        loading.close()
      }
    },
    // 获取角色清单关联用户
    async getRoleAssociationUser() {
@@ -987,6 +1021,7 @@
          }
        })
      })
      return { code: res.code }
    },
    // 处理多选
    handleSelectionChange(rows) {
@@ -1037,15 +1072,19 @@
    },
    // 关联用户对话框确认
    async userDialogVisibleConfirm() {
      this.$store.state.app.buttonIsDisabled = true
      const userMultipleArr = []
      this.userMultipleArr.forEach(item => {
        userMultipleArr.push({ code: item.usercode, name: item.username })
      })
      const res = await SaveRoleAssoctUser(userMultipleArr, this.dialogFormUser.rolecode)
      if (res.code === '200') {
        this.userDialogVisible = false
        this.$message.success('保存成功!')
        await this.getRoleSearch()
        this.userDialogVisible = false
        this.$store.state.app.buttonIsDisabled = false
      } else {
        this.$store.state.app.buttonIsDisabled = false
      }
    },
    // 级联选择器
@@ -1065,7 +1104,15 @@
    /* 角色关联权限对话框部分*/
    // 分配权限点击
    async rightClick(row) {
      this.dialogVisibleRight = true
      const loading = this.$loading({
        lock: true,
        text: '正在加载数据,请稍等...',
        spinner: 'el-icon-loading',
        customClass: 'osloading',
        background: 'rgba(0, 0, 0, 0.7)'
      })
      // this.dialogVisibleRight = true
      this.rightFrom.usercode = row.role_code
      this.rightFrom.username = row.role_name
@@ -1073,13 +1120,16 @@
        rolecode: this.rightFrom.usercode,
        type: ''
      }
      const { data: res } = await RoleAssociationRight(data)// 接口获取数据
      // console.log(res, 111)
      this.dialogFormRight.rightPCArr = res[0][0].is_delete === '0' ? res[0] : []
      this.dialogFormRight.rightAPPArr = res[1][0].is_delete === '0' ? res[1] : []
      RoleAssociationRight(data).then(res => {
        if (res.code === '200') {
          setTimeout(() => {
            loading.close()
            this.dialogVisibleRight = true
            this.dialogFormRight.rightPCArr = res.data[0][0].is_delete === '0' ? res.data[0] : []
            this.dialogFormRight.rightAPPArr = res.data[1][0].is_delete === '0' ? res.data[1] : []
      this.PCTrue = res[0][0].is_delete === '0'
      this.APPTrue = res[1][0].children.filter(item => item.is_delete === '0').length === 0 ? false : res[1][0].is_delete === '0'
            this.PCTrue = res.data[0][0].is_delete === '0'
            this.APPTrue = res.data[1][0].children.filter(item => item.is_delete === '0').length === 0 ? false : res.data[1][0].is_delete === '0'
      // '0'显示  '1' 不显示   过滤出相对应的菜单
      if (this.PCTrue) {
@@ -1319,6 +1369,11 @@
          this.$refs.rightAPPRef.setCheckedKeys(this.dialogFormRight.rightAPPArrSelected)
        }
      })
          }, 1000)
        } else {
          loading.close()
        }
      })
    },
    // 分配权限关闭事件
    handleCloseRight() {
@@ -1342,6 +1397,8 @@
    },
    // 权限对话框确认事件
    async rightDialogVisibleConfirm() {
      this.$store.state.app.buttonIsDisabled = true
      const rightPCArrSelected = []// 保存提交树选中 PC
      const rightAPPArrSelected = []// 保存提交树选中 APP
      if (this.PCTrue) {
@@ -1415,8 +1472,11 @@
      const res = await SaveUserAssoctRight(rightSubmit, rolecode, usercode)
      if (res.code === '200') {
        this.$message.success('保存成功!')
        await this.getRoleSearch()
        this.dialogVisibleRight = false
        await this.getRoleSearch()
        this.$store.state.app.buttonIsDisabled = false
      } else {
        this.$store.state.app.buttonIsDisabled = false
      }
    },
    // 大盒子点击事件
@@ -1753,7 +1813,13 @@
}
</style>
<style>
.osloading{
  font-size: 26px !important;
}
.el-loading-text{
  font-size: 26px !important;
}
.el-table .custom-row {
  background: #f8f8fa;
}