- 集成 Confluence API 获取船舶报告数据 - 集成 Jira API 查询故障数量 - 支持船号显示 (462#、463# 等) - 支持故障次数/故障率、人工介入次数/介入率显示 - 跨班作业使用 Card 69 按时间查询效率 - 不跨班作业使用整船效率(剔除异常) - N/A 记录根据作业时间归属到对应船舶 - 更新 AGENTS.md 和 README.md 文档 - 删除 daily_report_gui.py
108 lines
2.8 KiB
Markdown
108 lines
2.8 KiB
Markdown
# Confluence 数据集成说明
|
||
|
||
## 概述
|
||
|
||
交接班脚本现已集成 Confluence 数据源,可以自动从 Confluence 获取船舶报告的故障次数、故障率、人工介入次数和人工介入率数据。
|
||
|
||
## 新增文件
|
||
|
||
```
|
||
confluence/
|
||
├── __init__.py # 模块初始化
|
||
├── client.py # Confluence API 客户端
|
||
└── vessel_reports.py # 船舶报告数据管理器
|
||
```
|
||
|
||
## 环境变量配置
|
||
|
||
在 `.env` 文件中添加以下配置:
|
||
|
||
```bash
|
||
# Confluence 配置
|
||
CONFLUENCE_URL=https://confluence.westwell-lab.com
|
||
CONFLUENCE_TOKEN=your_token_here
|
||
```
|
||
|
||
## 使用方法
|
||
|
||
### 生成交接班报告(自动集成 Confluence 数据)
|
||
|
||
```bash
|
||
# 生成指定日期的白班报告
|
||
python shift_report.py --date 2026-03-05 --shift day
|
||
|
||
# 生成指定日期的夜班报告
|
||
python shift_report.py --date 2026-03-05 --shift night
|
||
|
||
# 生成指定日期的所有班次报告
|
||
python shift_report.py --date 2026-03-05 --shift all
|
||
```
|
||
|
||
### 测试 Confluence 数据提取
|
||
|
||
```bash
|
||
python test_confluence.py
|
||
```
|
||
|
||
## 数据字段说明
|
||
|
||
从 Confluence 提取的数据包括:
|
||
|
||
| 字段 | 说明 | 来源 |
|
||
|------|------|------|
|
||
| vessel_number | 船次号 (如 433#) | Confluence 页面 |
|
||
| vessel_name | 船名 | Confluence 页面 |
|
||
| teu | 作业箱量 | Confluence 页面 |
|
||
| failures | 故障次数 | Confluence 页面 |
|
||
| failure_rate | 故障率 | 计算: failures/(teu/2)*100% |
|
||
| interventions | 人工介入次数 | Confluence 页面 |
|
||
| intervention_rate | 人工介入率 | 计算: interventions/(teu/2)*100% |
|
||
| efficiency | 作业净效率 | Confluence 页面 |
|
||
|
||
## 数据匹配逻辑
|
||
|
||
Metabase 返回的船舶数据使用 `vesselVisitID` 格式为 `日期-船名` (如 "260305-东方祥"),
|
||
Confluence 页面使用船名作为匹配键,确保数据正确关联。
|
||
|
||
## Confluence 页面结构
|
||
|
||
Confluence 页面结构:
|
||
- 父页面: "福州江阴实船作业统计" (ID: 137446574)
|
||
- 子页面: "2026.03 实船作业统计" (按月)
|
||
- 子页面: "FZ 433#实船报告2026.03.01" (按船次)
|
||
|
||
每个船舶报告页面包含:
|
||
- 船次、船名、作业时间
|
||
- TEU、作业循环、效率
|
||
- 故障次数、故障率
|
||
- 人工介入次数、人工介入率
|
||
- Jira Bug 链接(页面底部)
|
||
|
||
## 故障排查
|
||
|
||
### Confluence 连接失败
|
||
|
||
检查环境变量是否正确设置:
|
||
```bash
|
||
echo $CONFLUENCE_TOKEN
|
||
echo $CONFLUENCE_URL
|
||
```
|
||
|
||
### 数据未显示
|
||
|
||
1. 确认 Confluence 页面存在该日期的船舶报告
|
||
2. 检查船名是否匹配(Metabase 和 Confluence 使用相同船名)
|
||
3. 查看控制台输出是否有错误信息
|
||
|
||
### 故障率计算
|
||
|
||
故障率计算公式:
|
||
```
|
||
故障率 = 故障次数 / (TEU / 2) * 100%
|
||
人工介入率 = 人工介入次数 / (TEU / 2) * 100%
|
||
```
|
||
|
||
示例:
|
||
- TEU = 474,故障次数 = 2
|
||
- 故障率 = 2 / (474 / 2) * 100% = 0.84%
|