功能说明
此工具用于统计TFS (Team Foundation Server) 工作项数量,支持以下功能:
-
按用户和项目分组统计工作项数量
-
计算工作项超期数量和临近3天超期的预警数量
-
生成美观的HTML仪表盘
-
将HTML转换为图片并发送到企业微信
-
支持定时任务功能
-
支持命令行参数配置
配置要求
-
企业微信Webhook URL:需要在脚本中配置企业微信机器人的Webhook URL
-
TFS配置:需要配置TFS服务器URL和个人访问令牌(PAT)
-
用户配置:需要在脚本中添加要统计的用户列表
-
项目配置:默认只统计"基础HIS"和"WiNEX-BasicInfoService"项目
依赖安装
需要安装以下Python依赖:
pip install requests playwright
# 可选依赖
pip install schedule pyyaml
使用方法
基本使用
直接运行脚本执行一次统计:
python send_work_items.py --once
定时任务
设置每天指定时间执行:
python send_work_items.py --cron "09:00"
命令行参数
-
--once:只执行一次(默认) -
--cron:定时任务表达式,格式: “HH:MM” -
--config:指定配置文件路径 -
--users:指定要查询的用户,用逗号分隔 -
--projects:指定要查询的项目,用逗号分隔 -
--excluded-states:指定要排除的状态,用逗号分隔 -
--max-items:指定最大发送的工作项数量 -
--webhook:指定企业微信机器人的Webhook URL
输出结果
执行后会生成以下文件:
-
work_items_dashboard_<timestamp>.html:HTML格式的工作项仪表盘 -
work_items_dashboard_<timestamp>.png:转换后的图片 -
work_items_to_send_<timestamp>.json:工作项原始数据
同时会将图片发送到企业微信群。
统计数据说明
-
总计:每个用户的工作项总数
-
项目统计:按项目分组的工作项数量
-
超期:已超过预期日期的工作项数量
-
预警:3天内将超期的工作项数量
注意事项
-
确保网络连接正常,能够访问TFS服务器和企业微信API
-
个人访问令牌(PAT)需要有足够的权限查询工作项
-
企业微信机器人需要正确配置并添加到目标群聊
-
第一次运行时Playwright会自动下载浏览器,可能需要一些时间