chore: 完成提醒模块样式优化和归档功能
- 优化提醒卡片样式,统一黑白灰配色 - 添加checkbox勾选动画和过期提醒淡出效果 - 修复过期检测逻辑(精确到时间点而非仅日期) - 完善归档页功能(恢复/删除已过期完成提醒) - 更新PRD文档,添加实施状态追踪和后续开发计划 Co-Authored-By: Claude (MiniMax-M2.1) <noreply@anthropic.com>
This commit is contained in:
parent
83a6acd1e5
commit
1559830024
Binary file not shown.
|
Before Width: | Height: | Size: 34 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 506 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 81 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 45 KiB |
147
docs/prd.md
147
docs/prd.md
@ -4,9 +4,10 @@
|
|||||||
|
|
||||||
| 项目 | 内容 |
|
| 项目 | 内容 |
|
||||||
|-----|------|
|
|-----|------|
|
||||||
| **版本号** | v1.0.0 |
|
| **版本号** | v1.0.1 |
|
||||||
| **状态** | 待评审 |
|
| **状态** | 开发中 |
|
||||||
| **创建日期** | 2026-01-28 |
|
| **创建日期** | 2026-01-28 |
|
||||||
|
| **最近更新** | 2026-02-03 |
|
||||||
| **目标用户** | 需要管理纪念日、提醒任务的普通用户 |
|
| **目标用户** | 需要管理纪念日、提醒任务的普通用户 |
|
||||||
| **产品定位** | 轻便、灵活的倒数日和提醒App,专注提醒功能 |
|
| **产品定位** | 轻便、灵活的倒数日和提醒App,专注提醒功能 |
|
||||||
|
|
||||||
@ -1574,3 +1575,145 @@ Home页面采用三栏布局,总宽度1200px,居中显示。
|
|||||||
| 版本 | 日期 | 修改内容 | 修改人 |
|
| 版本 | 日期 | 修改内容 | 修改人 |
|
||||||
|------|------|----------|--------|
|
|------|------|----------|--------|
|
||||||
| v1.0.0 | 2026-01-28 | 初稿完成 | 产品经理 |
|
| v1.0.0 | 2026-01-28 | 初稿完成 | 产品经理 |
|
||||||
|
| v1.0.1 | 2026-02-03 | 完善提醒模块,实现归档页、设置页、优化样式 | 产品经理 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 10 实施状态追踪
|
||||||
|
|
||||||
|
### 10.1 功能实现状态
|
||||||
|
|
||||||
|
| 模块 | 功能点 | 状态 | 备注 |
|
||||||
|
|------|--------|------|------|
|
||||||
|
| **认证模块** | 用户注册 | ✅ 已完成 | 邮箱密码认证 |
|
||||||
|
| | 用户登录 | ✅ 已完成 | JWT登录态 |
|
||||||
|
| | 登录态保持 | ✅ 已完成 | localStorage 30天 |
|
||||||
|
| | 登出功能 | ✅ 已完成 | |
|
||||||
|
| **纪念日模块** | 查看列表 | ✅ 已完成 | 倒计时显示 |
|
||||||
|
| | 添加纪念日 | ✅ 已完成 | AI+手动添加 |
|
||||||
|
| | 编辑纪念日 | ✅ 已完成 | 详情弹窗 |
|
||||||
|
| | 删除纪念日 | ✅ 已完成 | |
|
||||||
|
| | 内置节假日 | ✅ 已完成 | 农历转换修复 |
|
||||||
|
| | 倒计时计算 | ✅ 已完成 | |
|
||||||
|
| **提醒模块** | 查看列表 | ✅ 已完成 | 分组显示 |
|
||||||
|
| | 添加提醒 | ✅ 已完成 | AI+手动添加 |
|
||||||
|
| | 编辑提醒 | ✅ 已完成 | 详情弹窗 |
|
||||||
|
| | 删除提醒 | ✅ 已完成 | |
|
||||||
|
| | 标记完成 | ✅ 已完成 | checkbox交互 |
|
||||||
|
| | 过期检测 | ✅ 已完成 | 精确到时间点 |
|
||||||
|
| | 已过期分组 | ✅ 已完成 | 红色高亮 |
|
||||||
|
| | 归档功能 | ✅ 已完成 | 独立归档页 |
|
||||||
|
| **便签模块** | 查看便签 | ✅ 已完成 | |
|
||||||
|
| | 编辑便签 | ✅ 已完成 | Markdown支持 |
|
||||||
|
| | 自动保存 | ✅ 已完成 | |
|
||||||
|
| **AI对话** | 自然语言解析 | ✅ 已完成 | |
|
||||||
|
| | 解析确认 | ✅ 已完成 | |
|
||||||
|
| | 创建纪念日/提醒 | ✅ 已完成 | |
|
||||||
|
| **设置** | 显示设置 | ✅ 已完成 | 节假日显示开关 |
|
||||||
|
| **其他** | 归档页 | ✅ 已完成 | 恢复/删除功能 |
|
||||||
|
| | 设置页 | ✅ 已完成 | 基础框架 |
|
||||||
|
|
||||||
|
### 10.2 提醒模块当前实现详情
|
||||||
|
|
||||||
|
#### 10.2.1 分组逻辑
|
||||||
|
|
||||||
|
```
|
||||||
|
提醒按以下规则分组显示:
|
||||||
|
- 今天:eventDate < tomorrow (今晚24点前)
|
||||||
|
- 明天:tomorrow <= eventDate < dayAfterTomorrow
|
||||||
|
- 更久之后:eventDate >= dayAfterTomorrow
|
||||||
|
- 已错过:eventDate < now (精确到时间点,不只是日期)
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 10.2.2 状态样式
|
||||||
|
|
||||||
|
| 状态 | 边框 | 背景 | 文字颜色 | 时间颜色 |
|
||||||
|
|------|------|------|----------|----------|
|
||||||
|
| 默认 | 浅灰 | 透明 | #1a1a1a | #666 |
|
||||||
|
| 已过期 | 浅红(左边框3px) | 浅红 | #666 | #c41c1c |
|
||||||
|
| 已完成 | 浅灰 | 透明 | #999 | #bbb |
|
||||||
|
|
||||||
|
#### 10.2.3 交互效果
|
||||||
|
|
||||||
|
- **checkbox点击**:切换完成状态,已过期提醒有淡出动画
|
||||||
|
- **卡片点击**:打开编辑弹窗
|
||||||
|
- **悬停效果**:卡片轻微上浮,更多按钮渐显
|
||||||
|
- **勾选动画**:checkbox 脉冲动画
|
||||||
|
|
||||||
|
### 10.3 技术优化项
|
||||||
|
|
||||||
|
| 项目 | 状态 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| 乐观更新 | ✅ 已完成 | UI即时响应,失败回滚 |
|
||||||
|
| 状态持久化 | ✅ 已完成 | localStorage + 后端 |
|
||||||
|
| API数据覆盖 | ✅ 已修复 | 避免undefined覆盖有效值 |
|
||||||
|
| 后端is_completed | ✅ 已修复 | zod schema添加字段 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 11 后续开发计划
|
||||||
|
|
||||||
|
### 11.1 短期计划(v1.0.2)- 核心体验优化
|
||||||
|
|
||||||
|
**目标**:打磨核心功能,提升用户体验稳定性
|
||||||
|
|
||||||
|
| 优先级 | 功能 | 描述 | 预估工时 |
|
||||||
|
|--------|------|------|----------|
|
||||||
|
| P0 | 提醒弹窗完善 | 添加日期时间选择器、表单验证 | 0.5天 |
|
||||||
|
| P0 | 纪念日弹窗完善 | 添加农历选择、重复方式下拉 | 0.5天 |
|
||||||
|
| P1 | 节日显示开关 | 设置页控制是否显示法定节假日 | 0.25天 |
|
||||||
|
| P1 | 移动端适配 | 响应式布局优化 | 0.5天 |
|
||||||
|
| P2 | 加载状态优化 | 添加骨架屏、loading动画 | 0.25天 |
|
||||||
|
| P2 | 错误提示优化 | 统一错误处理和提示样式 | 0.25天 |
|
||||||
|
|
||||||
|
### 11.2 中期计划(v1.1.0)- 功能增强
|
||||||
|
|
||||||
|
**目标**:增强核心功能,添加辅助功能
|
||||||
|
|
||||||
|
| 优先级 | 功能 | 描述 | 预估工时 |
|
||||||
|
|--------|------|------|----------|
|
||||||
|
| P1 | 浏览器通知 | 纪念日/提醒通知权限和发送 | 1天 |
|
||||||
|
| P1 | AI对话优化 | 解析结果编辑、多轮对话 | 1天 |
|
||||||
|
| P2 | 数据导出 | 导出纪念日/提醒为JSON/CSV | 0.5天 |
|
||||||
|
| P2 | 批量操作 | 批量删除、批量完成 | 0.5天 |
|
||||||
|
| P3 | 搜索功能 | 搜索纪念日和提醒 | 0.5天 |
|
||||||
|
|
||||||
|
### 11.3 长期计划(v1.2.0+)- 生态扩展
|
||||||
|
|
||||||
|
**目标**:扩展使用场景,提升产品价值
|
||||||
|
|
||||||
|
| 功能 | 描述 | 预估工时 |
|
||||||
|
|------|------|----------|
|
||||||
|
| 微信小程序 | 跨平台覆盖,方便移动端使用 | 3天 |
|
||||||
|
| 数据统计 | 纪念日统计、提醒完成率 | 1天 |
|
||||||
|
| 主题切换 | 浅色/深色/主题色 | 0.5天 |
|
||||||
|
| 分享功能 | 分享纪念日卡片 | 0.5天 |
|
||||||
|
| 重复规则增强 | 自定义重复周期、结束日期 | 1天 |
|
||||||
|
|
||||||
|
### 11.4 技术债
|
||||||
|
|
||||||
|
| 项目 | 描述 | 优先级 |
|
||||||
|
|------|------|--------|
|
||||||
|
| 代码规范 | ESLint/Prettier配置完善 | P2 |
|
||||||
|
| 单元测试 | 核心函数测试覆盖 | P3 |
|
||||||
|
| 性能优化 | 大数据量场景优化 | P3 |
|
||||||
|
| 文档完善 | API文档、开发者文档 | P2 |
|
||||||
|
|
||||||
|
### 11.5 里程碑更新
|
||||||
|
|
||||||
|
| 版本 | 内容 | 状态 | 预计完成 |
|
||||||
|
|------|------|------|----------|
|
||||||
|
| v1.0.0 | MVP基础功能 | ✅ 已完成 | 2026-01-28 |
|
||||||
|
| v1.0.1 | 提醒模块完善、归档页 | ✅ 已完成 | 2026-02-03 |
|
||||||
|
| v1.0.2 | 核心体验优化 | 进行中 | 待定 |
|
||||||
|
| v1.1.0 | 功能增强 | 计划中 | 待定 |
|
||||||
|
| v1.2.0 | 生态扩展 | 计划中 | 待定 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### C. 修改记录
|
||||||
|
|
||||||
|
| 版本 | 日期 | 修改内容 | 修改人 |
|
||||||
|
|------|------|----------|--------|
|
||||||
|
| v1.0.0 | 2026-01-28 | 初稿完成 | 产品经理 |
|
||||||
|
| v1.0.1 | 2026-02-03 | 完善提醒模块,实现归档页、设置页、优化样式 | 产品经理 |
|
||||||
|
|||||||
50
restart.bat
Normal file
50
restart.bat
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
@echo off
|
||||||
|
chcp 65001 >nul
|
||||||
|
echo ========================================
|
||||||
|
echo 掐日子 - 服务重启脚本
|
||||||
|
echo ========================================
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo [1/4] 检查并终止占用端口的进程...
|
||||||
|
|
||||||
|
:: 查找占用 3000 端口的进程
|
||||||
|
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :3000 ^| findstr LISTEN') do (
|
||||||
|
echo 终止占用 3000 端口的进程 (PID: %%a)
|
||||||
|
taskkill /PID %%a /F >nul 2>&1
|
||||||
|
)
|
||||||
|
|
||||||
|
:: 查找占用 5173 端口的进程
|
||||||
|
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :5173 ^| findstr LISTEN') do (
|
||||||
|
echo 终止占用 5173 端口的进程 (PID: %%a)
|
||||||
|
taskkill /PID %%a /F >nul 2>&1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo [2/4] 清理临时文件...
|
||||||
|
cd /d "%~dp0"
|
||||||
|
if exist client\nul rmdir /s /q client\tmpclaude-* 2>nul
|
||||||
|
if exist server\nul rmdir /s /q server\tmpclaude-* 2>nul
|
||||||
|
echo 清理完成
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo [3/4] 启动后端服务...
|
||||||
|
cd server
|
||||||
|
start "Qia Server" cmd /c "npm run dev"
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
echo 等待后端启动...
|
||||||
|
timeout /t 3 /nobreak >nul
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo [4/4] 启动前端服务...
|
||||||
|
cd client
|
||||||
|
start "Qia Client" cmd /c "npm run dev"
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo 服务已启动!
|
||||||
|
echo 后端: http://localhost:3000
|
||||||
|
echo 前端: http://localhost:5173
|
||||||
|
echo ========================================
|
||||||
|
pause
|
||||||
Loading…
x
Reference in New Issue
Block a user