修复操作日志操作状态显示问题

prod
1178634255 2 years ago
parent dac293fd9e
commit 799c843a6c

@ -1,7 +1,13 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="mini" :inline="true" v-show="showSearch" label-width="68px">
<el-form
:model="queryParams"
ref="queryForm"
size="mini"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form-item label="系统模块:" prop="title" label-width="80px">
<el-input
v-model="queryParams.title"
@ -18,49 +24,48 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="类型:" prop="businessType">
<el-select
v-model="queryParams.businessType"
placeholder="操作类型"
clearable
>
<el-option
v-for="dict in dict.type.sys_oper_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<!--<el-form-item label="类型:" prop="businessType">-->
<!-- <el-select-->
<!-- v-model="queryParams.businessType"-->
<!-- placeholder="操作类型"-->
<!-- clearable-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="dict in dict.type.sys_oper_type"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="dict.value"-->
<!-- />-->
<!-- </el-select>-->
<!--</el-form-item>-->
<el-form-item label="状态:" prop="status">
<el-select
v-model="queryParams.status"
placeholder="操作状态"
clearable
>
<el-option
v-for="dict in dict.type.sys_common_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
<el-option label="正常" value="0"/>
<el-option label="失败" value="1"/>
</el-select>
</el-form-item>
<el-form-item>
<el-button-group>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
<el-button
type="primary"
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['monitor:operlog:remove']"
>删除
</el-button>
</el-button-group>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索
</el-button
>
<el-button
type="primary"
icon="el-icon-refresh"
size="mini"
@click="resetQuery"
>重置
</el-button
>
</el-form-item>
<!-- <el-form-item label="操作时间:" label-width="80px">-->
@ -74,39 +79,76 @@
<!-- end-placeholder="结束日期"-->
<!-- ></el-date-picker>-->
<!-- </el-form-item>-->
</el-form>
<el-table ref="tables" v-loading="loading" :data="list" @selection-change="handleSelectionChange"
:default-sort="defaultSort" @sort-change="handleSortChange" border>
<el-table-column type="selection" width="55" align="center"/>
<el-table
ref="tables"
v-loading="loading"
:data="list"
:default-sort="defaultSort"
border
>
<!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="系统模块" align="center" prop="title"/>
<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="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="operUserName" 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="operUserName"
width="100"
:show-overflow-tooltip="true"
/>
<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> -->
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_common_status" :value="scope.row.status"/>
<el-tag :type="scope.row.status === 0 ? 'success' : 'warning'">{{
scope.row.status === 0 ? "正常" : "失败"
}}
</el-tag>
</template>
</el-table-column>
<el-table-column label="操作日期" align="center" prop="operTime" sortable="custom"
:sort-orders="['descending', 'ascending']" width="180">
<el-table-column
label="操作日期"
align="center"
prop="operTime"
width="180"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.operTime) }}</span>
</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"
>
<template slot-scope="scope">
<el-button
type="text"
@click="handleView(scope.row,scope.index)"
@click="handleView(scope.row, scope.index)"
v-hasPermi="['monitor:operlog:query']"
>详情
</el-button>
@ -114,7 +156,7 @@
</el-table-column>
</el-table>
<pagination
v-show="total>0"
v-show="total > 0"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.limit"
@ -122,19 +164,29 @@
/>
<!-- 操作日志详细 -->
<el-dialog title="操作日志-详情" :visible.sync="open" width="700px" append-to-body>
<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 }} / {{ typeFormat(form) }}</el-form-item>
<el-form-item
label="登录信息:"
<el-form-item label="操作模块:"
>{{ form.title }} / {{ typeFormat(form) }}
</el-form-item
>
<el-form-item label="登录信息:"
>{{ form.operName }} / {{ form.operIp }} / {{ form.operLocation }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="请求地址:">{{ form.operUrl }}</el-form-item>
<el-form-item label="请求方式:">{{ form.requestMethod }}</el-form-item>
<el-form-item label="请求方式:">{{
form.requestMethod
}}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="操作方法:">{{ form.method }}</el-form-item>
@ -143,7 +195,10 @@
<el-form-item label="请求参数:">{{ form.operParam }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="返回参数:">{{ form.jsonResult }}</el-form-item>
<el-form-item label="返回参数:">{{
form.jsonResult
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作状态:">
@ -152,10 +207,16 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作时间:">{{ parseTime(form.operTime) }}</el-form-item>
<el-form-item label="操作时间:">{{
parseTime(form.operTime)
}}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="异常信息:" v-if="form.status === 1">{{ form.errorMsg }}</el-form-item>
<el-form-item label="异常信息:" v-if="form.status === 1">{{
form.errorMsg
}}
</el-form-item>
</el-col>
</el-row>
</el-form>
@ -171,7 +232,7 @@ import {list, delOperlog, cleanOperlog} from "@/api/monitor/operlog";
export default {
name: "Operlog",
dicts: ['sys_oper_type', 'sys_common_status'],
dicts: ["sys_oper_type", "sys_common_status"],
data() {
return {
//
@ -191,7 +252,6 @@ export default {
//
dateRange: [],
//
defaultSort: {prop: 'operTime', order: 'descending'},
//
form: {},
//
@ -201,8 +261,8 @@ export default {
title: undefined,
operName: undefined,
businessType: undefined,
status: undefined
}
status: undefined,
},
};
},
created() {
@ -212,7 +272,8 @@ export default {
/** 查询登录日志 */
getList() {
this.loading = true;
list(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
list(this.addDateRange(this.queryParams, this.dateRange)).then(
(response) => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
@ -221,7 +282,10 @@ export default {
},
//
typeFormat(row, column) {
return this.selectDictLabel(this.dict.type.sys_oper_type, row.businessType);
return this.selectDictLabel(
this.dict.type.sys_oper_type,
row.businessType
);
},
/** 搜索按钮操作 */
handleQuery() {
@ -232,53 +296,62 @@ export default {
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
this.$refs.tables.sort(this.defaultSort.prop, this.defaultSort.order)
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
},
/* handleSelectionChange(selection) {
this.ids = selection.map((item) => item.operId);
this.multiple = !selection.length;
}, */
/** 排序触发事件 */
handleSortChange(column, prop, order) {
/* handleSortChange(column, prop, order) {
this.queryParams.orderByColumn = column.prop;
this.queryParams.isAsc = column.order;
this.getList();
},
}, */
/** 详细按钮操作 */
handleView(row) {
this.open = true;
this.form = row;
},
/** 删除按钮操作 */
handleDelete(row) {
/* handleDelete(row) {
const operIds = row.operId || this.ids;
this.$modal.confirm('是否确认删除日志编号为"' + operIds + '"的数据项?').then(function () {
return delOperlog(operIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
});
},
this.$modal
.confirm('是否确认删除日志编号为"' + operIds + '"的数据项?')
.then(function () {
return delOperlog(operIds);
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
}, */
/** 清空按钮操作 */
handleClean() {
this.$modal.confirm('是否确认清空所有操作日志数据项?').then(function () {
return cleanOperlog();
}).then(() => {
this.getList();
this.$modal.msgSuccess("清空成功");
}).catch(() => {
});
},
/* handleClean() {
this.$modal
.confirm("是否确认清空所有操作日志数据项?")
.then(function () {
return cleanOperlog();
})
.then(() => {
this.getList();
this.$modal.msgSuccess("清空成功");
})
.catch(() => {});
}, */
/** 导出按钮操作 */
handleExport() {
this.download('monitor/operlog/export', {
...this.queryParams
}, `operlog_${new Date().getTime()}.xlsx`)
}
}
/* handleExport() {
this.download(
"monitor/operlog/export",
{
...this.queryParams,
},
`operlog_${new Date().getTime()}.xlsx`
);
}, */
},
};
</script>

Loading…
Cancel
Save