| | |
| | | <template> |
| | | <div> |
| | | <el-card> |
| | | <el-form :inline="true" class="demo-form-inline"> |
| | | <div style="display: flex;justify-content: space-between;"> |
| | | <el-form-item label="人员搜索"> |
| | | <el-input v-model="nickNameOrPhone" placeholder="请输入姓名/联系电话"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="所属部门"> |
| | | <el-select v-model="deptId" placeholder="请选择(多选)" multiple> |
| | | <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName" :value="item.deptId"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="人员角色"> |
| | | <el-select v-model="roleId" placeholder="请选择(多选)" multiple> |
| | | <el-option v-for="item in roleList" :key="item.roleId" :label="item.roleName" :value="item.roleId"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="登陆状态"> |
| | | <el-select v-model="status" placeholder="请选择(多选)"> |
| | | <el-option |
| | | v-for="item in [{ label: '全部', value: '' }, { label: '启用', value: 0 }, { label: '禁用', value: 1 }]" |
| | | :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <div style="text-align: right;"> |
| | | <el-form-item> |
| | | <el-button @click="reset">重置</el-button> |
| | | <el-button type="primary" @click="onSubmit">查询</el-button> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="form flex a-center j-between mt--23"> |
| | | <el-form :inline="true"> |
| | | <el-form-item label="人员搜索"> |
| | | <el-input v-model="nickNameOrPhone" placeholder="请输入姓名/联系电话"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="人员角色"> |
| | | <el-select v-model="roleId" placeholder="请选择(多选)" multiple> |
| | | <el-option v-for="item in roleList" :key="item.roleId" :label="item.roleName" :value="item.roleId"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="账号状态"> |
| | | <el-select v-model="status" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in [{ label: '全部', value: '' }, { label: '启用', value: 0 }, { label: '禁用', value: 1 }]" |
| | | :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-card> |
| | | <el-card style="margin-top: 20px;"> |
| | | <div class="add_btn"> |
| | | <el-button @click="dialogVisible = true" type="primary">添加人员</el-button> |
| | | </div> |
| | | </div> |
| | | <div style="text-align: right;"> |
| | | <el-button class="search-button h--40 w--90 fs--14" icon="el-icon-search" type="primary" size="small" |
| | | @click="onSubmit">查询</el-button> |
| | | <el-button @click="reset" icon="el-icon-refresh-right" class="reset-button h--40 w--90 fs--14" |
| | | size="small">重置</el-button> |
| | | </div> |
| | | <div class="table-box-btn mt--23 ml--30"> |
| | | <el-button class="search-button h--40 w--90 fs--14" icon="el-icon-plus" type="primary" size="small" |
| | | @click="dialogVisible = true">添加</el-button> |
| | | <el-button class="search-button h--40 w--90 fs--14" icon="el-icon-delete" type="danger" size="small" |
| | | @click="dialogVisible = true">删除</el-button> |
| | | </div> |
| | | <div class="table-box ml--30 mt--23 mr--30"> |
| | | <el-table border stripe :data="data"> |
| | | <el-table-column label="序号" type="index" width="50"> |
| | | </el-table-column> |
| | | <el-table-column prop="nickName" label="姓名"></el-table-column> |
| | | <el-table-column prop="phonenumber" label="联系电话"> |
| | | </el-table-column> |
| | | <el-table-column prop="deptName" label="所属部门"> |
| | | <!-- <template slot-scope="{row}"> |
| | | <div>{{ row.children.length }}</div> |
| | | </template> --> |
| | | </el-table-column> |
| | | <el-table-column prop="roleName" label="角色"> |
| | | <!-- <template slot-scope="{row}"> |
| | | <div>{{ row.children.length }}</div> |
| | | </template> --> |
| | | </el-table-column> |
| | | <el-table-column prop="roleName" label="角色"></el-table-column> |
| | | <el-table-column prop="userName" label="登陆账号"> |
| | | </el-table-column> |
| | | <el-table-column prop="remark" label="备注"> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="登录状态"> |
| | | <el-table-column prop="status" label="账号状态"> |
| | | <template slot-scope="{row}"> |
| | | <div class="status_class"> |
| | | <div :class="row.status == 0 ? 'green' : 'red'"></div> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="pagination"> |
| | | <el-pagination layout="slot,sizes,prev,pager,next,jumper" :page-size="pagination.pageSize" |
| | | :current-page="pagination.pageNum" @current-change="handleCurrentChange" @size-change="handleSizeChange" |
| | | :total="pagination.total"> |
| | | <span>共{{ pagination.total }}条</span> |
| | | <div class="relative mt--23 flex j-end"> |
| | | <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" |
| | | :current-page="searchForm.pageNum" background layout="total,sizes,prev, pager, next,jumper" |
| | | :total="searchForm.total"> |
| | | </el-pagination> |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | |
| | | <AddEdit v-if="dialogVisible" :row="row" :deptList="deptList" :roleList="roleList" :dialogVisible="dialogVisible" |
| | | @close="dialogVisible = false, row = {}" @confirm="confirm" /> |
| | |
| | | status: '', |
| | | roleList: [], |
| | | deptList: [], |
| | | pagination: { |
| | | total: 10, |
| | | searchForm: { |
| | | total: 0, |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | pageSize: 10 |
| | | }, |
| | | row: {}, |
| | | rowView: {}, |
| | |
| | | }) |
| | | }, |
| | | confirm(form) { |
| | | console.log('confirm confirmform form', form); |
| | | |
| | | if (form.userId) { |
| | | edit(form).then(() => { |
| | | this.row = {} |
| | |
| | | } |
| | | }, |
| | | passwordConfirm(form) { |
| | | console.log('form form', form); |
| | | updatePwd(form).then(() => { |
| | | this.row = {} |
| | | this.passwordVisible = false |
| | |
| | | }) |
| | | }, |
| | | detail(row) { |
| | | console.log('row row', row); |
| | | this.passwordVisible = true |
| | | this.row = row |
| | | // this.$router.push(`/info/type?deptId=${row.deptId}`) |
| | | }, |
| | | edit(row) { |
| | | this.row = row |
| | | this.dialogVisible = true |
| | | }, |
| | | updateStatus(row, type) { |
| | | console.log('row row', row, 'type', type); |
| | | |
| | | if (type == true) { |
| | | edit({ ...row, status: 0 }).then(() => { |
| | | this.msgsuccess('启用成功') |
| | |
| | | getList(obj).then((res) => { |
| | | this.pagination.total = res.total |
| | | this.data = res.records |
| | | console.log('data data', this.data); |
| | | |
| | | }) |
| | | }, |
| | | reset() { |
| | |
| | | |
| | | .red { |
| | | background-color: red; |
| | | } |
| | | |
| | | .demo-form-inline { |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .add_btn { |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | margin-bottom: 20px; |
| | | } |
| | | |
| | | .pagination { |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | margin-top: 20px; |
| | | } |
| | | |
| | | .status_class { |