From 886de155147766e78199b7f85346f553fb88bc1d Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期三, 05 三月 2025 09:56:41 +0800
Subject: [PATCH] ll

---
 admin/src/views/system/loginLog.vue |   61 +++++++++++++++++++-----------
 1 files changed, 39 insertions(+), 22 deletions(-)

diff --git a/admin/src/views/system/loginLog.vue b/admin/src/views/system/loginLog.vue
index ff319ab..11786a0 100644
--- a/admin/src/views/system/loginLog.vue
+++ b/admin/src/views/system/loginLog.vue
@@ -13,12 +13,12 @@
       </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-option value="true" label="鐧诲綍鎴愬姛" />
+          <el-option value="false" label="鐧诲綍澶辫触" />
         </el-select>
       </el-form-item>
       <el-form-item label="鐧诲綍鏃堕棿" prop="loginTime">
-        <el-date-picker
+        <!-- <el-date-picker
           v-model="searchDateRange"
           type="datetimerange"
           range-separator="鑷�"
@@ -26,7 +26,11 @@
           start-placeholder="寮�濮嬫椂闂�"
           end-placeholder="缁撴潫鏃堕棿"
           @change="handleSearchTimeChange"
-        ></el-date-picker>
+        ></el-date-picker> -->
+        <el-date-picker type="datetime" v-model="searchForm.startTime" value-format="yyyy-MM-dd HH:mm:ss"
+          placeholder="璇烽�夋嫨寮�濮嬫椂闂�" @change="changeRadio" />
+        <el-date-picker type="datetime" v-model="searchForm.endTime" value-format="yyyy-MM-dd HH:mm:ss"
+          placeholder="璇烽�夋嫨缁撴潫鏃堕棿" @change="changeRadio" />
       </el-form-item>
       <section>
         <el-button type="primary" @click="search">鎼滅储</el-button>
@@ -36,34 +40,27 @@
     </el-form>
     <!-- 琛ㄦ牸鍜屽垎椤� -->
     <template v-slot:table-wrap>
-      <el-table
-        v-loading="isWorking.search"
-        :data="tableData.list"
-        stripe
-        :default-sort="{prop: 'loginTime', order: 'descending'}"
-        @sort-change="handleSortChange"
-      >
+      <el-table v-loading="isWorking.search" :data="tableData.list" stripe
+        :default-sort="{ prop: 'loginTime', order: 'descending' }" @sort-change="handleSortChange">
         <el-table-column prop="loginUsername" label="鐧诲綍鐢ㄦ埛鍚�" min-width="100px"></el-table-column>
         <el-table-column prop="ip" label="鐧诲綍IP" min-width="120px"></el-table-column>
         <el-table-column prop="location" label="鐧诲綍鍦板潃" min-width="160px"></el-table-column>
         <el-table-column prop="clientInfo" label="瀹㈡埛绔�" min-width="160px"></el-table-column>
         <el-table-column prop="osInfo" label="鎿嶄綔绯荤粺" min-width="100px"></el-table-column>
         <el-table-column prop="platform" label="鐧诲綍骞冲彴" min-width="100px"></el-table-column>
-        <el-table-column prop="loginTime" label="鐧诲綍鏃堕棿" min-width="160px" sortable="custom" sort-by="LOGIN_TIME"></el-table-column>
+        <el-table-column prop="loginTime" label="鐧诲綍鏃堕棿" min-width="160px" sortable="custom"
+          sort-by="LOGIN_TIME"></el-table-column>
         <el-table-column prop="systemVersion" label="绯荤粺鐗堟湰" min-width="100px"></el-table-column>
         <el-table-column prop="serverIp" label="鏈嶅姟鍣↖P" min-width="120px"></el-table-column>
         <el-table-column prop="success" label="鐘舵��" min-width="100px">
           <template slot-scope="{row}">
-            {{row.success | statusText}}
+            {{ row.success | statusText }}
           </template>
         </el-table-column>
         <el-table-column prop="reason" label="澶辫触鍘熷洜" min-width="160px"></el-table-column>
       </el-table>
-      <pagination
-          @size-change="handleSizeChange"
-          @current-change="handlePageChange"
-          :pagination="tableData.pagination"
-      ></pagination>
+      <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination">
+      </pagination>
     </template>
   </TableLayout>
 </template>
@@ -77,7 +74,7 @@
   name: 'SystemLoginLog',
   extends: BaseTable,
   components: { TableLayout, Pagination },
-  data () {
+  data() {
     return {
       // 鎼滅储鏃堕棿鑼冨洿
       searchDateRange: [],
@@ -94,7 +91,7 @@
   },
   filters: {
     // 鐧诲綍鐘舵��
-    statusText (value) {
+    statusText(value) {
       if (value != null && !value) {
         return '鐧诲綍澶辫触'
       }
@@ -102,8 +99,28 @@
     }
   },
   methods: {
+    reset() {
+      this.searchForm = {
+        loginUsername: '',
+        ip: '',
+        serverIp: '',
+        success: '',
+        startTime: null,
+        endTime: null
+      }
+      this.search()
+    },
+    changeRadio() {
+
+      if (this.searchForm.startTime && this.searchForm.endTime && new Date(this.searchForm.startTime).getTime() > new Date(this.searchForm.endTime).getTime()) {
+        this.$message.error('寮�濮嬫椂闂翠笉鑳藉ぇ浜庣粨鏉熸椂闂�')
+        this.searchForm.startTime = ''
+        return
+      }
+      this.search()
+    },
     // 鏃堕棿鎼滅储鑼冨洿鍙樺寲
-    handleSearchTimeChange (value) {
+    handleSearchTimeChange(value) {
       this.searchForm.startTime = null
       this.searchForm.endTime = null
       if (value != null) {
@@ -113,7 +130,7 @@
       this.search()
     }
   },
-  created () {
+  created() {
     this.config({
       module: '鐧诲綍鏃ュ織',
       api: '/system/loginLog',

--
Gitblit v1.9.3