修复部分样式bug

This commit is contained in:
2025-12-29 16:14:28 +08:00
parent b1da484431
commit e635b2e160
7 changed files with 77 additions and 39 deletions

View File

@@ -12,6 +12,8 @@ export const useAuthStore = defineStore('auth', {
this.username = username
localStorage.setItem('isLoggedIn', 'true')
localStorage.setItem('username', username)
// 记住密码:按需求将密码持久化到 localStorage
localStorage.setItem('rememberedPassword', password)
return true
}
return false

View File

@@ -1,7 +1,7 @@
<template>
<div class="conversation-list-container">
<!-- 筛选表单折叠面板 -->
<el-collapse v-model="activeCollapse" class="filter-collapse">
<el-collapse v-model="activeCollapse" class="filter-collapse" size="small">
<el-collapse-item name="filter">
<template #title>
<div class="collapse-header">
@@ -14,7 +14,8 @@
</template>
<el-form :model="filterForm" inline label-width="80px" size="small">
<el-form-item label="快捷范围">
<el-select v-model="filterForm.quickRange" placeholder="请选择" clearable style="width: 150px" @change="handleQuickRangeChange">
<el-select v-model="filterForm.quickRange" placeholder="请选择" clearable style="width: 150px"
@change="handleQuickRangeChange">
<el-option label="今天" value="today"></el-option>
<el-option label="最近3天" value="last3"></el-option>
<el-option label="最近7天" value="last7"></el-option>
@@ -23,27 +24,13 @@
</el-form-item>
<el-form-item label="开始日期">
<el-date-picker
v-model="filterForm.startDate"
type="date"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
clearable
class="date-picker"
@change="handleManualDateChange"
/>
<el-date-picker v-model="filterForm.startDate" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
clearable class="date-picker" @change="handleManualDateChange" />
</el-form-item>
<el-form-item label="结束日期">
<el-date-picker
v-model="filterForm.endDate"
type="date"
format="YYYY-MM-DD"
value-format="YYYY-MM-DD"
clearable
class="date-picker"
@change="handleManualDateChange"
/>
<el-date-picker v-model="filterForm.endDate" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
clearable class="date-picker" @change="handleManualDateChange" />
</el-form-item>
<el-form-item label="用户">
@@ -74,22 +61,18 @@
<el-scrollbar :style="{ height: scrollbarHeight }" @scroll="handleScroll">
<div v-loading="loading" class="descriptions-container">
<div v-for="(item, index) in conversationList" :key="index" class="descriptions-item">
<el-descriptions :column="1" size="small" label-width="0px">
<el-descriptions-item label="">
{{ formatDateTime(item.recordTime) }} | {{ item.userName }} | {{ item.department }}
<el-tag :type="item.messageType === 1 ? 'success' : ''">
{{ item.messageType === 1 ? '公有' : '私有' }}
</el-tag>
<el-tag :type="item.sendMethod === '文字' ? 'success' : ''">
{{ item.sendMethod === 'text' ? '文字' : '语音' }}{{ item.speakingTime ? ' | ' + item.speakingTime + '' :
''
}}
</el-tag>
</el-descriptions-item>
<el-descriptions-item label="">
{{ item.conversationContent }}
</el-descriptions-item>
</el-descriptions>
<el-text type="info" size="small">
{{ formatDateTime(item.recordTime) }} | {{ item.userName }} | {{ item.department }} |
<el-icon v-if="item.messageType === 1"><OfficeBuilding /></el-icon>
<el-icon v-else><User /></el-icon>
|
<el-icon v-if="item.sendMethod === 'text'"><EditPen /></el-icon>
<el-icon v-else><Microphone /></el-icon>
{{ item.speakingTime ? item.speakingTime + 's' : '' }}
</el-text>
<br />
<el-text size="small">{{ item.conversationContent }}</el-text>
</div>
<!-- 加载更多提示 -->
@@ -112,7 +95,7 @@ import { ref, reactive, onMounted, computed, watch } from 'vue'
import { ElMessage } from 'element-plus'
import request from '../utils/request'
import { formatPhoneNumber, formatDateTime, formatTimestamp } from '../utils/formatters'
import { Loading } from '@element-plus/icons-vue'
import { Loading, OfficeBuilding, User, EditPen, Microphone } from '@element-plus/icons-vue'
// 加载状态
const loading = ref(false)
@@ -237,7 +220,7 @@ const handleUserSearch = (query) => {
// 过滤用户列表
setTimeout(() => {
const allUsers = originalUserList.value
userList.value = allUsers.filter(user =>
userList.value = allUsers.filter(user =>
user.userName.toLowerCase().includes(query.toLowerCase())
)
userLoading.value = false
@@ -436,7 +419,7 @@ onMounted(() => {
/* 每个Descriptions项的样式 */
.descriptions-item {
margin-bottom: 20px;
margin-bottom: 2px;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);

View File

@@ -102,6 +102,11 @@ const handleLogin = async () => {
// 组件挂载时添加键盘监听
onMounted(() => {
// 自动回填:如果曾经成功登录过,直接从 localStorage 取出密码
const rememberedPassword = localStorage.getItem('rememberedPassword')
if (rememberedPassword) {
loginForm.password = rememberedPassword
}
window.addEventListener('keypress', handleKeyPress)
})