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

View File

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

View File

@ -1,6 +1,8 @@
<template> <template>
<div class="app-container"> <XdPageContainer class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <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-form-item label="登录地址" prop="ipaddr">
<el-input <el-input
v-model="queryParams.ipaddr" v-model="queryParams.ipaddr"
@ -10,15 +12,32 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="用户名称" prop="userName"> <el-form-item label="登录账号" prop="userName">
<el-input <el-input
v-model="queryParams.userName" v-model="queryParams.userName"
placeholder="请输入用户名称" placeholder="请输入登录账号"
clearable clearable
style="width: 240px;" style="width: 240px;"
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </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-form-item label="状态" prop="status">
<el-select <el-select
v-model="queryParams.status" v-model="queryParams.status"
@ -45,12 +64,41 @@
end-placeholder="结束日期" end-placeholder="结束日期"
></el-date-picker> ></el-date-picker>
</el-form-item> </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 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-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item> -->
</el-form> </SearchForm>
<el-row :gutter="10" class="mb8">
</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-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -83,46 +131,53 @@
v-hasPermi="['monitor:logininfor:export']" v-hasPermi="['monitor:logininfor:export']"
>导出</el-button> >导出</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
</div>
<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 type="selection" width="55" align="center" />
<el-table-column label="访问编号" align="center" prop="infoId" /> <!-- <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="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="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="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"> <el-table-column label="登录状态" align="center" prop="status">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.sys_common_status" :value="scope.row.status"/> <dict-tag :options="dict.type.sys_common_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作信息" align="center" prop="msg" /> <el-table-column label="操作信息" align="center" prop="msg" min-width="300" :show-overflow-tooltip="true" />
<el-table-column label="登录日期" align="center" prop="loginTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180"> <el-table-column label="数据来源" align="center" prop="dataFrom" :show-overflow-tooltip="true" />
<template slot-scope="scope">
<span>{{ parseTime(scope.row.loginTime) }}</span>
</template>
</el-table-column>
</el-table>
<pagination
</XdTable>
<!-- <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> /> -->
</div> </XdPageContainer>
</template> </template>
<script> <script>
import { list, delLogininfor, cleanLogininfor } from "@/api/monitor/logininfor"; 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 { export default {
name: "Logininfor", name: "Logininfor",
dicts: ['sys_common_status'], dicts: ['sys_common_status'],
components: {EmisSiteSimplePicker1,EmisUserSimplePicker1},
data() { data() {
return { return {
// 遮罩层 // 遮罩层