@if (viewMode === 'timeline') {
}
@if (selectedDesigner !== 'all') {
@if (getSelectedDesigner(); as designer) {

{{ designer.name }}

{{ getWorkloadIcon(designer.workloadLevel) }} @if (designer.workloadLevel === 'high') { 超负荷 } @else if (designer.workloadLevel === 'medium') { 适度忙碌 } @else { 空闲 }
总项目数 {{ designer.projectCount }}
紧急项目 {{ designer.urgentCount }}
逾期项目 {{ designer.overdueCount }}
}
}
@if (viewMode === 'timeline') {
▶️ 项目开始
📋 对图时间
📦 交付日期
🎨 建模截止
🪑 软装截止
🖼️ 渲染截止
✨ 后期截止
🟢 正常进行(2天+)
🟡 前一天(24小时内)
🟠 事件当天(6小时+)
🔴 紧急(6小时内)
💡 仅显示今日线之后的关键事件和阶段截止时间
项目名称
@for (date of timeRange; track date; let i = $index) {
{{ date.getMonth() + 1 }}/{{ date.getDate() }}
@if (timelineScale === 'week') {
@switch (date.getDay()) { @case (0) { 周日 } @case (1) { 周一 } @case (2) { 周二 } @case (3) { 周三 } @case (4) { 周四 } @case (5) { 周五 } @case (6) { 周六 } }
}
}
{{ getTodayLabel() }}
@if (filteredProjects.length === 0) {

暂无项目数据

} @else { @for (project of filteredProjects; track project.projectId) {
{{ project.projectName }} {{ project.designerName }} @if (project.priority === 'critical' || project.priority === 'high') { @if (project.priority === 'critical') { ‼️ } @else { 🔥 } }
@for (event of getProjectEvents(project); track event.date) {
{{ event.icon }}
}
} }
} @else {
@if (filteredProjects.length === 0) {

暂无项目数据

} @else { @for (project of filteredProjects; track project.projectId; let i = $index) {

{{ project.projectName }}

@if (project.isStalled) { ⏸️ 停滞{{ project.stalledDays }}天 } @if (project.urgentCount > 0) { 🔥 催办{{ project.urgentCount }}次 } @if (project.status === 'overdue') { ⚠️ 逾期 } @else if (project.status === 'urgent') { ⏰ 紧急 }
设计师: {{ project.designerName }} 阶段: {{ project.stageName }} 进度: {{ project.stageProgress }}% 截止: {{ formatDate(project.endDate) }}
} }
}