MyWorkTime/README.md
2025-07-28 01:04:18 +08:00

197 lines
6.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 滴答清单 - Vue3 任务管理应用
一个基于 Vue3 的现代化任务管理应用,提供直观的用户界面和完整的功能。
## ✨ 功能特性
- 📝 **任务管理**: 添加、编辑、删除任务
-**任务完成**: 一键标记任务完成状态
- 📁 **项目管理**: 创建和管理多个项目,每个任务归属于特定项目
- 🏷️ **任务类型**: 支持需求分析、文档编写、开发代码、测试、运维等类型
- 🎯 **优先级设置**: 支持高、中、低三个优先级
-**时间管理**: 设置任务的开始时间和结束时间,自动计算工作时长
- ⏱️ **计时器功能**: 为没有设置时间的任务提供计时器,自动统计工作时长
- 📊 **工作分析**: 实时分析每日工作分布,包括项目分布、类型分布和时间统计
- 🔍 **任务过滤**: 按项目、状态和类型筛选任务
- 📈 **统计信息**: 实时显示任务完成情况和今日工作统计
- 💾 **数据管理**: 支持JSON格式的数据导出、导入和清空功能
- 🗂️ **菜单系统**: 清晰的功能分区,包括任务管理、工作分析和数据管理
-**全屏模式**: 支持浏览器宽度全屏显示,充分利用屏幕空间
- ☁️ **服务器同步**: 支持多设备数据同步,数据安全存储在服务器
- 🔄 **本地存储**: 数据自动保存到浏览器本地存储,支持数据备份和恢复
- 📱 **响应式设计**: 完美适配桌面和移动设备
- 🎨 **现代化UI**: 美观的渐变背景和卡片式设计
## 🚀 快速开始
### 安装依赖
```bash
npm install
```
### 启动开发服务器
```bash
npm run dev
```
应用将在 `http://localhost:3000` 启动
### 构建生产版本
```bash
npm run build
```
### 预览生产版本
```bash
npm run preview
```
## 🛠️ 技术栈
- **Vue 3**: 使用 Composition API
- **Vite**: 快速的构建工具
- **VueUse**: 实用的 Vue 组合式函数
- **CSS3**: 现代化的样式设计
- **Node.js**: 后端服务器
- **Express**: Web 框架
- **Docker**: 容器化部署
## 🚀 快速部署
### 本地开发
```bash
# 安装依赖
npm install
# 启动开发服务器
npm run dev
```
### 生产部署
```bash
# 使用部署脚本(推荐)
./deploy.sh
# 或手动部署
npm install
npm run build
node server.js
```
### Docker 部署
```bash
# 使用 Docker Compose
docker-compose up -d
# 或使用 Docker
docker build -t worktime-app .
docker run -d -p 3001:3001 worktime-app
```
详细部署说明请参考 [PRODUCTION_DEPLOYMENT.md](./PRODUCTION_DEPLOYMENT.md)
## 📁 项目结构
```
WorkTime/
├── src/
│ ├── App.vue # 主应用组件
│ ├── main.js # 应用入口
│ └── style.css # 全局样式
├── dist/ # 构建输出目录
├── index.html # HTML 模板
├── package.json # 项目配置
├── vite.config.js # Vite 配置
├── server.js # 后端服务器
├── Dockerfile # Docker 配置
├── docker-compose.yml # Docker Compose 配置
├── deploy.sh # 部署脚本
├── test-deployment.sh # 部署测试脚本
├── example-data.json # 示例数据文件
├── user-data.json # 用户数据文件
├── PRODUCTION_DEPLOYMENT.md # 生产部署指南
└── README.md # 项目说明
```
## 🎯 使用说明
1. **功能导航**: 使用顶部菜单在"任务管理"、"工作分析"、"数据管理"之间切换
2. **创建项目**: 在任务管理页面点击"新建项目"按钮创建新项目
3. **选择项目**: 点击项目列表中的项目进行切换
4. **添加任务**: 在输入框中输入任务内容,选择项目、任务类型、优先级和时间,点击"添加"按钮
5. **使用计时器**: 对于没有设置时间的任务,点击▶️按钮开始计时,点击⏹️按钮停止计时
6. **完成任务**: 点击任务前的圆形复选框标记完成
7. **编辑任务**: 点击任务右侧的编辑按钮进行修改
8. **删除任务**: 点击任务右侧的删除按钮移除任务
9. **过滤任务**: 使用过滤器按钮查看不同项目、状态和类型的任务
10. **查看分析**: 切换到"工作分析"页面查看工作统计和分析
11. **数据管理**: 切换到"数据管理"页面导出、导入或清空数据
## 💡 特色功能
- **智能日期显示**: 自动显示"今天"、"昨天"、"X天前"等相对时间
- **时间管理**: 支持设置任务的开始和结束时间,自动计算工作时长
- **计时器功能**: 为没有设置时间的任务提供实时计时器,支持开始/停止/累计计时
- **工作分析**: 实时分析每日工作分布,包括项目分布、类型分布和时间统计
- **项目管理**: 支持多项目管理,每个项目独立显示任务数量
- **任务类型标识**: 不同颜色的标签区分任务类型
- **项目标签**: 每个任务显示所属项目名称
- **悬停效果**: 鼠标悬停时显示操作按钮
- **键盘快捷键**: 支持回车键添加任务ESC键取消编辑
- **空状态提示**: 根据不同情况显示相应的鼓励信息
- **数据备份**: 支持JSON格式的数据导出和导入便于数据备份和迁移
- **菜单导航**: 清晰的功能分区,提供更好的用户体验和功能组织
- **全屏体验**: 支持一键切换浏览器宽度全屏,充分利用屏幕空间
- **云端同步**: 支持服务器存储和多设备同步,确保数据安全
## 🔧 自定义配置
可以通过修改 `src/style.css` 文件来自定义应用的外观,包括:
- 颜色主题
- 字体样式
- 布局尺寸
- 动画效果
## 📁 数据格式
应用使用JSON格式存储数据包含以下结构
```json
{
"tasks": [
{
"id": 1703123456789,
"text": "任务内容",
"projectId": "project-1",
"type": "development",
"completed": false,
"priority": "high",
"startTime": "2023-12-20T09:00",
"endTime": "2023-12-20T11:00",
"timerRunning": false,
"timerStartTime": null,
"timerDuration": null,
"createdAt": "2023-12-20T09:00:00.000Z",
"editing": false
}
],
"projects": [
{
"id": "project-1",
"name": "项目名称",
"createdAt": "2023-12-18T10:00:00.000Z"
}
],
"exportDate": "2023-12-20T16:30:00.000Z",
"version": "1.0.0"
}
```
## <20><> 许可证
MIT License