用户管理页面开发
This commit is contained in:
@@ -2,27 +2,10 @@ var URL = {
|
||||
userLogin: '/login',
|
||||
userLogout: '/logout',
|
||||
getUserInfo: '/user/getUserInfo',
|
||||
pageUpdate: '/zyplayer-doc-wiki/page/update',
|
||||
pageChangeParent: '/zyplayer-doc-wiki/page/changeParent',
|
||||
pageList: '/zyplayer-doc-wiki/page/list',
|
||||
updatePage: '/zyplayer-doc-wiki/page/update',
|
||||
pageDetail: '/zyplayer-doc-wiki/page/detail',
|
||||
pageDelete: '/zyplayer-doc-wiki/page/delete',
|
||||
pageNews: '/zyplayer-doc-wiki/page/news',
|
||||
pageLock: '/zyplayer-doc-wiki/page/lock',
|
||||
pageUnlock: '/zyplayer-doc-wiki/page/unlock',
|
||||
spaceList: '/zyplayer-doc-wiki/space/list',
|
||||
updateSpace: '/zyplayer-doc-wiki/space/update',
|
||||
getPageUserAuthList: '/zyplayer-doc-wiki/page/auth/list',
|
||||
assignPageUserAuth: '/zyplayer-doc-wiki/page/auth/assign',
|
||||
getUserInfoList: '/user/info/list',
|
||||
updateUserInfo: '/user/info/update',
|
||||
resetPassword: '/user/info/resetPassword',
|
||||
|
||||
updatePageFile: '/zyplayer-doc-wiki/page/file/update',
|
||||
pageCommentList: '/zyplayer-doc-wiki/page/comment/list',
|
||||
updatePageComment: '/zyplayer-doc-wiki/page/comment/update',
|
||||
pageZanList: '/zyplayer-doc-wiki/page/zan/list',
|
||||
updatePageZan: '/zyplayer-doc-wiki/page/zan/update',
|
||||
|
||||
commonUpload: '/zyplayer-doc-wiki/common/upload',
|
||||
getUserBaseInfo: '/zyplayer-doc-wiki/common/user/base',
|
||||
|
||||
systemUpgradeInfo: '/system/info/upgrade',
|
||||
|
||||
@@ -5,11 +5,11 @@ var href = window.location.href;
|
||||
var _fn = {
|
||||
href: href,
|
||||
// 本地启动时使用本地接口调试
|
||||
// HOST: 'http://local.zyplayer.com:8083/zyplayer-doc-manage',
|
||||
// HOST1: 'http://local.zyplayer.com:8083/zyplayer-doc-manage',
|
||||
HOST: 'http://local.zyplayer.com:8083/zyplayer-doc-manage',
|
||||
HOST1: 'http://local.zyplayer.com:8083/zyplayer-doc-manage',
|
||||
// 也可以直接使用线上的服务调试
|
||||
HOST: 'http://doc.zyplayer.com/zyplayer-doc-manage',
|
||||
HOST1: 'http://doc.zyplayer.com/zyplayer-doc-manage',
|
||||
// HOST: 'http://doc.zyplayer.com/zyplayer-doc-manage',
|
||||
// HOST1: 'http://doc.zyplayer.com/zyplayer-doc-manage',
|
||||
// 打包时使用下面这两行,文件就放在根目录下,所以当前路劲就好
|
||||
// HOST: './',
|
||||
// HOST1: './',
|
||||
|
||||
@@ -24,7 +24,9 @@ export default {
|
||||
} else if (res.data.errCode == 400) {
|
||||
global.vue.$message('请先登录');
|
||||
var href = encodeURIComponent(window.location.href);
|
||||
global.vue.$router.push({path: '/user/login', query: {redirect: href}});
|
||||
if (global.vue.$router.currentRoute.path != '/user/login') {
|
||||
global.vue.$router.push({path: '/user/login', query: {redirect: href}});
|
||||
}
|
||||
} else if (res.data.errCode == 402) {
|
||||
global.vue.$router.push("/common/noAuth");
|
||||
} else if (res.data.errCode !== 200) {
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
<template>
|
||||
<div>
|
||||
<div style="border-bottom: 1px solid #fafafa;padding: 10px;margin-bottom: 10px;">用户管理</div>
|
||||
<div class="user-list-vue">
|
||||
<el-breadcrumb separator-class="el-icon-arrow-right" style="padding: 20px 10px;">
|
||||
<el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
|
||||
<el-breadcrumb-item>系统管理</el-breadcrumb-item>
|
||||
<el-breadcrumb-item>用户列表</el-breadcrumb-item>
|
||||
</el-breadcrumb>
|
||||
<el-form :inline="true" :model="searchParam" class="search-form-box">
|
||||
<el-form-item label="搜索类型">
|
||||
<el-select v-model="searchParam.type" placeholder="请选择">
|
||||
@@ -15,27 +19,30 @@
|
||||
<el-input v-model="searchParam.keyword" placeholder="输入关键字"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="">查询</el-button>
|
||||
<el-button type="primary" @click="getUserList">查询</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="padding: 10px;">
|
||||
<div style="padding: 10px;" v-loading="searchLoading">
|
||||
<el-table :data="searchResultList" border style="width: 100%; margin-bottom: 5px;" max-height="500">
|
||||
<el-table-column prop="id" label="编号" width="60"></el-table-column>
|
||||
<el-table-column prop="name" label="账号"></el-table-column>
|
||||
<el-table-column prop="spaceExplain" label="用户名"></el-table-column>
|
||||
<el-table-column prop="createUserName" label="手机号"></el-table-column>
|
||||
<el-table-column prop="createUserName" label="性别"></el-table-column>
|
||||
<el-table-column prop="createTime" label="创建时间"></el-table-column>
|
||||
<el-table-column prop="userNo" label="账号"></el-table-column>
|
||||
<el-table-column prop="email" label="邮箱"></el-table-column>
|
||||
<el-table-column prop="userName" label="用户名"></el-table-column>
|
||||
<el-table-column prop="phone" label="手机号"></el-table-column>
|
||||
<el-table-column label="性别">
|
||||
<template slot-scope="scope">{{scope.row.sex==0?'女':'男'}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="creationTime" label="创建时间"></el-table-column>
|
||||
<el-table-column label="状态">
|
||||
<template slot-scope="scope">
|
||||
<el-switch v-model="scope.row.status" active-text="正常" inactive-text="停用">
|
||||
</el-switch>
|
||||
<el-switch v-on:change="delFlagChange" v-model="scope.row.delFlag" :active-value="0" active-text="正常" :inactive-value="1" inactive-text="停用"></el-switch>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作">
|
||||
<el-table-column label="操作" width="240">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="small" plain type="primary" v-on:click="editUserInfo(scope.row)">修改</el-button>
|
||||
<el-button size="small" plain type="warning" v-on:click="resetPassword(scope.row)">重置密码</el-button>
|
||||
<el-button size="mini" plain type="primary" v-on:click="editUserInfo(scope.row)">修改</el-button>
|
||||
<el-button size="mini" plain type="warning" v-on:click="resetPassword(scope.row)">重置密码</el-button>
|
||||
<el-button size="mini" plain type="danger" v-on:click="deleteUser(scope.row)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -56,31 +63,31 @@
|
||||
<el-dialog title="修改用户" :visible.sync="editUserDialogVisible" width="600px">
|
||||
<el-form ref="form" :model="editUserForm" label-width="80px">
|
||||
<el-form-item label="账号">
|
||||
<el-input v-model="editUserForm.name"></el-input>
|
||||
<el-input v-model="editUserForm.userNo"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="用户名">
|
||||
<el-input v-model="editUserForm.name"></el-input>
|
||||
<el-input v-model="editUserForm.userName"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号">
|
||||
<el-input v-model="editUserForm.name"></el-input>
|
||||
<el-input v-model="editUserForm.phone"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱">
|
||||
<el-input v-model="editUserForm.name"></el-input>
|
||||
<el-input v-model="editUserForm.email"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="性别">
|
||||
<el-radio-group v-model="editUserForm.resource">
|
||||
<el-radio label="男"></el-radio>
|
||||
<el-radio label="女"></el-radio>
|
||||
<el-radio-group v-model="editUserForm.sex">
|
||||
<el-radio :label="1">男</el-radio>
|
||||
<el-radio :label="0">女</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="角色">
|
||||
<el-select v-model="editUserForm.xx" multiple filterable placeholder="请选择">
|
||||
<el-select v-model="editUserForm.role" multiple filterable placeholder="请选择">
|
||||
<el-option v-for="item in roleOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="">确定</el-button>
|
||||
<el-button>取消</el-button>
|
||||
<el-button type="primary" @click="updateEditUser">确定</el-button>
|
||||
<el-button @click="editUserDialogVisible = false">取消</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
@@ -88,11 +95,13 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import toast from '../../common/lib/common/toast'
|
||||
var app;
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
searchLoading: false,
|
||||
editUserDialogVisible: false,
|
||||
totalCount: 0,
|
||||
searchParam: {
|
||||
@@ -101,9 +110,7 @@
|
||||
pageSize: 20,
|
||||
pageNum: 1,
|
||||
},
|
||||
searchResultList: [
|
||||
{name: '张三'}
|
||||
],
|
||||
searchResultList: [],
|
||||
roleOptions: [
|
||||
{value: '管理员'}
|
||||
],
|
||||
@@ -112,25 +119,73 @@
|
||||
},
|
||||
mounted: function () {
|
||||
app = this;
|
||||
this.getUserList();
|
||||
},
|
||||
methods: {
|
||||
handleSizeChange(val) {
|
||||
this.searchParam.pageSize = val;
|
||||
this.getUserList();
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.searchParam.pageNum = val;
|
||||
this.getUserList();
|
||||
},
|
||||
editUserInfo() {
|
||||
editUserInfo(row) {
|
||||
this.editUserDialogVisible = true;
|
||||
this.editUserForm = row;
|
||||
},
|
||||
resetPassword() {
|
||||
resetPassword(row) {
|
||||
this.$confirm('确定要重置此用户密码吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.editUserForm = row;
|
||||
this.common.post(this.apilist1.resetPassword, this.editUserForm, function (json) {
|
||||
app.$confirm("重置成功!新的密码为:" + json.data).then(()=> {
|
||||
done();
|
||||
}).catch(()=> {});
|
||||
});
|
||||
}).catch(()=>{});
|
||||
},
|
||||
delFlagChange(row, xx) {
|
||||
debugger
|
||||
// this.editUserForm = row;
|
||||
},
|
||||
deleteUser(row) {
|
||||
this.$confirm('确定要删除此用户吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.editUserForm = row;
|
||||
this.editUserForm.delFlag = 1;
|
||||
this.updateEditUser();
|
||||
}).catch(()=>{});
|
||||
},
|
||||
updateEditUser() {
|
||||
this.common.post(this.apilist1.updateUserInfo, this.editUserForm, function (json) {
|
||||
toast.success("保存成功!");
|
||||
app.editUserDialogVisible = false;
|
||||
app.getUserList();
|
||||
});
|
||||
},
|
||||
getUserList() {
|
||||
this.searchLoading = true;
|
||||
this.common.post(this.apilist1.getUserInfoList, this.searchParam, function (json) {
|
||||
// 让加载动画停留一会
|
||||
setTimeout(()=>{app.searchLoading = false;}, 500);
|
||||
app.totalCount = json.total;
|
||||
app.searchResultList = json.data;
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<style>
|
||||
.search-form-box{padding: 10px;}
|
||||
.page-info-box{text-align: right;margin: 20px 0 50px 0;}
|
||||
.user-list-vue .search-form-box{padding: 10px;}
|
||||
.user-list-vue .page-info-box{text-align: right;margin: 20px 0 50px 0;}
|
||||
.user-list-vue .el-button+.el-button{margin-left: 5px;}
|
||||
</style>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user