This commit is contained in:
77
2024-04-19 00:40:39 +08:00
parent 4ac5880903
commit eefea61d49
2 changed files with 68 additions and 30 deletions

View File

@@ -82,6 +82,22 @@ export function userResetNickname(id) {
})
}
export function userLock(id) {
return request({
url: '/xq/user/lock',
method: 'post',
data: {id}
})
}
export function userUnlock(id) {
return request({
url: '/xq/user/unlock',
method: 'post',
data: {id}
})
}
// 查询用户管理详细
export function getUser(id) {
return request({

View File

@@ -66,7 +66,6 @@
<el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="id" align="center" prop="id" show-overflow-tooltip />
<el-table-column label="编号" align="center" prop="usercode" />
<el-table-column label="昵称" align="center" prop="nickname" />
<el-table-column label="手机号" align="center" prop="mobile" />
@@ -87,50 +86,35 @@
</template>
</el-table-column>
<el-table-column label="年龄" align="center" prop="age" />
<!-- <el-table-column label="生日" align="center" prop="birthday" width="180" />-->
<!-- <el-table-column label="身高" align="center" prop="height" />-->
<!-- <el-table-column label="体重" align="center" prop="weight" />-->
<!-- <el-table-column label="体型" align="center" prop="somatotype" />-->
<!-- <el-table-column label="生肖" align="center" prop="zodiac" />-->
<!-- <el-table-column label="星座" align="center" prop="sign" />-->
<!-- <el-table-column label="居住地" align="center" prop="residence" />-->
<!-- <el-table-column label="户籍地" align="center" prop="address" />-->
<!-- <el-table-column label="居住城市" align="center" prop="residenceCity" />-->
<!-- <el-table-column label="学历" align="center" prop="education" />-->
<!-- <el-table-column label="婚况" align="center" prop="marriage" />-->
<!-- <el-table-column label="职业" align="center" prop="profession" />-->
<!-- <el-table-column label="年收入" align="center" prop="annualIncome" />-->
<!-- <el-table-column label="公司性质" align="center" prop="companyNature" />-->
<!-- <el-table-column label="为谁征婚" align="center" prop="forPersonals" />-->
<!-- <el-table-column label="自我描述" align="center" prop="remark" />-->
<el-table-column label="居住城市" align="center" prop="residenceCityName" show-overflow-tooltip />
<el-table-column label="最后登陆时间" align="center" prop="lastLoginTime" width="140"/>
<el-table-column label="登陆IP" align="center" prop="lastLoginIp" width="125"/>
<el-table-column label="注册时间" align="center" prop="regTime" width="140"/>
<el-table-column label="状态" align="center" prop="status" >
<template v-slot="scope">
<cai-dict-tag :options="userStatusList" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="120" fixed="right">
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:user:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:user:remove']"
>删除</el-button>
>详情</el-button>
<el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)">
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">更多</el-button>
<el-dropdown-menu slot="dropdown">
<!-- <el-dropdown-item command="handleDelete" icon="el-icon-info">完整信息</el-dropdown-item>-->
<el-dropdown-item v-hasPermi="['xq:user:restPwd']" command="handleResetPwd" icon="el-icon-key">重置密码</el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:updateMobile']" command="handleResetMobile" icon="el-icon-phone">修改手机</el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:lock']" command="handleUserForbid" icon="el-icon-lock">封禁</el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:lock']" v-if="scope.row.status === 0" command="handleUserLock" icon="el-icon-lock"><span style="color: red">封禁</span></el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:unlock']" v-if="scope.row.status === 1" command="handleUserUnlock" icon="el-icon-unlock"><span style="color: blue">解封</span></el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:unBindInvite']" v-if="scope.row.inviteId" command="handleUserUnBindInvite" icon="el-icon-unlock"><span style="color: red">解绑邀请</span></el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:bindInvite']" v-if="!scope.row.inviteId" command="handleUserBindInvite" icon="el-icon-link">绑定邀请</el-dropdown-item>
<el-dropdown-item v-hasPermi="['xq:user:resetAvatar']" command="handleUserResetAvatar" icon="el-icon-refresh-right">重置头像</el-dropdown-item>
@@ -155,7 +139,17 @@
</template>
<script>
import { listUser, resetUserMobile, delUser, resetUserPassword, userUnBindInvite, getUser, userResetAvatar, userResetNickname } from "@/api/xq/user";
import {
listUser,
resetUserMobile,
delUser,
resetUserPassword,
userUnBindInvite,
getUser,
userResetAvatar,
userResetNickname,
userLock, userUnlock
} from '@/api/xq/user'
import { genderList, userStatusList } from '@/constant/statusMap'
import BindInviteDialog from '@/views/xq/user/bind-invite-dialog.vue'
@@ -322,10 +316,9 @@ export default {
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户管理编号为"' + ids + '"的数据项?').then(() => {
this.$modal.confirm('是否确认删除用户"' + row.name + '"的数据项?').then(() => {
this.loading = true;
return delUser(ids);
return delUser(row.id);
}).then(() => {
this.loading = false;
this.getList();
@@ -335,6 +328,32 @@ export default {
this.loading = false;
});
},
handleUserLock(row){
this.$modal.confirm('是否确认封禁用户("' + row.nickname + '"').then(() => {
this.loading = true;
return userLock(row.id);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("封禁成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
handleUserUnlock(row){
this.$modal.confirm('是否确认解封用户("' + row.nickname + '"').then(() => {
this.loading = true;
return userUnlock(row.id);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("解封成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
handleCommand(command, row) {
switch (command) {
case "handleDelete":
@@ -346,8 +365,11 @@ export default {
case "handleResetMobile":
this.handleResetMobile(row);
break;
case "handleUserForbid":
this.handleUserForbid(row);
case "handleUserLock":
this.handleUserLock(row);
break;
case "handleUserUnlock":
this.handleUserUnlock(row);
break;
case "handleUserResetAvatar":
this.handleUserResetAvatar(row);