# 首页任务列表样式优化说明 ## 修改概述 将首页(index.vue)的任务列表样式调整为与任务功能页面(task/index.vue)一致,提升用户体验的一致性。 ## 主要改进 ### 1. 任务头部优化 **之前**: - 标题独立一行 - 没有状态标签 **现在**: - 标题和状态标签并排显示 - 状态标签带有颜色标识,更直观 ```vue {{ getTaskTypeText(task.type) }} - {{ task.vehicle }} {{ getStatusText(task.status) }} ``` ### 2. 任务编号突出显示 **之前**: - 任务编号与其他信息混在一起 **现在**: - 任务编号单独一行 - 使用虚线边框分隔 - 使用等宽字体(monospace)提升可读性 ```vue {{ task.taskNo }} ``` ### 3. 状态颜色标识 添加了完整的状态颜色系统,与任务页面保持一致: | 状态 | 颜色 | 背景色 | |------|------|--------| | 待处理 (PENDING) | 橙色 #ff9500 | #fff3e0 | | 出发中 (DEPARTING) | 蓝色 #007AFF | #e3f2fd | | 已到达 (ARRIVED) | 紫色 #9c27b0 | #f3e5f5 | | 返程中 (RETURNING) | 青色 #009688 | #e0f2f1 | | 已完成 (COMPLETED) | 绿色 #34C759 | #e8f5e9 | | 已取消 (CANCELLED) | 灰色 #999 | #f5f5f5 | | 处理中 (IN_PROGRESS) | 蓝色 #007AFF | #e3f2fd | ### 4. 信息展示优化 **调整内容**: - 移除了任务状态信息行(已在头部显示) - 优化了出发地和目的地的显示位置 - 保持出发时间和执行人员的显示 **布局结构**: ``` ┌─────────────────────────────────────┐ │ 急救转运 - 粤A12345 [待处理] │ ├─────────────────────────────────────┤ │ TD1021 │ ← 任务编号 ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤ │ 出发地: 广州天河 目的地: 广州东站 │ │ 出发时间: 13:20 执行人员: 张三 │ └─────────────────────────────────────┘ │ [出发] [取消] │ └─────────────────────────────────────┘ ``` ## 代码变更 ### 模板变更 ```vue {{ getTaskTypeText(task.type) }} - {{ task.vehicle }} 任务编号: {{ task.taskNo }} 任务状态: {{ getStatusText(task.status) }} {{ getTaskTypeText(task.type) }} - {{ task.vehicle }} {{ getStatusText(task.status) }} {{ task.taskNo }} ``` ### 方法新增 添加了 `getStatusClass()` 方法: ```javascript getStatusClass(status) { const statusClassMap = { 'PENDING': 'status-pending', 'DEPARTING': 'status-departing', 'ARRIVED': 'status-arrived', 'RETURNING': 'status-returning', 'COMPLETED': 'status-completed', 'CANCELLED': 'status-cancelled', 'IN_PROGRESS': 'status-in-progress' } return statusClassMap[status] || 'status-default' } ``` ### 样式变更 新增样式类: ```scss .task-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 15rpx; .task-title { flex: 1; font-size: 32rpx; font-weight: bold; padding-right: 20rpx; line-height: 1.4; } .task-status { padding: 8rpx 20rpx; border-radius: 30rpx; font-size: 24rpx; white-space: nowrap; flex-shrink: 0; &.status-pending { /* 橙色 */ } &.status-departing { /* 蓝色 */ } &.status-arrived { /* 紫色 */ } &.status-returning { /* 青色 */ } &.status-completed { /* 绿色 */ } &.status-cancelled { /* 灰色 */ } } } .task-code-row { margin-bottom: 15rpx; padding: 10rpx 0; border-bottom: 1rpx dashed #e0e0e0; .task-code { font-size: 28rpx; color: #333; font-weight: 500; font-family: monospace; } } ``` ## 视觉对比 ### 优化前 ``` ┌─────────────────────────────────────┐ │ 急救转运 - 粤A12345 │ │ │ │ 任务编号: TD1021 任务状态: 待处理│ │ 出发地: 广州天河 目的地: 广州东站 │ │ 出发时间: 13:20 执行人员: 张三 │ └─────────────────────────────────────┘ ``` ### 优化后 ``` ┌─────────────────────────────────────┐ │ 急救转运 - 粤A12345 [待处理] │ ← 状态标签带颜色 ├─────────────────────────────────────┤ │ TD1021 │ ← 编号突出显示 ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┤ │ 出发地: 广州天河 目的地: 广州东站 │ │ 出发时间: 13:20 执行人员: 张三 │ └─────────────────────────────────────┘ ``` ## 一致性保证 ### 与任务页面的一致性 | 特性 | 首页 | 任务页面 | 状态 | |------|------|---------|------| | 任务头部布局 | ✅ | ✅ | 一致 | | 状态标签颜色 | ✅ | ✅ | 一致 | | 任务编号样式 | ✅ | ✅ | 一致 | | 信息行布局 | ✅ | ✅ | 一致 | | 操作按钮样式 | ✅ | ✅ | 一致 | ## 用户体验提升 1. **视觉一致性**:首页和任务页面样式统一,降低学习成本 2. **信息层级**:通过颜色和布局突出重要信息(状态、编号) 3. **易读性**:任务编号使用等宽字体,更易识别 4. **直观性**:状态颜色标识,一眼就能看出任务状态 ## 版本历史 - **2025-01-25 v1**: 初始版本 - ✅ 调整任务头部布局,添加状态标签 - ✅ 任务编号单独一行显示 - ✅ 添加完整的状态颜色系统 - ✅ 优化信息展示结构 - ✅ 与任务页面样式保持一致