2022-04-12 02:33:06 +00:00
|
|
|
<!-- 系统日志 -->
|
|
|
|
|
<template>
|
|
|
|
|
<div class="journal">
|
|
|
|
|
<el-card shadow="never">
|
|
|
|
|
<el-form class="ls-form" :model="formData" label-width="80px" size="small" inline>
|
|
|
|
|
<el-form-item label="管理员">
|
2022-04-14 08:22:13 +00:00
|
|
|
<el-input placeholder="请输入" class="ls-input" v-model="formData.username" />
|
2022-04-12 02:33:06 +00:00
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="访问方式">
|
|
|
|
|
<el-select v-model="formData.type" placeholder="请选择">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="(item, index) in visitType"
|
|
|
|
|
:key="index"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value"
|
|
|
|
|
></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
2022-04-14 08:22:13 +00:00
|
|
|
|
|
|
|
|
<el-form-item label="来源IP">
|
|
|
|
|
<el-input placeholder="请输入" class="ls-input" v-model="formData.ip" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="访问时间">
|
|
|
|
|
<data-picker
|
|
|
|
|
v-model:start_time="formData.start_time"
|
|
|
|
|
v-model:end_time="formData.end_time"
|
|
|
|
|
></data-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="访问链接">
|
|
|
|
|
<el-input placeholder="请输入" class="ls-input" v-model="formData.url" />
|
|
|
|
|
</el-form-item>
|
2022-04-12 02:33:06 +00:00
|
|
|
|
|
|
|
|
<el-form-item>
|
|
|
|
|
<div class="m-l-20">
|
|
|
|
|
<el-button type="primary" @click="resetPage">查询</el-button>
|
|
|
|
|
<el-button @click="resetParams">重置</el-button>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
|
|
<el-card class="m-t-15" shadow="never" v-loading="pager.loading">
|
|
|
|
|
<div>
|
|
|
|
|
<el-table class="m-t-20" :data="pager.lists">
|
|
|
|
|
<el-table-column label="记录ID" prop="id"></el-table-column>
|
2022-04-14 08:22:13 +00:00
|
|
|
<el-table-column label="操作" prop="title"></el-table-column>
|
|
|
|
|
<el-table-column label="管理员" prop="username"></el-table-column>
|
|
|
|
|
<!-- <el-table-column label="管理员ID" prop="admin_id"> </el-table-column> -->
|
2022-04-12 02:33:06 +00:00
|
|
|
<el-table-column label="访问链接" prop="url"></el-table-column>
|
|
|
|
|
<el-table-column label="访问方式" prop="type"></el-table-column>
|
2022-04-14 08:22:13 +00:00
|
|
|
<el-table-column label="访问参数" prop="args"> </el-table-column>
|
|
|
|
|
<el-table-column label="来源IP" prop="ip"> </el-table-column>
|
|
|
|
|
<el-table-column label="错误信息" prop="error"> </el-table-column>
|
|
|
|
|
<el-table-column label="IP" prop="address"> </el-table-column>
|
|
|
|
|
<el-table-column label="状态" prop="status"> </el-table-column>
|
|
|
|
|
<el-table-column label="执行耗时 毫秒" prop="taskTime"> </el-table-column>
|
|
|
|
|
<el-table-column label="日志时间" prop="createTime"> </el-table-column>
|
2022-04-12 02:33:06 +00:00
|
|
|
</el-table>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="flex row-right">
|
|
|
|
|
<pagination
|
|
|
|
|
v-model="pager"
|
|
|
|
|
@change="requestApi"
|
|
|
|
|
layout="total, prev, pager, next, jumper"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</el-card>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
2022-04-14 08:22:13 +00:00
|
|
|
import { apiSystemLogLists } from '@/api/setting'
|
|
|
|
|
import { onMounted, reactive, ref } from 'vue'
|
|
|
|
|
import Pagination from '@/components/pagination/index.vue'
|
|
|
|
|
import Popup from '@/components/Popup/index.vue'
|
|
|
|
|
import { usePages } from '@/core/hooks/pages'
|
|
|
|
|
import DataPicker from '@/components/data-picker/index.vue'
|
|
|
|
|
|
|
|
|
|
interface formDataObj {
|
|
|
|
|
username?: string // 管理员
|
|
|
|
|
url?: string // 访问链接
|
|
|
|
|
ip?: string // ip
|
|
|
|
|
type?: string // 访问方式
|
|
|
|
|
start_time?: string // 日志时间开始
|
|
|
|
|
end_time?: string // 日志时间结束
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 查询表单
|
|
|
|
|
let formData = ref<formDataObj>({
|
|
|
|
|
username: '',
|
|
|
|
|
url: '',
|
|
|
|
|
ip: '',
|
|
|
|
|
type: '',
|
|
|
|
|
start_time: '',
|
|
|
|
|
end_time: ''
|
|
|
|
|
})
|
2022-04-12 02:33:06 +00:00
|
|
|
|
2022-04-14 08:22:13 +00:00
|
|
|
// 访问方式
|
|
|
|
|
const visitType = ref<Array<any>>([
|
|
|
|
|
{
|
|
|
|
|
label: '全部',
|
|
|
|
|
value: ''
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label: 'get',
|
|
|
|
|
value: 'get'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label: 'post',
|
|
|
|
|
value: 'post'
|
2022-04-12 02:33:06 +00:00
|
|
|
}
|
2022-04-15 07:32:37 +00:00
|
|
|
// {
|
|
|
|
|
// label: 'put',
|
|
|
|
|
// value: 'put'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// label: 'delete',
|
|
|
|
|
// value: 'delete'
|
|
|
|
|
// },
|
|
|
|
|
// {
|
|
|
|
|
// label: 'option',
|
|
|
|
|
// value: 'option'
|
|
|
|
|
// }
|
2022-04-14 08:22:13 +00:00
|
|
|
])
|
2022-04-12 02:33:06 +00:00
|
|
|
|
2022-04-14 08:22:13 +00:00
|
|
|
const { pager, requestApi, resetParams, resetPage } = usePages({
|
|
|
|
|
callback: apiSystemLogLists,
|
|
|
|
|
params: formData.value
|
|
|
|
|
})
|
2022-04-12 02:33:06 +00:00
|
|
|
|
2022-04-14 08:22:13 +00:00
|
|
|
onMounted(() => {
|
|
|
|
|
requestApi()
|
|
|
|
|
})
|
2022-04-12 02:33:06 +00:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped></style>
|