fix(工时): 按中国工作日历统计正常耗时
This commit is contained in:
@@ -355,3 +355,15 @@
|
||||
- TestCase 增加 `plannedTestAt`,Bug 增加 `plannedFixAt`,保存为 ISO 时间戳。
|
||||
|
||||
**理由**:项目排期需要贴近中国工作日,但研发和线上 Bug 可能确实安排在非工作日处理,所以系统负责提醒,最终是否保存交给用户判断。
|
||||
|
||||
## 30. 正常工时走中国工作日历,加班单独计入
|
||||
|
||||
**问题**:接入中国节假日后,如果任务从节假日前开始、节假日后结束,直接按自然时间差会把休息日误算为实际耗时。
|
||||
|
||||
**决策**:
|
||||
- `calcWorkHours` 和正常任务的 `calcActualElapsedHours` 都按中国工作日历和工作时段计算。
|
||||
- 法定节假日、周末不计入正常工时;调休上班日计入正常工时。
|
||||
- AI 预估工时是工作量建议,不按日期跳过;执行预估只有从计划起止时间自动推导时才走工作日历。
|
||||
- 加班记录不受工作日历过滤,按加班单填写的开始/结束时间直接计入额外投入。
|
||||
|
||||
**理由**:正常任务耗时回答“工作时间里实际投入了多少”,加班记录回答“非正常工作时间额外投入了多少”,两条口径分开才能避免休息日被重复或误算。
|
||||
|
||||
@@ -233,3 +233,10 @@ Implementation convention:
|
||||
- 非工作日只提示,不阻止保存;调休工作日按工作日提示。
|
||||
- 测试用例计划测试时间字段为 `plannedTestAt`;Bug 计划修复时间字段为 `plannedFixAt`。
|
||||
- 测试轮次复制用例时保留计划测试时间、AI 预估和执行预估,清空实际执行记录。
|
||||
|
||||
## 工时统计口径
|
||||
|
||||
- 正常任务耗时使用 `calcWorkHours` / `calcActualElapsedHours`,按中国工作日历和 9:00-12:00、13:00-18:00 工作时段计算。
|
||||
- 法定节假日和周末不计入正常任务耗时;调休上班日计入正常任务耗时。
|
||||
- AI 预估工时和手填执行预估工时本身是小时数,不再按日期过滤;只有从计划起止时间自动推导的执行预估会按工作日历计算。
|
||||
- 加班记录使用 `overtime.calcDuration`,按加班单开始/结束时间直接计算,不受节假日过滤。
|
||||
|
||||
Reference in New Issue
Block a user