TFS工作项统计工具

功能说明

此工具用于统计TFS (Team Foundation Server) 工作项数量,支持以下功能:

  • 按用户和项目分组统计工作项数量

  • 计算工作项超期数量和临近3天超期的预警数量

  • 生成美观的HTML仪表盘

  • 将HTML转换为图片并发送到企业微信

  • 支持定时任务功能

  • 支持命令行参数配置

配置要求

  1. 企业微信Webhook URL:需要在脚本中配置企业微信机器人的Webhook URL

  2. TFS配置:需要配置TFS服务器URL和个人访问令牌(PAT)

  3. 用户配置:需要在脚本中添加要统计的用户列表

  4. 项目配置:默认只统计"基础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会自动下载浏览器,可能需要一些时间

1 个赞