| | |
| | | style="width: 240px" |
| | | > |
| | | <el-option |
| | | v-for="dict in sys_common_status" |
| | | v-for="dict in sysStatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | |
| | | |
| | | <el-table ref="logininforRef" v-loading="loading" :data="logininforList" @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="infoId" /> |
| | | <el-table-column label="访问编号" align="center" prop="id" /> |
| | | <el-table-column label="用户名称" align="center" prop="userName" :show-overflow-tooltip="true" sortable="custom" :sort-orders="['descending', 'ascending']" /> |
| | | <el-table-column label="地址" align="center" prop="ipaddr" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="登录地点" align="center" prop="loginLocation" :show-overflow-tooltip="true" /> |
| | |
| | | <el-table-column label="浏览器" align="center" prop="browser" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="登录状态" align="center" prop="status"> |
| | | <template #default="scope"> |
| | | <dict-tag :options="sys_common_status" :value="scope.row.status" /> |
| | | <dict-tag :options="sysStatus" :value="scope.row.status" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="描述" align="center" prop="msg" :show-overflow-tooltip="true" /> |
| | |
| | | import { list, delLogininfor, cleanLogininfor, unlockLogininfor } from "@/api/monitor/logininfor"; |
| | | |
| | | const { proxy } = getCurrentInstance(); |
| | | const { sys_common_status } = proxy.useDict("sys_common_status"); |
| | | // const { sys_common_status } = proxy.useDict("sys_common_status"); |
| | | |
| | | const logininforList = ref([]); |
| | | const loading = ref(true); |
| | |
| | | const selectName = ref(""); |
| | | const total = ref(0); |
| | | const dateRange = ref([]); |
| | | const defaultSort = ref({ prop: "loginTime", order: "descending" }); |
| | | const defaultSort = ref({ prop: "loginTime", order: "desc" }); |
| | | |
| | | // 查询参数 |
| | | const queryParams = ref({ |
| | |
| | | orderByColumn: undefined, |
| | | isAsc: undefined |
| | | }); |
| | | const sysStatus = ref([ |
| | | { |
| | | label:'正常', |
| | | value:'0' |
| | | }, |
| | | { |
| | | label:'异常', |
| | | value:'1' |
| | | }, |
| | | ]) |
| | | |
| | | /** 查询登录日志列表 */ |
| | | function getList() { |
| | | loading.value = true; |
| | | list(proxy.addDateRange(queryParams.value, dateRange.value)).then(response => { |
| | | logininforList.value = response.rows; |
| | | total.value = response.total; |
| | | logininforList.value = response.data.list; |
| | | total.value = response.data.total; |
| | | loading.value = false; |
| | | }); |
| | | } |
| | |
| | | dateRange.value = []; |
| | | proxy.resetForm("queryRef"); |
| | | queryParams.value.pageNum = 1; |
| | | proxy.$refs["logininforRef"].sort(defaultSort.value.prop, defaultSort.value.order); |
| | | proxy.$refs["logininforRef"].sort(defaultSort.value.prop, 'desc'); |
| | | } |
| | | /** 多选框选中数据 */ |
| | | function handleSelectionChange(selection) { |
| | | ids.value = selection.map(item => item.infoId); |
| | | ids.value = selection.map(item => item.id); |
| | | multiple.value = !selection.length; |
| | | single.value = selection.length != 1; |
| | | selectName.value = selection.map(item => item.userName); |
| | |
| | | /** 排序触发事件 */ |
| | | function handleSortChange(column, prop, order) { |
| | | queryParams.value.orderByColumn = column.prop; |
| | | queryParams.value.isAsc = column.order; |
| | | queryParams.value.isAsc = column.order == 'descending' ?'desc':column.order == 'ascending'?'asc':'desc'; |
| | | getList(); |
| | | } |
| | | /** 删除按钮操作 */ |
| | | function handleDelete(row) { |
| | | const infoIds = row.infoId || ids.value; |
| | | const infoIds = row.id || ids.value; |
| | | proxy.$modal.confirm('是否确认删除访问编号为"' + infoIds + '"的数据项?').then(function () { |
| | | return delLogininfor(infoIds); |
| | | }).then(() => { |