From cb80de3742d66cfee20bc3136c735e5ca5a7d45c Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期三, 29 十一月 2023 12:44:42 +0800
Subject: [PATCH] 优化字典标签支持自定义分隔符

---
 src/views/monitor/logininfor/index.vue |   52 ++++++++++++++++++++++++++++++++++------------------
 1 files changed, 34 insertions(+), 18 deletions(-)

diff --git a/src/views/monitor/logininfor/index.vue b/src/views/monitor/logininfor/index.vue
index 7b3beaf..3d8ab39 100644
--- a/src/views/monitor/logininfor/index.vue
+++ b/src/views/monitor/logininfor/index.vue
@@ -6,7 +6,6 @@
                v-model="queryParams.ipaddr"
                placeholder="璇疯緭鍏ョ櫥褰曞湴鍧�"
                clearable
-               size="small"
                style="width: 240px;"
                @keyup.enter="handleQuery"
             />
@@ -16,7 +15,6 @@
                v-model="queryParams.userName"
                placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
                clearable
-               size="small"
                style="width: 240px;"
                @keyup.enter="handleQuery"
             />
@@ -26,7 +24,6 @@
                v-model="queryParams.status"
                placeholder="鐧诲綍鐘舵��"
                clearable
-               size="small"
                style="width: 240px"
             >
                <el-option
@@ -37,21 +34,20 @@
                />
             </el-select>
          </el-form-item>
-         <el-form-item label="鐧诲綍鏃堕棿">
+         <el-form-item label="鐧诲綍鏃堕棿" style="width: 308px">
             <el-date-picker
                v-model="dateRange"
-               size="small"
-               style="width: 240px"
-               value-format="YYYY-MM-DD"
+               value-format="YYYY-MM-DD HH:mm:ss"
                type="daterange"
                range-separator="-"
                start-placeholder="寮�濮嬫棩鏈�"
                end-placeholder="缁撴潫鏃ユ湡"
+               :default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]"
             ></el-date-picker>
          </el-form-item>
          <el-form-item>
-            <el-button type="primary" icon="Search" size="mini" @click="handleQuery">鎼滅储</el-button>
-            <el-button icon="Refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+            <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button>
+            <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
          </el-form-item>
       </el-form>
 
@@ -61,10 +57,9 @@
                type="danger"
                plain
                icon="Delete"
-               size="mini"
                :disabled="multiple"
                @click="handleDelete"
-               v-hasPermi="['system:logininfor:remove']"
+               v-hasPermi="['monitor:logininfor:remove']"
             >鍒犻櫎</el-button>
          </el-col>
          <el-col :span="1.5">
@@ -72,19 +67,27 @@
                type="danger"
                plain
                icon="Delete"
-               size="mini"
                @click="handleClean"
-               v-hasPermi="['system:logininfor:remove']"
+               v-hasPermi="['monitor:logininfor:remove']"
             >娓呯┖</el-button>
+         </el-col>
+         <el-col :span="1.5">
+            <el-button
+               type="primary"
+               plain
+               icon="Unlock"
+               :disabled="single"
+               @click="handleUnlock"
+               v-hasPermi="['monitor:logininfor:unlock']"
+            >瑙i攣</el-button>
          </el-col>
          <el-col :span="1.5">
             <el-button
                type="warning"
                plain
                icon="Download"
-               size="mini"
                @click="handleExport"
-               v-hasPermi="['system:logininfor:export']"
+               v-hasPermi="['monitor:logininfor:export']"
             >瀵煎嚭</el-button>
          </el-col>
          <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
@@ -103,7 +106,7 @@
                <dict-tag :options="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="msg" :show-overflow-tooltip="true" />
          <el-table-column label="璁块棶鏃堕棿" align="center" prop="loginTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
             <template #default="scope">
                <span>{{ parseTime(scope.row.loginTime) }}</span>
@@ -122,7 +125,7 @@
 </template>
 
 <script setup name="Logininfor">
-import { list, delLogininfor, cleanLogininfor } from "@/api/monitor/logininfor";
+import { list, delLogininfor, cleanLogininfor, unlockLogininfor } from "@/api/monitor/logininfor";
 
 const { proxy } = getCurrentInstance();
 const { sys_common_status } = proxy.useDict("sys_common_status");
@@ -131,7 +134,9 @@
 const loading = ref(true);
 const showSearch = ref(true);
 const ids = ref([]);
+const single = ref(true);
 const multiple = ref(true);
+const selectName = ref("");
 const total = ref(0);
 const dateRange = ref([]);
 const defaultSort = ref({ prop: "loginTime", order: "descending" });
@@ -165,13 +170,15 @@
 function resetQuery() {
   dateRange.value = [];
   proxy.resetForm("queryRef");
+  queryParams.value.pageNum = 1;
   proxy.$refs["logininforRef"].sort(defaultSort.value.prop, defaultSort.value.order);
-  handleQuery();
 }
 /** 澶氶�夋閫変腑鏁版嵁 */
 function handleSelectionChange(selection) {
   ids.value = selection.map(item => item.infoId);
   multiple.value = !selection.length;
+  single.value = selection.length != 1;
+  selectName.value = selection.map(item => item.userName);
 }
 /** 鎺掑簭瑙﹀彂浜嬩欢 */
 function handleSortChange(column, prop, order) {
@@ -198,6 +205,15 @@
     proxy.$modal.msgSuccess("娓呯┖鎴愬姛");
   }).catch(() => {});
 }
+/** 瑙i攣鎸夐挳鎿嶄綔 */
+function handleUnlock() {
+  const username = selectName.value;
+  proxy.$modal.confirm('鏄惁纭瑙i攣鐢ㄦ埛"' + username + '"鏁版嵁椤�?').then(function () {
+    return unlockLogininfor(username);
+  }).then(() => {
+    proxy.$modal.msgSuccess("鐢ㄦ埛" + username + "瑙i攣鎴愬姛");
+  }).catch(() => {});
+}
 /** 瀵煎嚭鎸夐挳鎿嶄綔 */
 function handleExport() {
   proxy.download("monitor/logininfor/export", {

--
Gitblit v1.9.3