|  |  |  | 
|---|
|  |  |  | <TableLayout :permissions="['system:loginLog:query']"> | 
|---|
|  |  |  | <!-- 搜索表单 --> | 
|---|
|  |  |  | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> | 
|---|
|  |  |  | <el-form-item label="登录用户名" prop="loginUsername"> | 
|---|
|  |  |  | <el-form-item label="用户名" prop="loginUsername"> | 
|---|
|  |  |  | <el-input v-model="searchForm.loginUsername" placeholder="请输入登录用户名" @keypress.enter.native="search"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="登录IP" prop="ip"> | 
|---|
|  |  |  | <!-- <el-form-item label="登录IP" prop="ip"> | 
|---|
|  |  |  | <el-input v-model="searchForm.ip" placeholder="请输入登录IP" @keypress.enter.native="search"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="服务器IP" prop="serverIp"> | 
|---|
|  |  |  | <el-input v-model="searchForm.serverIp" placeholder="请输入服务器IP" @keypress.enter.native="search"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="是否登录成功" prop="success"> | 
|---|
|  |  |  | </el-form-item>--> | 
|---|
|  |  |  | <el-form-item label="状态" prop="success"> | 
|---|
|  |  |  | <el-select v-model="searchForm.success" placeholder="请选择是否登录状态" clearable @change="search"> | 
|---|
|  |  |  | <el-option value="true" label="登录成功"/> | 
|---|
|  |  |  | <el-option value="false" label="登录失败"/> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="登录时间" prop="loginTime"> | 
|---|
|  |  |  | <el-form-item label="来源" prop="orgin"> | 
|---|
|  |  |  | <el-select v-model="searchForm.orgin" placeholder="请选择登录来源" clearable @change="search"> | 
|---|
|  |  |  | <el-option value="0" label="PC登陆"/> | 
|---|
|  |  |  | <el-option value="1" label="钉钉平台"/> | 
|---|
|  |  |  | <el-option value="2" label="羚羊平台"/> | 
|---|
|  |  |  | <el-option value="3" label="EDGP平台"/> | 
|---|
|  |  |  | <el-option value="4" label="微信小程序"/> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="时间" prop="loginTime"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | v-model="searchDateRange" | 
|---|
|  |  |  | type="datetimerange" | 
|---|
|  |  |  | 
|---|
|  |  |  | :data="tableData.list" | 
|---|
|  |  |  | stripe | 
|---|
|  |  |  | border | 
|---|
|  |  |  | :default-sort="{prop: 'loginTime', order: 'descending'}" | 
|---|
|  |  |  | @sort-change="handleSortChange" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- :default-sort="{prop: 'loginTime', order: 'descending'}" --> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column prop="orgin" label="来源" align="center" min-width="100px"> | 
|---|
|  |  |  | <template slot-scope="{row}"> | 
|---|
|  |  |  | {{row.orgin | orginText}} | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="companyUserId" label="用户id" align="center" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="companyName" label="企业名称" align="center" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="loginUsername" label="登录用户名" align="center" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="companyUserName" label="企业用户名称" align="center" min-width="100px"> | 
|---|
|  |  |  | <template slot-scope="{row}"> | 
|---|
|  |  |  | {{ row.companyUserName}} | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="ip" label="登录IP" align="center" min-width="120px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="location" label="登录地址" align="center" min-width="160px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="clientInfo" label="客户端" align="center" min-width="160px"></el-table-column> | 
|---|
|  |  |  | 
|---|
|  |  |  | {{row.success | statusText}} | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="reason" label="失败原因" min-width="160px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="reason" label="失败原因" min-width="160px" show-overflow-tooltip> | 
|---|
|  |  |  | <template slot-scope="{row}"> | 
|---|
|  |  |  | <span class="lang-title-style">{{ row.reason }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | <pagination | 
|---|
|  |  |  | @size-change="handleSizeChange" | 
|---|
|  |  |  | 
|---|
|  |  |  | serverIp: '', | 
|---|
|  |  |  | success: '', | 
|---|
|  |  |  | startTime: null, | 
|---|
|  |  |  | endTime: null | 
|---|
|  |  |  | endTime: null, | 
|---|
|  |  |  | orgin:'' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | return '登录成功' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return '登录失败' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | orginText (value) { | 
|---|
|  |  |  | if (value ==0) { | 
|---|
|  |  |  | return 'pc平台' | 
|---|
|  |  |  | }else  if (value == 1) { | 
|---|
|  |  |  | return '钉钉平台' | 
|---|
|  |  |  | }else  if (value == 2) { | 
|---|
|  |  |  | return '羚羊平台' | 
|---|
|  |  |  | }else  if (value == 3) { | 
|---|
|  |  |  | return 'EDGP平台' | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | return 'pc-平台'; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | // 时间搜索范围变化 | 
|---|
|  |  |  | handleSearchTimeChange (value) { | 
|---|
|  |  |  | this.searchForm.startTime = null | 
|---|
|  |  |  | this.searchForm.endTime = null | 
|---|
|  |  |  | if (value != null) { | 
|---|
|  |  |  | this.searchForm.startTime = value[0] | 
|---|
|  |  |  | this.searchForm.endTime = value[1] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created () { | 
|---|
|  |  |  | this.config({ | 
|---|
|  |  |  | 
|---|
|  |  |  | }] | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | handleSearchTimeChange (value) { | 
|---|
|  |  |  | this.searchForm.startTime = null | 
|---|
|  |  |  | this.searchForm.endTime = null | 
|---|
|  |  |  | if (value != null) { | 
|---|
|  |  |  | this.searchForm.startTime = value[0] | 
|---|
|  |  |  | this.searchForm.endTime = value[1] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | reset() { | 
|---|
|  |  |  | this.$refs.searchForm.resetFields() | 
|---|
|  |  |  | this.searchDateRange = [] | 
|---|
|  |  |  | this.searchForm.startTime = '' | 
|---|
|  |  |  | this.searchForm.endTime = '' | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|