# 工作任务管理系统 一个简单而强大的工作任务管理工具,帮助你记录每日工作任务和对应的时间投入。 ## 功能特性 - ✅ **任务管理**: 添加、编辑、删除工作任务 - ⏱️ **时间追踪**: 点击开始/停止计时,自动记录任务时长 - 📊 **时间统计**: 查看每日、每周的工作时间统计 - 🤖 **AI润色**: 使用AI优化任务描述,让工作记录更专业 - 📱 **响应式设计**: 支持桌面和移动设备 - 💾 **本地存储**: 数据存储在本地SQLite数据库中 ## 技术栈 - **前端**: HTML5 + CSS3 + JavaScript (Vanilla JS) - **后端**: Python Flask - **数据库**: SQLite - **AI服务**: OpenAI API (可选) ## 快速开始 ### 1. 环境要求 - Python 3.7 或更高版本 - 现代浏览器 (Chrome, Firefox, Safari, Edge) ### 2. 安装和运行 #### 方法一:使用启动脚本(推荐) ```bash # 克隆或下载项目到本地 cd worklist # 运行启动脚本 python start.py ``` 启动脚本会自动: - 检查Python版本 - 安装所需依赖 - 创建配置文件 - 启动服务器 - 自动打开浏览器 #### 方法二:手动启动 ```bash # 1. 安装Python依赖 pip install -r backend/requirements.txt # 2. 启动服务器 cd backend python app.py # 3. 在浏览器中访问 # http://localhost:5000 ``` ### 3. 配置AI润色功能(可选) 如需使用AI润色功能,请: 1. 获取OpenAI API密钥 2. 编辑 `backend/.env` 文件 3. 设置 `OPENAI_API_KEY=your_api_key_here` ## 使用指南 ### 基本操作 1. **添加任务** - 点击"添加任务"按钮 - 填写任务标题和描述 - 选择任务状态 - 点击"保存" 2. **时间追踪** - 在任务列表中点击"开始"按钮开始计时 - 点击"停止"按钮结束计时 - 系统自动记录和累计任务时长 3. **查看统计** - 点击"查看报表"按钮 - 选择日期查看当日工作统计 - 查看各任务的时间投入 4. **AI润色** - 在编辑任务时,点击"AI润色"按钮 - 系统会优化任务描述 - 可选择使用润色版本或保持原版 ### 界面说明 - **任务列表**: 显示所有任务,包括状态、时长等信息 - **统计面板**: 显示今日总工作时长、完成任务数等 - **计时器**: 实时显示当前任务计时或总时长 - **报表**: 详细的每日工作时间统计 ## 项目结构 ``` worklist/ ├── backend/ # 后端代码 │ ├── app.py # Flask主应用 │ ├── models.py # 数据库模型 │ ├── routes.py # API路由 │ ├── ai_service.py # AI服务 │ ├── requirements.txt # Python依赖 │ └── .env # 环境变量配置 ├── frontend/ # 前端代码 │ ├── index.html # 主页面 │ ├── css/ │ │ └── style.css # 样式文件 │ └── js/ │ ├── app.js # 主应用逻辑 │ ├── api.js # API调用 │ └── timer.js # 计时器功能 ├── start.py # 启动脚本 └── README.md # 说明文档 ``` ## API接口 ### 任务管理 - `GET /api/tasks` - 获取任务列表 - `POST /api/tasks` - 创建任务 - `PUT /api/tasks/:id` - 更新任务 - `DELETE /api/tasks/:id` - 删除任务 - `POST /api/tasks/:id/polish` - AI润色任务描述 ### 时间追踪 - `POST /api/timer/start` - 开始计时 - `POST /api/timer/stop` - 停止计时 - `GET /api/timer/status/:id` - 获取计时状态 ### 统计报表 - `GET /api/reports/daily` - 获取日报表 - `GET /api/reports/summary` - 获取汇总报表 ## 数据模型 ### 任务 (Task) - `id`: 任务ID - `title`: 任务标题 - `description`: 任务描述 - `polished_description`: AI润色后的描述 - `status`: 任务状态 (pending/in_progress/completed) - `created_at`: 创建时间 - `updated_at`: 更新时间 ### 时间记录 (TimeRecord) - `id`: 记录ID - `task_id`: 关联的任务ID - `start_time`: 开始时间 - `end_time`: 结束时间 - `duration`: 时长(秒) - `created_at`: 创建时间 ## 常见问题 ### Q: 如何备份数据? A: 数据库文件位于 `backend/worklist.db`,直接复制此文件即可备份。 ### Q: 可以多人使用吗? A: 当前版本为单用户设计,如需多用户支持需要进一步开发。 ### Q: AI润色功能需要付费吗? A: 需要OpenAI API密钥,按使用量计费,具体费用请查看OpenAI官网。 ### Q: 支持数据导出吗? A: 当前版本暂不支持,但可以通过API获取数据,后续版本会添加导出功能。 ## 开发说明 ### 本地开发 1. 克隆项目 2. 安装依赖: `pip install -r backend/requirements.txt` 3. 启动开发服务器: `cd backend && python app.py` 4. 访问: `http://localhost:5000` ### 添加新功能 1. 后端: 在 `routes.py` 中添加新的API端点 2. 前端: 在相应的JS文件中添加功能逻辑 3. 数据库: 如需新表,在 `models.py` 中定义 ## 许可证 MIT License ## 贡献 欢迎提交Issue和Pull Request! --- **开始使用**: 运行 `python start.py` 即可开始使用!