fix: 修复月份选择器问题,确保12月正确显示

- 修复跨年月份计算逻辑(1月时正确计算为去年12月)
- 改进_get_month_list()方法,生成正确的近12个月列表
- 增加Combobox宽度以完整显示月份值如'2025-12'
- 优化手动剔除次月多统计的船对话框
This commit is contained in:
2026-01-02 02:46:56 +08:00
parent 53eef800b4
commit bb3f25a643
4 changed files with 663 additions and 168 deletions

View File

@@ -75,6 +75,9 @@ python3 main.py --unaccounted 118 --month 2025-12
# 去除未统计数据
python3 main.py --remove-unaccounted --month 2025-12
# 手动剔除次月多统计的船
python3 main.py --cross-exclude --source-date 2025-12-31 --target-date 2026-01-01 --ship-name "学友洋山" --teu 100
# 配置测试(验证所有连接)
python3 main.py config-test
```
@@ -98,6 +101,7 @@ python3 src/gui.py
- **去除多余统计数据**:用于删除多余统计的箱量(对称功能)
- **月底智能调整**:月底最后一天自动弹出剔除对话框
- **数据自动转移**月底剔除的数据自动转移到次月1号
- **手动剔除次月多统计的船**用于处理上月底余留数据未及时剔除的情况例如2号打开工具整理1号数据但上月底余留数据没有剔除
### 配置管理
- **管理月份页面ID映射**配置各月份的Confluence页面ID
@@ -128,6 +132,32 @@ python3 src/gui.py
- 默认不弹出调整对话框
- 但GUI侧边栏保留了手动添加/剔除TEU的功能入口
### 手动剔除次月多统计的船
用于处理上月底余留数据未及时剔除的情况:
**使用场景**
- 用户在2号打开工具整理的是1号的数据
- 上月底余留的数据没有剔除导致没有算在1号的日报中
- 需要手动从次月(当前月)中剔除上月底余留的数据
**功能特点**
- **GUI操作**:在左侧控制面板点击"剔除次月多统计"按钮
- **CLI操作**:使用 `--cross-exclude` 参数
- **灵活配置**支持指定源日期上月底、目标日期次月、船名、TEU、20尺/40尺箱量
- **数据记录**:调整记录存储在数据库中,便于追踪和审计
**使用示例**
```bash
# CLI方式
python3 main.py --cross-exclude --source-date 2025-12-31 --target-date 2026-01-01 --ship-name "学友洋山" --teu 100
# GUI方式
1. 打开GUI界面
2. 在左侧控制面板点击"剔除次月多统计"按钮
3. 填写源日期、目标日期、船名、TEU等信息
4. 点击"确定"保存
```
### 二次靠泊合并
解析时会自动合并同一天的二次靠泊记录:
- 夜班 学友洋山: 273TEU