From 6b236930fd75a9e43fe106f62dd2a9b15229d9cd Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期一, 08 八月 2022 09:24:33 +0800
Subject: [PATCH] 登录日志新增解锁账户功能
---
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 @@
})
}
+// 瑙i攣鐢ㄦ埛鐧诲綍鐘舵��
+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,8 +67,18 @@
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']"
+ >瑙i攣</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@@ -76,7 +86,7 @@
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 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 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 @@
proxy.$modal.msgSuccess("娓呯┖鎴愬姛");
}).catch(() => {});
}
+/** 瑙i攣鎸夐挳鎿嶄綔 */
+function handleUnlock() {
+ const username = selectName.value;
+ proxy.$modal.confirm('鏄惁纭瑙i攣鐢ㄦ埛"' + username + '"鏁版嵁椤�?').then(function () {
+ return unlockLogininfor(username);
+ }).then(() => {
+ proxy.$modal.msgSuccess("鐢ㄦ埛" + username + "瑙i攣鎴愬姛");
+ }).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>
--
Gitblit v1.9.3