feat: 累积功能变更 — 聊天集成、租户管理、小程序更新、ETL 增强、迁移脚本
包含多个会话的累积代码变更: - backend: AI 聊天服务、触发器调度、认证增强、WebSocket、调度器最小间隔 - admin-web: ETL 状态页、任务管理、调度配置、登录优化 - miniprogram: 看板页面、聊天集成、UI 组件、导航更新 - etl: DWS 新任务(finance_area_daily/board_cache)、连接器增强 - tenant-admin: 项目初始化 - db: 19 个迁移脚本(etl_feiqiu 11 + zqyy_app 8) - packages/shared: 枚举和工具函数更新 - tools: 数据库工具、报表生成、健康检查 - docs: PRD/架构/部署/合约文档更新 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
65
docs/prd/Neo_Specs/review-audit/P6-NS1-07.md
Normal file
65
docs/prd/Neo_Specs/review-audit/P6-NS1-07.md
Normal file
@@ -0,0 +1,65 @@
|
||||
# P6→NS1/RNS1 缺失项 #7:任务优先级的视觉标识
|
||||
|
||||
## 简要结论
|
||||
- 状态:⚠️ 部分解决
|
||||
- 风险等级:🟠 中
|
||||
- 任务类型(高优先召回/优先召回/关系构建/客户回访)有完整的颜色和标签视觉体系,但缺少独立的「高/中/低优先级」视觉标识。
|
||||
|
||||
## 详细审查
|
||||
|
||||
### 审查范围
|
||||
- `apps/miniprogram/miniprogram/utils/vi-colors.ts` — TASK_TYPE_COLORS
|
||||
- `apps/miniprogram/miniprogram/utils/task-config.ts` — TASK_TYPE_CONFIG
|
||||
- `apps/miniprogram/miniprogram/pages/task-list/task-list.wxml` — 卡片标签
|
||||
- `apps/miniprogram/miniprogram/pages/task-list/task-list.wxss` — 标签样式
|
||||
- `apps/backend/app/services/task_manager.py` — priority_score 字段
|
||||
|
||||
### 发现
|
||||
|
||||
**已实现的任务类型视觉体系:**
|
||||
|
||||
4 种任务类型各有独立的颜色方案:
|
||||
|
||||
| 类型 | 标签渐变 | 左侧彩条 | 标签文字 |
|
||||
|------|----------|----------|----------|
|
||||
| high_priority(高优先召回) | #b91c1c → #dc2626(红) | #dc2626 | 白色 |
|
||||
| priority_recall(优先召回) | #ea580c → #f97316(橙) | #f97316 | 白色 |
|
||||
| relationship(关系构建) | #ec4899 → #f472b6(粉) | #f472b6 | 白色 |
|
||||
| callback(客户回访) | #0d9488 → #14b8a6(青) | #14b8a6 | 白色 |
|
||||
|
||||
**缺失的优先级视觉标识:**
|
||||
|
||||
P6 定义了独立于任务类型的「高/中/低优先级」视觉标识(颜色和图标),但当前实现中:
|
||||
- 后端返回 `priority_score`(数值),但前端未使用此字段进行视觉区分
|
||||
- 前端仅按 `taskType` 着色,未按 `priority_score` 显示优先级图标或颜色
|
||||
- `vi-colors.ts` 和 `task-config.ts` 中无 `priority` 相关的颜色/图标定义
|
||||
|
||||
### 证据
|
||||
|
||||
后端返回 priority_score 但前端未消费:
|
||||
```python
|
||||
# task_manager.py get_task_list_v2()
|
||||
items.append({
|
||||
...
|
||||
"task_type": task_type,
|
||||
# priority_score 未包含在返回数据中
|
||||
})
|
||||
```
|
||||
|
||||
前端 enrichTask() 中无 priority 相关处理:
|
||||
```typescript
|
||||
function enrichTask(task: Task): EnrichedTask {
|
||||
return {
|
||||
...task,
|
||||
// 无 priority 相关字段
|
||||
deadlineLabel: formatDeadline((task as any).deadline).text,
|
||||
deadlineStyle: formatDeadline((task as any).deadline).style,
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 建议(如未完全解决)
|
||||
1. 在后端 items 中返回 `priority_score` 或映射为 `priority_level`(high/medium/low)
|
||||
2. 在 `vi-colors.ts` 中添加 `PRIORITY_COLORS` 定义(如:高=红色火焰图标、中=橙色、低=灰色)
|
||||
3. 在卡片中添加优先级小图标或角标,与任务类型标签并列显示
|
||||
4. 注意:当前任务类型名称已隐含优先级信息(「高优先召回」),是否需要额外的优先级标识需与产品确认
|
||||
Reference in New Issue
Block a user