package com.njcn.rdms.module.project.controller.admin.project.task.vo.aggregate;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDate;

@Schema(description = "管理后台 - 项目任务今日小条 Response VO")
@Data
public class ProjectTaskSummaryRespVO {

    @Schema(description = "逾期任务数:计划完成日 < 今天,且任务状态非终态")
    private Long overdue;

    @Schema(description = "今日截止任务数:计划完成日 = 今天,且任务状态非终态")
    private Long dueToday;

    @Schema(description = "本周到期任务数:计划完成日 ∈ [本周一, 本周日],且任务状态非终态(与 chip thisWeek 过滤同口径)")
    private Long dueThisWeek;

    @Schema(description = "本周已完成任务数:actualEndDate ∈ [本周一, 今天],且任务状态 = completed")
    private Long doneThisWeek;

    @Schema(description = "服务器当日(YYYY-MM-DD,Asia/Shanghai)", example = "2026-05-22")
    private LocalDate today;

    @Schema(description = "服务器本周一(YYYY-MM-DD,Asia/Shanghai)", example = "2026-05-18")
    private LocalDate weekStart;

    @Schema(description = "服务器本周日(YYYY-MM-DD,Asia/Shanghai)", example = "2026-05-24")
    private LocalDate weekEnd;
}
