修复部分样式bug
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -102,6 +102,11 @@ const handleLogin = async () => {
|
||||
|
||||
// 组件挂载时添加键盘监听
|
||||
onMounted(() => {
|
||||
// 自动回填:如果曾经成功登录过,直接从 localStorage 取出密码
|
||||
const rememberedPassword = localStorage.getItem('rememberedPassword')
|
||||
if (rememberedPassword) {
|
||||
loginForm.password = rememberedPassword
|
||||
}
|
||||
window.addEventListener('keypress', handleKeyPress)
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user