From 6b236930fd75a9e43fe106f62dd2a9b15229d9cd Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: Mon, 8 Aug 2022 09:24:33 +0800 Subject: [PATCH] =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=97=A5=E5=BF=97=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E8=A7=A3=E9=94=81=E8=B4=A6=E6=88=B7=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/monitor/logininfor.js | 8 +++++++ src/views/monitor/logininfor/index.vue | 31 ++++++++++++++++++++++---- src/views/monitor/operlog/index.vue | 8 +++---- 3 files changed, 39 insertions(+), 8 deletions(-) diff --git a/src/api/monitor/logininfor.js b/src/api/monitor/logininfor.js index cd78151..c49a40e 100644 --- a/src/api/monitor/logininfor.js +++ b/src/api/monitor/logininfor.js @@ -17,6 +17,14 @@ export function delLogininfor(infoId) { }) } +// 解锁用户登录状态 +export function unlockLogininfor(userName) { + return request({ + url: '/monitor/logininfor/unlock/' + userName, + method: 'get' + }) +} + // 清空登录日志 export function cleanLogininfor() { return request({ diff --git a/src/views/monitor/logininfor/index.vue b/src/views/monitor/logininfor/index.vue index 43772fc..dd0c942 100644 --- a/src/views/monitor/logininfor/index.vue +++ b/src/views/monitor/logininfor/index.vue @@ -58,7 +58,7 @@ icon="Delete" :disabled="multiple" @click="handleDelete" - v-hasPermi="['system:logininfor:remove']" + v-hasPermi="['monitor:logininfor:remove']" >删除</el-button> </el-col> <el-col :span="1.5"> @@ -67,16 +67,26 @@ plain icon="Delete" @click="handleClean" - v-hasPermi="['system:logininfor:remove']" + v-hasPermi="['monitor:logininfor:remove']" >清空</el-button> </el-col> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="Unlock" + :disabled="single" + @click="handleUnlock" + v-hasPermi="['monitor:logininfor:unlock']" + >解锁</el-button> + </el-col> <el-col :span="1.5"> <el-button type="warning" plain icon="Download" @click="handleExport" - v-hasPermi="['system:logininfor:export']" + v-hasPermi="['monitor:logininfor:export']" >导出</el-button> </el-col> <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> @@ -114,7 +124,7 @@ </template> <script setup name="Logininfor"> -import { list, delLogininfor, cleanLogininfor } from "@/api/monitor/logininfor"; +import { list, delLogininfor, cleanLogininfor, unlockLogininfor } from "@/api/monitor/logininfor"; const { proxy } = getCurrentInstance(); const { sys_common_status } = proxy.useDict("sys_common_status"); @@ -123,7 +133,9 @@ const logininforList = ref([]); const loading = ref(true); const showSearch = ref(true); const ids = ref([]); +const single = ref(true); const multiple = ref(true); +const selectName = ref(""); const total = ref(0); const dateRange = ref([]); const defaultSort = ref({ prop: "loginTime", order: "descending" }); @@ -164,6 +176,8 @@ function resetQuery() { function handleSelectionChange(selection) { ids.value = selection.map(item => item.infoId); multiple.value = !selection.length; + single.value = selection.length != 1; + selectName.value = selection.map(item => item.userName); } /** 排序触发事件 */ function handleSortChange(column, prop, order) { @@ -190,6 +204,15 @@ function handleClean() { proxy.$modal.msgSuccess("清空成功"); }).catch(() => {}); } +/** 解锁按钮操作 */ +function handleUnlock() { + const username = selectName.value; + proxy.$modal.confirm('是否确认解锁用户"' + username + '"数据项?').then(function () { + return unlockLogininfor(username); + }).then(() => { + proxy.$modal.msgSuccess("用户" + username + "解锁成功"); + }).catch(() => {}); +} /** 导出按钮操作 */ function handleExport() { proxy.download("monitor/logininfor/export", { diff --git a/src/views/monitor/operlog/index.vue b/src/views/monitor/operlog/index.vue index 5fe86e9..9bbe042 100644 --- a/src/views/monitor/operlog/index.vue +++ b/src/views/monitor/operlog/index.vue @@ -73,7 +73,7 @@ icon="Delete" :disabled="multiple" @click="handleDelete" - v-hasPermi="['system:operlog:remove']" + v-hasPermi="['monitor:operlog:remove']" >删除</el-button> </el-col> <el-col :span="1.5"> @@ -82,7 +82,7 @@ plain icon="Delete" @click="handleClean" - v-hasPermi="['system:operlog:remove']" + v-hasPermi="['monitor:operlog:remove']" >清空</el-button> </el-col> <el-col :span="1.5"> @@ -91,7 +91,7 @@ plain icon="Download" @click="handleExport" - v-hasPermi="['system:operlog:export']" + v-hasPermi="['monitor:operlog:export']" >导出</el-button> </el-col> <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> @@ -125,7 +125,7 @@ type="text" icon="View" @click="handleView(scope.row, scope.index)" - v-hasPermi="['system:operlog:query']" + v-hasPermi="['monitor:operlog:query']" >详细</el-button> </template> </el-table-column>