This commit is contained in:
linfso 2024-07-08 00:41:50 +08:00
parent 3ca90c7603
commit c451f92772
3 changed files with 106 additions and 29 deletions

View File

@ -7,8 +7,7 @@
:key="item.value"
:index="index"
:class="item.raw.cssClass"
>{{ item.label }}</span
>
>{{ item.label }}</span>
<el-tag
v-else
:disable-transitions="true"
@ -37,7 +36,8 @@ export default {
computed: {
values() {
if (this.value !== null && typeof this.value !== 'undefined') {
return Array.isArray(this.value) ? this.value : [String(this.value)];
// return Array.isArray(this.value) ? this.value : [String(this.value)];
return Array.isArray(this.value) ? this.value : this.value.split(',');
} else {
return [];
}

View File

@ -78,6 +78,9 @@
handle=".el-icon-s-operation"
@end="updateTable"
>
<div style="width:50%">
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
</div>
<div v-for="col in storageList" :key="col.label" class="setting-row">
<!-- <i class="el-icon-s-operation" /> -->
<i class="el-icon-s-operation icon iconfont icon-ui_drag_horizontally" />
@ -507,6 +510,8 @@ export default {
isMouseDown: true, // 是否需要(允许)处理鼠标的移动事件
tbSize:"",
name: '',
config: {
children: [],
@ -543,6 +548,9 @@ export default {
currentCellInfo:null,
currentSelectStr:null,
checkAll: false, //招标阶段 是否全选
isIndeterminate: false, //全选复选框标识
// 表格个性化记忆配置
isNeedDbSaveTpl:false,
fullUrl:null,
@ -938,6 +946,20 @@ export default {
// this.reload();
},
handleCheckAllChange(isCheckAll){
if(isCheckAll){
this.storageList.forEach(col=>{
col.show = true
});
}else{
this.storageList.forEach((col,index)=>{
if(index!=0){
col.show = false;
}
});
}
this.updateTable();
},
showOrHidden(val, clo) {
if (!val && this.storageList.filter(i => i.show).length === 0) {
this.$message.warning('列表最少显示一列')

View File

@ -1,6 +1,8 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<XdPageContainer class="app-container">
<SearchForm slot="pageHeader" class="queryForm" :model="queryParams" ref="queryForm" size="mini" :maxShow="9" label-width="100px" v-show="showSearch" @search="handleQuery" @reset="resetQuery">
<!-- <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> -->
<el-form-item label="登录地址" prop="ipaddr">
<el-input
v-model="queryParams.ipaddr"
@ -10,15 +12,32 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户名称" prop="userName">
<el-form-item label="登录账号" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入用户名称"
placeholder="请输入登录账号"
clearable
style="width: 240px;"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="登录名称" prop="nickName">
<el-input
v-model="queryParams.nickName"
placeholder="请输入登录名称"
clearable
style="width: 240px;"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item :label="$t('员工')" prop="userName">
<EmisUserSimplePicker1 :placeholder="$t('员工')" v-model="queryParams.userName"></EmisUserSimplePicker1>
</el-form-item>
<el-form-item label="所属网点" prop="loginSiteCode">
<EmisSiteSimplePicker1 v-model="queryParams.loginSiteCode" ></EmisSiteSimplePicker1>
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select
v-model="queryParams.status"
@ -45,14 +64,43 @@
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<!-- <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</el-form-item> -->
</SearchForm>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
</el-row>
<!-- <el-table ref="tables" v-loading="loading" :data="list" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange"> -->
<XdTable
slot="pageContent"
slot-scope="slotProps"
:height="(slotProps.contentHeight)+'px'"
ref="tables"
row-key="id"
storageName="logininfo_main"
v-loading="loading"
border
size="mini"
:data="list"
:showSearch.sync="showSearch"
:queryParams="queryParams"
:total="total"
@queryTable="getList"
@selection-change="handleSelectionChange"
:default-sort="defaultSort"
@sort-change="handleSortChange"
>
<div slot="toolbar">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="danger"
plain
@ -83,46 +131,53 @@
v-hasPermi="['monitor:logininfor:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table ref="tables" v-loading="loading" :data="list" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange">
</el-row>
</div>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="访问编号" align="center" prop="infoId" />
<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="infoId" /> -->
<el-table-column label="登录日期" align="center" prop="createTime" min-width="170" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="登录账号" align="center" prop="userName" :show-overflow-tooltip="true" min-width="130" />
<el-table-column label="登录名称" align="center" prop="nickName" :show-overflow-tooltip="true" min-width="130" />
<el-table-column label="所属网点" align="center" prop="loginSiteName" :show-overflow-tooltip="true" min-width="130" />
<el-table-column label="登录地址" align="center" prop="ipaddr" width="130" :show-overflow-tooltip="true" />
<el-table-column label="登录地点" align="center" prop="loginLocation" :show-overflow-tooltip="true" />
<el-table-column label="登录地点" align="center" prop="loginLocation" min-width="170" :show-overflow-tooltip="true" />
<el-table-column label="浏览器" align="center" prop="browser" :show-overflow-tooltip="true" />
<el-table-column label="操作系统" align="center" prop="os" />
<el-table-column label="操作系统" align="center" prop="os" :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="msg" />
<el-table-column label="登录日期" align="center" prop="loginTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.loginTime) }}</span>
</template>
</el-table-column>
</el-table>
<el-table-column label="操作信息" align="center" prop="msg" min-width="300" :show-overflow-tooltip="true" />
<el-table-column label="数据来源" align="center" prop="dataFrom" :show-overflow-tooltip="true" />
<pagination
</XdTable>
<!-- <pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
/> -->
</XdPageContainer>
</template>
<script>
import { list, delLogininfor, cleanLogininfor } from "@/api/monitor/logininfor";
import EmisSiteSimplePicker1 from '@/views/emis/EmisBaseTools/EmisSiteSimplePicker.vue';
import EmisUserSimplePicker1 from '@/views/emis/EmisBaseTools/EmisUserSimplePicker.vue';
export default {
name: "Logininfor",
dicts: ['sys_common_status'],
components: {EmisSiteSimplePicker1,EmisUserSimplePicker1},
data() {
return {
// 遮罩层