feat: 工时显示转换为工作日格式(8小时=1天)

This commit is contained in:
Your Name 2026-01-06 21:01:13 +08:00
parent 412114271e
commit d66b75beea

View File

@ -174,7 +174,7 @@
<div class="group-summary">
<span class="summary-item">{{ group.totalScore }}分</span>
<span class="summary-divider">|</span>
<span class="summary-item">{{ group.totalHours }}小时</span>
<span class="summary-item">{{ formatWorkHours(group.totalHours) }}</span>
</div>
</div>
<div class="group-items">
@ -196,7 +196,7 @@
<span>总计:</span>
<span class="footer-score">{{ totalPipelineScore }}分</span>
<span class="footer-divider">|</span>
<span class="footer-hours">{{ totalPipelineHours }}小时</span>
<span class="footer-hours">{{ formatWorkHours(Number(totalPipelineHours)) }}</span>
<span class="footer-divider">|</span>
<span class="footer-groups">{{ pipelineGroups.length }}个子任务组</span>
</div>
@ -1174,6 +1174,23 @@ const totalPipelineHours = computed(() => {
return pipelineGroups.value.reduce((sum, group) => sum + group.totalHours, 0).toFixed(1)
})
// 格式化工时显示(8小时=1个工作日)
const formatWorkHours = (hours: number): string => {
if (hours === 0) return '0小时'
const WORK_HOURS_PER_DAY = 8
const days = Math.floor(hours / WORK_HOURS_PER_DAY)
const remainingHours = hours % WORK_HOURS_PER_DAY
if (days === 0) {
return `${remainingHours}小时`
} else if (remainingHours === 0) {
return `${days}天`
} else {
return `${days}天${remainingHours}小时`
}
}
// 计算积分
const calculateScore = () => {
// 计算已在computed中完成