73 lines
1.5 KiB
Markdown
73 lines
1.5 KiB
Markdown
|
|
# LifeLog 实现计划
|
|||
|
|
|
|||
|
|
## 阶段一:后端开发
|
|||
|
|
|
|||
|
|
### Task 1.1:初始化 Go 项目
|
|||
|
|
- 初始化 go.mod
|
|||
|
|
- 安装依赖:gin、gorm、mysql-driver
|
|||
|
|
- 创建目录结构
|
|||
|
|
- 验证:`go build ./...`
|
|||
|
|
|
|||
|
|
### Task 1.2:数据库初始化
|
|||
|
|
- 连接 MySQL(rhett_claw)
|
|||
|
|
- 自动建表(todos、daily_logs)
|
|||
|
|
- 验证:表创建成功
|
|||
|
|
|
|||
|
|
### Task 1.3:Model 层
|
|||
|
|
- 定义 Todo 模型
|
|||
|
|
- 定义 DailyLog 模型
|
|||
|
|
- 验证:模型定义正确
|
|||
|
|
|
|||
|
|
### Task 1.4:Repository 层
|
|||
|
|
- Todo CRUD 实现
|
|||
|
|
- DailyLog CRUD 实现
|
|||
|
|
- 验证:单元测试通过
|
|||
|
|
|
|||
|
|
### Task 1.5:Service 层
|
|||
|
|
- TodoService 实现
|
|||
|
|
- DailyLogService 实现
|
|||
|
|
- 验证:业务逻辑正确
|
|||
|
|
|
|||
|
|
### Task 1.6:Handler 层 + 路由
|
|||
|
|
- Todo HTTP handlers
|
|||
|
|
- DailyLog HTTP handlers
|
|||
|
|
- Gin 路由注册
|
|||
|
|
- 验证:`curl localhost:17010/api/todos` 返回200
|
|||
|
|
|
|||
|
|
## 阶段二:前端开发
|
|||
|
|
|
|||
|
|
### Task 2.1:初始化 React 项目
|
|||
|
|
- Vite + React + TypeScript
|
|||
|
|
- 安装 TailwindCSS
|
|||
|
|
- 验证:页面能运行
|
|||
|
|
|
|||
|
|
### Task 2.2:待办页面
|
|||
|
|
- TodoList 组件
|
|||
|
|
- TodoItem 组件
|
|||
|
|
- AddTodo 表单
|
|||
|
|
- API 调用(React Query)
|
|||
|
|
- 验证:CRUD 功能正常
|
|||
|
|
|
|||
|
|
### Task 2.3:每日记录页面
|
|||
|
|
- DatePicker 组件
|
|||
|
|
- DailyLogForm 组件(三个时段)
|
|||
|
|
- 自动保存逻辑
|
|||
|
|
- 验证:记录能保存和加载
|
|||
|
|
|
|||
|
|
### Task 2.4:页面美化
|
|||
|
|
- 简约 UI 风格
|
|||
|
|
- 响应式布局
|
|||
|
|
- 验证:视觉符合设计
|
|||
|
|
|
|||
|
|
## 阶段三:部署
|
|||
|
|
|
|||
|
|
### Task 3.1:构建和启动
|
|||
|
|
- 前端 `npm run build`
|
|||
|
|
- 后端 `go build`
|
|||
|
|
- PM2 配置并启动
|
|||
|
|
- 验证:`curl localhost:17010` 返回200
|
|||
|
|
|
|||
|
|
### Task 3.2:收尾
|
|||
|
|
- PM2 save
|
|||
|
|
- 验证服务稳定运行
|