32294ebec133a7bfa432312d89409394777886e8
工作任务管理系统
一个简单而强大的工作任务管理工具,帮助你记录每日工作任务和对应的时间投入。
功能特性
- ✅ 任务管理: 添加、编辑、删除工作任务
- ⏱️ 时间追踪: 点击开始/停止计时,自动记录任务时长
- 📊 时间统计: 查看每日、每周的工作时间统计
- 🤖 AI润色: 使用AI优化任务描述,让工作记录更专业
- 📱 响应式设计: 支持桌面和移动设备
- 💾 本地存储: 数据存储在本地SQLite数据库中
技术栈
- 前端: HTML5 + CSS3 + JavaScript (Vanilla JS)
- 后端: Python Flask
- 数据库: SQLite
- AI服务: OpenAI API (可选)
快速开始
1. 环境要求
- Python 3.7 或更高版本
- 现代浏览器 (Chrome, Firefox, Safari, Edge)
2. 安装和运行
方法一:使用启动脚本(推荐)
# 克隆或下载项目到本地
cd worklist
# 运行启动脚本
python start.py
启动脚本会自动:
- 检查Python版本
- 安装所需依赖
- 创建配置文件
- 启动服务器
- 自动打开浏览器
方法二:手动启动
# 1. 安装Python依赖
pip install -r backend/requirements.txt
# 2. 启动服务器
cd backend
python app.py
# 3. 在浏览器中访问
# http://localhost:5000
3. 配置AI润色功能(可选)
如需使用AI润色功能,请:
- 获取OpenAI API密钥
- 编辑
backend/.env文件 - 设置
OPENAI_API_KEY=your_api_key_here
使用指南
基本操作
-
添加任务
- 点击"添加任务"按钮
- 填写任务标题和描述
- 选择任务状态
- 点击"保存"
-
时间追踪
- 在任务列表中点击"开始"按钮开始计时
- 点击"停止"按钮结束计时
- 系统自动记录和累计任务时长
-
查看统计
- 点击"查看报表"按钮
- 选择日期查看当日工作统计
- 查看各任务的时间投入
-
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: 任务IDtitle: 任务标题description: 任务描述polished_description: AI润色后的描述status: 任务状态 (pending/in_progress/completed)created_at: 创建时间updated_at: 更新时间
时间记录 (TimeRecord)
id: 记录IDtask_id: 关联的任务IDstart_time: 开始时间end_time: 结束时间duration: 时长(秒)created_at: 创建时间
常见问题
Q: 如何备份数据?
A: 数据库文件位于 backend/worklist.db,直接复制此文件即可备份。
Q: 可以多人使用吗?
A: 当前版本为单用户设计,如需多用户支持需要进一步开发。
Q: AI润色功能需要付费吗?
A: 需要OpenAI API密钥,按使用量计费,具体费用请查看OpenAI官网。
Q: 支持数据导出吗?
A: 当前版本暂不支持,但可以通过API获取数据,后续版本会添加导出功能。
开发说明
本地开发
- 克隆项目
- 安装依赖:
pip install -r backend/requirements.txt - 启动开发服务器:
cd backend && python app.py - 访问:
http://localhost:5000
添加新功能
- 后端: 在
routes.py中添加新的API端点 - 前端: 在相应的JS文件中添加功能逻辑
- 数据库: 如需新表,在
models.py中定义
许可证
MIT License
贡献
欢迎提交Issue和Pull Request!
开始使用: 运行 python start.py 即可开始使用!
Description
Languages
JavaScript
40.9%
Python
31.6%
CSS
14.6%
HTML
10.8%
Shell
1.3%
Other
0.8%