|
@@ -1,27 +1,28 @@
|
|
<template>
|
|
<template>
|
|
<div>
|
|
<div>
|
|
<a-card size="small" :bordered="false" class="searchBoxNormal">
|
|
<a-card size="small" :bordered="false" class="searchBoxNormal">
|
|
|
|
+ <!-- 搜索条件 -->
|
|
<div ref="tableSearch" class="table-page-search-wrapper">
|
|
<div ref="tableSearch" class="table-page-search-wrapper">
|
|
- <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
|
|
|
|
|
|
+ <a-form layout="inline" id="userList-form" @keyup.enter.native="$refs.table.refresh(true)">
|
|
<a-row :gutter="15">
|
|
<a-row :gutter="15">
|
|
<a-col :md="6" :sm="24">
|
|
<a-col :md="6" :sm="24">
|
|
<a-form-item label="用户名称">
|
|
<a-form-item label="用户名称">
|
|
- <a-input allowClear v-model.trim="queryParam.name" placeholder="请输入用户名称"/>
|
|
|
|
|
|
+ <a-input allowClear id="userList-name" v-model.trim="queryParam.name" placeholder="请输入用户名称"/>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
<a-col :md="6" :sm="24">
|
|
<a-col :md="6" :sm="24">
|
|
<a-form-item label="手机号码">
|
|
<a-form-item label="手机号码">
|
|
- <a-input allowClear v-model.trim="queryParam.phone" placeholder="请输入手机号码"/>
|
|
|
|
|
|
+ <a-input allowClear id="userList-phone" v-model.trim="queryParam.phone" placeholder="请输入手机号码"/>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
<a-col :md="6" :sm="24">
|
|
<a-col :md="6" :sm="24">
|
|
<a-form-item label="状态">
|
|
<a-form-item label="状态">
|
|
- <v-select code="ENABLE_FLAG" v-model="queryParam.loginFlag" allowClear placeholder="请选择状态"></v-select>
|
|
|
|
|
|
+ <v-select code="ENABLE_FLAG" id="userList-loginFlag" v-model="queryParam.loginFlag" allowClear placeholder="请选择状态"></v-select>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
<a-col :md="4" :sm="24">
|
|
<a-col :md="4" :sm="24">
|
|
- <a-button type="primary" @click="$refs.table.refresh(true)" style="margin-right: 10px;">查询</a-button>
|
|
|
|
- <a-button type="" @click="reset" id="roleList-reset">重置</a-button>
|
|
|
|
|
|
+ <a-button type="primary" id="userList-refresh" @click="$refs.table.refresh(true)" style="margin-right: 10px;">查询</a-button>
|
|
|
|
+ <a-button type="" @click="reset" id="userList-reset">重置</a-button>
|
|
</a-col>
|
|
</a-col>
|
|
</a-row>
|
|
</a-row>
|
|
</a-form>
|
|
</a-form>
|
|
@@ -29,9 +30,11 @@
|
|
</a-card>
|
|
</a-card>
|
|
<a-card size="small" :bordered="false">
|
|
<a-card size="small" :bordered="false">
|
|
<a-spin :spinning="spinning" tip="Loading...">
|
|
<a-spin :spinning="spinning" tip="Loading...">
|
|
|
|
+ <!-- 操作按钮 -->
|
|
<div class="table-operator">
|
|
<div class="table-operator">
|
|
- <a-button type="primary" v-if="$hasPermissions('B_power_user_add')" @click="openModal">新增</a-button>
|
|
|
|
|
|
+ <a-button type="primary" id="userList-add" v-if="$hasPermissions('B_power_user_add')" @click="openModal">新增</a-button>
|
|
</div>
|
|
</div>
|
|
|
|
+ <!-- 列表 -->
|
|
<s-table
|
|
<s-table
|
|
class="sTable fixPagination"
|
|
class="sTable fixPagination"
|
|
ref="table"
|
|
ref="table"
|
|
@@ -47,13 +50,20 @@
|
|
>
|
|
>
|
|
<span slot="status" slot-scope="text, record">
|
|
<span slot="status" slot-scope="text, record">
|
|
<!-- 超级管理员不可删除不可编辑不可启禁用 -->
|
|
<!-- 超级管理员不可删除不可编辑不可启禁用 -->
|
|
- <a-switch v-if="record.superAdmin!=1 && $hasPermissions('B_power_user_enable')" checkedChildren="启用" unCheckedChildren="禁用" v-model="record.loginFlag" @change="changeFlagHandle(text, record)"/>
|
|
|
|
|
|
+ <a-switch
|
|
|
|
+ :id="'userList-loginFlag-btn-'+record.id"
|
|
|
|
+ v-if="record.superAdmin!=1 && $hasPermissions('B_power_user_enable')"
|
|
|
|
+ checkedChildren="启用"
|
|
|
|
+ unCheckedChildren="禁用"
|
|
|
|
+ v-model="record.loginFlag"
|
|
|
|
+ @change="changeFlagHandle(text, record)"/>
|
|
<span v-else>{{ record.loginFlag==1?'已启用':'已禁用' }}</span>
|
|
<span v-else>{{ record.loginFlag==1?'已启用':'已禁用' }}</span>
|
|
</span>
|
|
</span>
|
|
<span slot="action" slot-scope="text, record">
|
|
<span slot="action" slot-scope="text, record">
|
|
<a-button
|
|
<a-button
|
|
size="small"
|
|
size="small"
|
|
type="link"
|
|
type="link"
|
|
|
|
+ :id="'userList-edit-btn-'+record.id"
|
|
class="button-info"
|
|
class="button-info"
|
|
v-if="record.superAdmin!=1 &&$hasPermissions('B_power_user_edit')"
|
|
v-if="record.superAdmin!=1 &&$hasPermissions('B_power_user_edit')"
|
|
@click="handleEdit(record)"
|
|
@click="handleEdit(record)"
|
|
@@ -64,6 +74,7 @@
|
|
size="small"
|
|
size="small"
|
|
type="link"
|
|
type="link"
|
|
class="button-info"
|
|
class="button-info"
|
|
|
|
+ :id="'userList-resetPsd-btn-'+record.id"
|
|
v-if="record.loginFlag==1 && record.superAdmin!=1 &&$hasPermissions('B_power_user_resetPsd')"
|
|
v-if="record.loginFlag==1 && record.superAdmin!=1 &&$hasPermissions('B_power_user_resetPsd')"
|
|
@click="resetPassword(record)"
|
|
@click="resetPassword(record)"
|
|
>
|
|
>
|
|
@@ -74,6 +85,7 @@
|
|
size="small"
|
|
size="small"
|
|
type="link"
|
|
type="link"
|
|
class="button-error"
|
|
class="button-error"
|
|
|
|
+ :id="'userList-del-btn-'+record.id"
|
|
v-if="record.loginFlag==0 && record.superAdmin!=1 &&$hasPermissions('B_power_user_del')"
|
|
v-if="record.loginFlag==0 && record.superAdmin!=1 &&$hasPermissions('B_power_user_del')"
|
|
@click="delect(record)"
|
|
@click="delect(record)"
|
|
>
|
|
>
|
|
@@ -89,8 +101,10 @@
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { commonMixin } from '@/utils/mixin'
|
|
import { commonMixin } from '@/utils/mixin'
|
|
|
|
+// 组件
|
|
import { STable, VSelect } from '@/components'
|
|
import { STable, VSelect } from '@/components'
|
|
import userModal from './userModal.vue'
|
|
import userModal from './userModal.vue'
|
|
|
|
+// 接口
|
|
import { resetPSD, updateEnableStatus, getPowerUserList, delectUserPower } from '@/api/power-user.js'
|
|
import { resetPSD, updateEnableStatus, getPowerUserList, delectUserPower } from '@/api/power-user.js'
|
|
export default {
|
|
export default {
|
|
name: 'PowerUserList',
|
|
name: 'PowerUserList',
|
|
@@ -101,15 +115,14 @@ export default {
|
|
data () {
|
|
data () {
|
|
return {
|
|
return {
|
|
spinning: false,
|
|
spinning: false,
|
|
- tableHeight: 0,
|
|
|
|
|
|
+ tableHeight: 0, // 表格高度
|
|
// 查询参数
|
|
// 查询参数
|
|
queryParam: {
|
|
queryParam: {
|
|
- name: '',
|
|
|
|
- phone: '',
|
|
|
|
- loginFlag: undefined
|
|
|
|
|
|
+ name: '', // 用户名称
|
|
|
|
+ phone: '', // 手机号码
|
|
|
|
+ loginFlag: undefined// 状态
|
|
},
|
|
},
|
|
- showModal: false,
|
|
|
|
- openUdModal: false,
|
|
|
|
|
|
+ showModal: false, // 新增用户弹窗
|
|
itemData: null, // 编辑行数据
|
|
itemData: null, // 编辑行数据
|
|
// 表头
|
|
// 表头
|
|
columns: [
|
|
columns: [
|
|
@@ -126,10 +139,12 @@ export default {
|
|
// 加载数据方法 必须为 Promise 对象
|
|
// 加载数据方法 必须为 Promise 对象
|
|
loadData: parameter => {
|
|
loadData: parameter => {
|
|
this.spinning = true
|
|
this.spinning = true
|
|
|
|
+ // 获取用户数据 有分页
|
|
return getPowerUserList(Object.assign(parameter, this.queryParam)).then(res => {
|
|
return getPowerUserList(Object.assign(parameter, this.queryParam)).then(res => {
|
|
let data
|
|
let data
|
|
if (res.status == 200) {
|
|
if (res.status == 200) {
|
|
data = res.data
|
|
data = res.data
|
|
|
|
+ // 计算表格序号
|
|
const no = (data.pageNo - 1) * data.pageSize
|
|
const no = (data.pageNo - 1) * data.pageSize
|
|
for (let i = 0; i < data.list.length; i++) {
|
|
for (let i = 0; i < data.list.length; i++) {
|
|
const _item = data.list[i]
|
|
const _item = data.list[i]
|
|
@@ -140,8 +155,7 @@ export default {
|
|
this.spinning = false
|
|
this.spinning = false
|
|
return data
|
|
return data
|
|
})
|
|
})
|
|
- },
|
|
|
|
- optionAlertShow: false
|
|
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
@@ -150,6 +164,7 @@ export default {
|
|
this.showModal = true
|
|
this.showModal = true
|
|
this.itemData = null
|
|
this.itemData = null
|
|
},
|
|
},
|
|
|
|
+ // 关闭新增用户弹窗
|
|
closeModal () {
|
|
closeModal () {
|
|
this.showModal = false
|
|
this.showModal = false
|
|
this.itemData = null
|
|
this.itemData = null
|
|
@@ -208,6 +223,7 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ // 编辑
|
|
handleEdit (row) {
|
|
handleEdit (row) {
|
|
this.showModal = true
|
|
this.showModal = true
|
|
this.itemData = row
|
|
this.itemData = row
|
|
@@ -230,12 +246,14 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ // 初始化
|
|
pageInit () {
|
|
pageInit () {
|
|
const _this = this
|
|
const _this = this
|
|
this.$nextTick(() => { // 页面渲染完成后的回调
|
|
this.$nextTick(() => { // 页面渲染完成后的回调
|
|
_this.setTableH()
|
|
_this.setTableH()
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ // 计算列表高度
|
|
setTableH () {
|
|
setTableH () {
|
|
const tableSearchH = this.$refs.tableSearch.offsetHeight
|
|
const tableSearchH = this.$refs.tableSearch.offsetHeight
|
|
this.tableHeight = window.innerHeight - tableSearchH - 240
|
|
this.tableHeight = window.innerHeight - tableSearchH - 240
|