jiangping
2025-06-30 ccbcb9487250f063dc7c4e72cfa18228dca8dac8
admin/src/views/system/user.vue
@@ -14,6 +14,11 @@
      <el-form-item label="组织" prop="companyName">
        <el-input v-model="searchForm.companyName" v-trim placeholder="请输入组织" @keypress.enter.native="search"/>
      </el-form-item>
      <el-form-item label="角色" prop="roleId">
        <el-select v-model="searchForm.roleId" placeholder="请选择角色" @change="search">
          <el-option :label="item.name" :value="item.id" v-for="(item, index) in rolesList" :key="index"></el-option>
        </el-select>
      </el-form-item>
<!--            <el-form-item label="所属部门" prop="rootDeptId">-->
<!--        <DepartmentSelect v-model="searchForm.rootDeptId" placeholder="请选择所属部门" clearable/>-->
<!--      </el-form-item>-->
@@ -32,23 +37,24 @@
        <li v-permissions="['system:user:delete']"><el-button icon="el-icon-delete" @click="deleteByIdInBatch">删除</el-button></li>
      </ul>
      <el-table
        v-loading="isWorking.search"
        :data="tableData.list"
        :default-sort = "{prop: 'createTime', order: 'descending'}"
        stripe
        @selection-change="handleSelectionChange"
        @sort-change="handleSortChange"
      >
          :height="tableHeightNew"
          v-loading="isWorking.search"
          :data="tableData.list"
          :default-sort = "{prop: 'createTime', order: 'descending'}"
          stripe
          @selection-change="handleSelectionChange"
          @sort-change="handleSortChange"
        >
        <el-table-column type="selection" width="55"></el-table-column>
<!--        <el-table-column prop="avatar" label="头像" width="80px" class-name="table-column-avatar" fixed="left">-->
<!--          <template slot-scope="{row}">-->
<!--            <img :src="row.avatar == null ? '/static/avatar/man.png' : row.avatar">-->
<!--          </template>-->
<!--        </el-table-column>-->
        <el-table-column prop="realname" label="姓名" min-width="100px" fixed="left"></el-table-column>
        <el-table-column prop="realname" label="姓名" width="80px" fixed="left"></el-table-column>
        <el-table-column prop="username" label="用户名" min-width="120px"></el-table-column>
        <el-table-column prop="empNo" label="工号" sortable="custom" sort-by="EMP_NO" min-width="80px"></el-table-column>
        <el-table-column prop="companyName" label="所属组织"    min-width="250px"></el-table-column>
        <el-table-column prop="companyName" label="所属组织" show-overflow-tooltip  min-width="250px"></el-table-column>
<!--        <el-table-column prop="department" label="部门" min-width="120px">-->
<!--          <template slot-scope="{row}">{{row.department == null ? '' : row.department.name}}</template>-->
<!--        </el-table-column>-->
@@ -65,6 +71,7 @@
          </template>
        </el-table-column>
        <el-table-column prop="mobile" label="手机号码" min-width="100px"></el-table-column>
        <el-table-column prop="openid" label="微信openid" show-overflow-tooltip min-width="100px"></el-table-column>
<!--        <el-table-column prop="email" label="邮箱" min-width="180px"></el-table-column>-->
<!--        <el-table-column prop="birthday" label="生日" sortable="custom" sort-by="BIRTHDAY" min-width="100px"></el-table-column>-->
        <el-table-column prop="roles" label="角色" min-width="160px" class-name="table-column-strings">
@@ -77,11 +84,11 @@
        <el-table-column prop="createUser" label="创建人" min-width="100px">
          <template slot-scope="{row}">{{row.createUserInfo == null ? '' : row.createUserInfo.username}}</template>
        </el-table-column>
        <el-table-column prop="createTime" label="创建时间" sortable="custom" sort-by="CREATE_TIME" min-width="140px"></el-table-column>
        <el-table-column prop="createTime" label="创建时间" sortable="custom" sort-by="CREATE_TIME" min-width="150px"></el-table-column>
        <el-table-column prop="updateUser" label="更新人" min-width="100px">
          <template slot-scope="{row}">{{row.updateUserInfo == null ? '' : row.updateUserInfo.username}}</template>
        </el-table-column>
        <el-table-column prop="updateTime" label="更新时间" sortable="custom" sort-by="UPDATE_TIME" min-width="140px"></el-table-column>
        <el-table-column prop="updateTime" label="更新时间" sortable="custom" sort-by="UPDATE_TIME" min-width="150px"></el-table-column>
        <el-table-column
          v-if="containPermissions(['system:user:update', 'system:user:createUserRole', 'system:user:resetPwd', 'system:user:delete'])"
          label="操作"
@@ -120,7 +127,7 @@
import ResetPwdWindow from '@/components/system/user/ResetPwdWindow'
import DepartmentSelect from '@/components/common/DepartmentSelect'
import PositionSelect from '@/components/common/PositionSelect'
import { fetchAll as fetchAllRoles, fetchAll } from '@/api/system/role'
export default {
  name: 'SystemUser',
  extends: BaseTable,
@@ -134,8 +141,10 @@
        rootDeptId: null, // 部门ID
        positionId: null, // 岗位ID
        companyName: null, // 企业名称
        roleId: null, // 角色
        mobile: '' // 手机号码
      }
      },
      rolesList: []
    }
  },
  created () {
@@ -149,6 +158,13 @@
      }]
    })
    this.search()
    fetchAllRoles()
      .then(records => {
        this.rolesList = records
      })
      .catch(e => {
        this.$tip.apiFailed(e)
      })
  }
}
</script>