设计师日历

查看设计师工作负载和空闲时间

📊 状态图例
空闲可接单
部分忙碌
完全忙碌
对图日
今日
@if (viewMode === 'calendar') {

{{ getCurrentPeriodLabel() }}

设计师
@for (date of calendarDates; track date) {
{{ formatDate(date, 'MM/dd') }}
{{ formatDate(date, 'EEE') }}
}
@for (designer of filteredDesigners; track designer.id) {
{{ designer.name }}
{{ designer.groupName }}
{{ designer.currentProjects }}个项目 {{ designer.idleDays ?? 0 }}天未接单
@for (date of calendarDates; track date) {
@if (getDateEvents(designer, date).length > 0) {
@for (event of getDateEvents(designer, date); track event.id) {
{{ event.type === 'review' ? '对' : event.type === 'project' ? '项' : '休' }}
}
@for (event of getDateEvents(designer, date); track event.id) {
{{ event.title }}
时长:{{ event.duration }}小时 · 类型:{{ getEventTypeText(event.type) }}
}
} @else {
}
}
}
} @if (viewMode === 'list') {
@if (filteredDesigners.length === 0) {

暂无符合条件的设计师

请调整筛选条件或添加设计师

} @else {
@for (designer of filteredDesigners; track designer.id) {
{{ designer.name }}
{{ designer.groupName }} @if (designer.isLeader) { 组长 } {{ getStatusText(designer.status) }}
工作负载
当前项目 {{ designer.currentProjects }}个
本月完成 {{ designer.completedThisMonth }}个
平均周期 {{ designer.averageCycle }}天
空闲天数 {{ designer.idleDays ?? 0 }}天
近期安排
@if ((designer.upcomingEvents || []).length === 0) {

暂无安排

} @else {
@for (event of (designer.upcomingEvents || []).slice(0, 3); track event.id) {
{{ formatDate(event.date, 'MM/dd') }}
{{ event.title }}
{{ getEventTypeText(event.type) }}
} @if ((designer.upcomingEvents || []).length > 3) {
还有 {{ (designer.upcomingEvents || []).length - 3 }} 个安排...
}
}
可用性分析
下次可接单 {{ getNextAvailableDate(designer) }}
推荐分配 {{ getRecommendationText(designer) }}
}
}
}
{{ getDesignerCountByStatus('available') }}
空闲设计师
{{ getDesignerCountByStatus('busy') }}
忙碌设计师
{{ getDesignerCountByStatus('overloaded') }}
满载设计师
{{ getStagnantProjectsCount() }}
停滞期项目