ludc
2025-01-16 986aa62ed00bee39363bab41b4eeb8259d446efd
Source/plt-web/plt-web-ui/src/views/system/user/index.vue
@@ -28,36 +28,64 @@
      </template>
      <template #menu="{row,index,size}">
        <el-button v-if="permissionList.editBtn" icon="el-icon-edit" size="small" type="text"
                   @click.stop="rowEditHandler(row,index)">编辑
        <el-button v-if="permissionList.editBtn" size="small" type="text"
                   @click.stop="rowEditHandler(row,index)">
          <icon-show :name="permissionList.editBtn.source"></icon-show>
          编辑
        </el-button>
        <el-button v-if="permissionList.delBtn" icon="el-icon-delete" size="small" type="text"
                   @click.stop="rowDeleteHandler(row)">删除
        <el-button v-if="permissionList.delBtn" size="small" type="text"
                   @click.stop="rowDeleteHandler(row)">
          <icon-show :name="permissionList.delBtn.source"></icon-show>
          删除
        </el-button>
        <el-button v-if="permissionList.stopActionBtn" size="small" type="text" @click.stop="stopUserHandler(row)">
          <span v-if="row.status === 0" style="color: #fa3434"><i class="el-icon-video-pause"></i> 停用</span>
          <span v-if="row.status === 1" style="color: #55b61d"><i class="el-icon-video-play"></i> 启用</span>
        <el-button size="small" type="text" @click.stop="stopUserHandler(row)">
          <span v-if="row.status === 0 && permissionList.stopBtn" style="color: #fa3434;display: flex">
            <icon-show :name="permissionList.stopBtn.source"></icon-show>
            停用
          </span>
          <span v-if="row.status === 1 && permissionList.actionBtn" style="color: #55b61d;display: flex">
            <icon-show :name="permissionList.actionBtn.source"></icon-show>
            启用
          </span>
        </el-button>
      </template>
      <template slot="menuLeft" slot-scope="scope">
        <el-button v-if="permissionList.editBtn" icon="el-icon-delete" plain size="small" type="danger"
                   @click="allDelHandler">删除
        <el-button v-if="permissionList.addBtn" class="button-custom-icon" size="small" type="primary"
                   @click="$refs.userCrud.rowAdd()">
          <icon-show :name="permissionList.addBtn.source"></icon-show>
          新 增
        </el-button>
        <el-button v-if="permissionList.assigningRolesBtn" icon="el-icon-user" plain size="small" type="primary"
                   @click="roleHandler">分配角色
        <el-button v-if="permissionList.delBtn" class="button-custom-icon" plain size="small" type="danger"
                   @click="allDelHandler">
          <icon-show :name="permissionList.delBtn.source"></icon-show>
          删除
        </el-button>
        <el-button v-if="permissionList.distributionDepartmentBtn" icon="el-icon-school" plain size="small"
                   type="primary" @click="departmentHandler">分配部门
        <el-button v-if="permissionList.assigningRolesBtn" class="button-custom-icon" plain size="small" type="primary"
                   @click="roleHandler">
          <icon-show :name="permissionList.assigningRolesBtn.source"></icon-show>
          分配角色
        </el-button>
        <el-button v-if="permissionList.setPasswordPolicyBtn" icon="el-icon-key" plain size="small" type="success"
                   @click="setPwsHandler">设置密码策略
        <el-button v-if="permissionList.distributionDepartmentBtn" class="button-custom-icon" plain size="small"
                   type="primary" @click="departmentHandler">
          <icon-show :name="permissionList.distributionDepartmentBtn.source"></icon-show>
          分配部门
        </el-button>
        <el-button v-if="permissionList.importPersonnelBtn" icon="el-icon-upload2" plain size="small" type="primary"
                   @click="uploadUser">导入人员
        <el-button v-if="permissionList.setPasswordPolicyBtn" class="button-custom-icon" plain size="small"
                   type="success"
                   @click="setPwsHandler">
          <icon-show :name="permissionList.setPasswordPolicyBtn.source"></icon-show>
          设置密码策略
        </el-button>
        <el-button v-if="permissionList.downloadImportTemplateBtn" icon="el-icon-download" plain size="small"
                   type="primary" @click="downloadHandler">下载导入模板
        <el-button v-if="permissionList.importPersonnelBtn" class="button-custom-icon" plain size="small" type="primary"
                   @click="uploadUser">
          <icon-show :name="permissionList.importPersonnelBtn.source"></icon-show>
          导入人员
        </el-button>
        <el-button v-if="permissionList.downloadImportTemplateBtn" class="button-custom-icon" plain size="small"
                   type="primary" @click="downloadHandler">
          <icon-show :name="permissionList.downloadImportTemplateBtn.source"></icon-show>
          下载导入模板
        </el-button>
      </template>
    </avue-crud>
@@ -212,18 +240,19 @@
        addBtn: this.vaildData(this.permission[this.$route.query.id].ADD, false),
        delBtn: this.vaildData(this.permission[this.$route.query.id].DELETE, false),
        editBtn: this.vaildData(this.permission[this.$route.query.id].EDIT, false),
        assigningRolesBtn: this.vaildData(this.permission[this.$route.query.id].assigningRoles, false),
        distributionDepartmentBtn: this.vaildData(this.permission[this.$route.query.id].distributionDepartment, false),
        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].downloadImportTemplate, false),
        importPersonnelBtn: this.vaildData(this.permission[this.$route.query.id].importPersonnel, false),
        setPasswordPolicyBtn: this.vaildData(this.permission[this.$route.query.id].setPasswordPolicy, false),
        stopActionBtn: this.vaildData(this.permission[this.$route.query.id].stopAction, false),
        distributionDepartmentBtn: this.vaildData(this.permission[this.$route.query.id].ASSIGN, false),
        assigningRolesBtn: this.vaildData(this.permission[this.$route.query.id].ASSIGN1, false),
        downloadImportTemplateBtn: this.vaildData(this.permission[this.$route.query.id].DOWNLOADFILE, false),
        importPersonnelBtn: this.vaildData(this.permission[this.$route.query.id].IMPORT, false),
        setPasswordPolicyBtn: this.vaildData(this.permission[this.$route.query.id].RIGHT, false),
        stopBtn: this.vaildData(this.permission[this.$route.query.id].FREEZE, false),
        actionBtn: this.vaildData(this.permission[this.$route.query.id].UNFREZE, false),
      };
    },
    option() {
      return {
        ...basicOption,
        addBtn: this.permissionList.addBtn,
        addBtn: false,
        editBtn: false,
        delBtn: false,
        dialogWidth: '50%',
@@ -238,10 +267,13 @@
      this.tableLoading = true;
      getDataUsers(this.page.currentPage, this.page.pageSize, this.searchParams).then(res => {
        const data = res.data.data;
        data.map(item => {item.secretGrade = item.secretGrade.toString()})
        data.map(item => {
          item.secretGrade = item.secretGrade.toString()
        })
        this.tableData = data;
        this.page.total = res.data.total;
        this.tableLoading = false;s
        this.tableLoading = false;
        s
      })
      this.departmentQueryOnLoad()
    },
@@ -316,7 +348,7 @@
          this.lastIndex = newIndex;
        },
        () => {
          this.selectList = [];
          this.selectList = [row];
        }
      );
    },