From 0a9d4ea17b9f2bce9d82e959fbdb3c1c1f282ea2 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 28 九月 2021 17:56:19 +0800
Subject: [PATCH] update 适配单体系与多体系用户权限
---
ruoyi-ui/src/views/monitor/operlog/index.vue | 128 ++++++++++++++++++++----------------------
1 files changed, 62 insertions(+), 66 deletions(-)
diff --git a/ruoyi-ui/src/views/monitor/operlog/index.vue b/ruoyi-ui/src/views/monitor/operlog/index.vue
index 9430168..35fd2b8 100644
--- a/ruoyi-ui/src/views/monitor/operlog/index.vue
+++ b/ruoyi-ui/src/views/monitor/operlog/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="app-container">
- <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
+ <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="绯荤粺妯″潡" prop="title">
<el-input
v-model="queryParams.title"
@@ -30,10 +30,10 @@
style="width: 240px"
>
<el-option
- v-for="dict in typeOptions"
- :key="dict.dictValue"
- :label="dict.dictLabel"
- :value="dict.dictValue"
+ v-for="dict in dict.type.sys_oper_type"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
/>
</el-select>
</el-form-item>
@@ -46,10 +46,10 @@
style="width: 240px"
>
<el-option
- v-for="dict in statusOptions"
- :key="dict.dictValue"
- :label="dict.dictLabel"
- :value="dict.dictValue"
+ v-for="dict in dict.type.sys_common_status"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
/>
</el-select>
</el-form-item>
@@ -75,6 +75,7 @@
<el-col :span="1.5">
<el-button
type="danger"
+ plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@@ -85,6 +86,7 @@
<el-col :span="1.5">
<el-button
type="danger"
+ plain
icon="el-icon-delete"
size="mini"
@click="handleClean"
@@ -94,25 +96,36 @@
<el-col :span="1.5">
<el-button
type="warning"
+ plain
icon="el-icon-download"
size="mini"
+ :loading="exportLoading"
@click="handleExport"
- v-hasPermi="['system:config:export']"
+ v-hasPermi="['monitor:operlog:export']"
>瀵煎嚭</el-button>
</el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
- <el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange">
+ <el-table ref="tables" v-loading="loading" :data="list" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="鏃ュ織缂栧彿" align="center" prop="operId" />
<el-table-column label="绯荤粺妯″潡" align="center" prop="title" />
- <el-table-column label="鎿嶄綔绫诲瀷" align="center" prop="businessType" :formatter="typeFormat" />
+ <el-table-column label="鎿嶄綔绫诲瀷" align="center" prop="businessType">
+ <template slot-scope="scope">
+ <dict-tag :options="dict.type.sys_oper_type" :value="scope.row.businessType"/>
+ </template>
+ </el-table-column>
<el-table-column label="璇锋眰鏂瑰紡" align="center" prop="requestMethod" />
- <el-table-column label="鎿嶄綔浜哄憳" align="center" prop="operName" />
- <el-table-column label="涓绘満" align="center" prop="operIp" width="130" :show-overflow-tooltip="true" />
- <el-table-column label="鎿嶄綔鍦扮偣" align="center" prop="operLocation" />
- <el-table-column label="鎿嶄綔鐘舵��" align="center" prop="status" :formatter="statusFormat" />
- <el-table-column label="鎿嶄綔鏃ユ湡" align="center" prop="operTime" width="180">
+ <el-table-column label="鎿嶄綔浜哄憳" align="center" prop="operName" width="100" :show-overflow-tooltip="true" sortable="custom" :sort-orders="['descending', 'ascending']" />
+ <el-table-column label="鎿嶄綔鍦板潃" align="center" prop="operIp" width="130" :show-overflow-tooltip="true" />
+ <el-table-column label="鎿嶄綔鍦扮偣" align="center" prop="operLocation" :show-overflow-tooltip="true" />
+ <el-table-column label="鎿嶄綔鐘舵��" align="center" prop="status">
+ <template slot-scope="scope">
+ <dict-tag :options="dict.type.sys_common_status" :value="scope.row.status"/>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔鏃ユ湡" align="center" prop="operTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.operTime) }}</span>
</template>
@@ -139,11 +152,11 @@
/>
<!-- 鎿嶄綔鏃ュ織璇︾粏 -->
- <el-dialog title="鎿嶄綔鏃ュ織璇︾粏" :visible.sync="open" width="700px">
+ <el-dialog title="鎿嶄綔鏃ュ織璇︾粏" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" label-width="100px" size="mini">
<el-row>
<el-col :span="12">
- <el-form-item label="鎿嶄綔妯″潡锛�">{{ form.title }} / 淇敼</el-form-item>
+ <el-form-item label="鎿嶄綔妯″潡锛�">{{ form.title }} / {{ typeFormat(form) }}</el-form-item>
<el-form-item
label="鐧诲綍淇℃伅锛�"
>{{ form.operName }} / {{ form.operIp }} / {{ form.operLocation }}</el-form-item>
@@ -183,30 +196,33 @@
</template>
<script>
-import { list, delOperlog, cleanOperlog, exportOperlog } from "@/api/monitor/operlog";
+import { list, delOperlog, cleanOperlog } from "@/api/monitor/operlog";
export default {
name: "Operlog",
+ dicts: ['sys_oper_type', 'sys_common_status'],
data() {
return {
// 閬僵灞�
loading: true,
+ // 瀵煎嚭閬僵灞�
+ exportLoading: false,
// 閫変腑鏁扮粍
ids: [],
// 闈炲涓鐢�
multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
// 鎬绘潯鏁�
total: 0,
// 琛ㄦ牸鏁版嵁
list: [],
// 鏄惁鏄剧ず寮瑰嚭灞�
open: false,
- // 绫诲瀷鏁版嵁瀛楀吀
- typeOptions: [],
- // 绫诲瀷鏁版嵁瀛楀吀
- statusOptions: [],
// 鏃ユ湡鑼冨洿
dateRange: [],
+ // 榛樿鎺掑簭
+ defaultSort: {prop: 'operTime', order: 'descending'},
// 琛ㄥ崟鍙傛暟
form: {},
// 鏌ヨ鍙傛暟
@@ -222,12 +238,6 @@
},
created() {
this.getList();
- this.getDicts("sys_oper_type").then(response => {
- this.typeOptions = response.data;
- });
- this.getDicts("sys_common_status").then(response => {
- this.statusOptions = response.data;
- });
},
methods: {
/** 鏌ヨ鐧诲綍鏃ュ織 */
@@ -240,13 +250,9 @@
}
);
},
- // 鎿嶄綔鏃ュ織鐘舵�佸瓧鍏哥炕璇�
- statusFormat(row, column) {
- return this.selectDictLabel(this.statusOptions, row.status);
- },
// 鎿嶄綔鏃ュ織绫诲瀷瀛楀吀缈昏瘧
typeFormat(row, column) {
- return this.selectDictLabel(this.typeOptions, row.businessType);
+ return this.selectDictLabel(this.dict.type.sys_oper_type, row.businessType);
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
@@ -257,12 +263,19 @@
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
+ this.$refs.tables.sort(this.defaultSort.prop, this.defaultSort.order)
this.handleQuery();
},
- // 澶氶�夋閫変腑鏁版嵁
+ /** 澶氶�夋閫変腑鏁版嵁 */
handleSelectionChange(selection) {
this.ids = selection.map(item => item.operId)
this.multiple = !selection.length
+ },
+ /** 鎺掑簭瑙﹀彂浜嬩欢 */
+ handleSortChange(column, prop, order) {
+ this.queryParams.orderByColumn = column.prop;
+ this.queryParams.isAsc = column.order;
+ this.getList();
},
/** 璇︾粏鎸夐挳鎿嶄綔 */
handleView(row) {
@@ -272,42 +285,25 @@
/** 鍒犻櫎鎸夐挳鎿嶄綔 */
handleDelete(row) {
const operIds = row.operId || this.ids;
- this.$confirm('鏄惁纭鍒犻櫎鏃ュ織缂栧彿涓�"' + operIds + '"鐨勬暟鎹」?', "璀﹀憡", {
- confirmButtonText: "纭畾",
- cancelButtonText: "鍙栨秷",
- type: "warning"
- }).then(function() {
- return delOperlog(operIds);
- }).then(() => {
- this.getList();
- this.msgSuccess("鍒犻櫎鎴愬姛");
- }).catch(function() {});
+ this.$modal.confirm('鏄惁纭鍒犻櫎鏃ュ織缂栧彿涓�"' + operIds + '"鐨勬暟鎹」锛�').then(function() {
+ return delOperlog(operIds);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
},
/** 娓呯┖鎸夐挳鎿嶄綔 */
handleClean() {
- this.$confirm('鏄惁纭娓呯┖鎵�鏈夋搷浣滄棩蹇楁暟鎹」?', "璀﹀憡", {
- confirmButtonText: "纭畾",
- cancelButtonText: "鍙栨秷",
- type: "warning"
- }).then(function() {
- return cleanOperlog();
- }).then(() => {
- this.getList();
- this.msgSuccess("娓呯┖鎴愬姛");
- }).catch(function() {});
+ this.$modal.confirm('鏄惁纭娓呯┖鎵�鏈夋搷浣滄棩蹇楁暟鎹」锛�').then(function() {
+ return cleanOperlog();
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("娓呯┖鎴愬姛");
+ }).catch(() => {});
},
/** 瀵煎嚭鎸夐挳鎿嶄綔 */
handleExport() {
- const queryParams = this.queryParams;
- this.$confirm('鏄惁纭瀵煎嚭鎵�鏈夋搷浣滄棩蹇楁暟鎹」?', "璀﹀憡", {
- confirmButtonText: "纭畾",
- cancelButtonText: "鍙栨秷",
- type: "warning"
- }).then(function() {
- return exportOperlog(queryParams);
- }).then(response => {
- this.download(response.msg);
- }).catch(function() {});
+ this.$download.excel('/monitor/operlog/export', this.queryParams);
}
}
};
--
Gitblit v1.9.3