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

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

import java.util.List;

@Schema(description = "管理后台 - 任务状态看板 Response VO")
@Data
public class ProjectTaskStatusBoardRespVO {

    @Schema(description = "当前筛选条件下的任务总数", requiredMode = Schema.RequiredMode.REQUIRED, example = "24")
    private Long total;

    @Schema(description = "状态项列表", requiredMode = Schema.RequiredMode.REQUIRED)
    private List<ProjectStatusBoardItemVO> items;

    @Schema(description = "任务状态项")
    @Data
    public static class ProjectStatusBoardItemVO {

        @Schema(description = "状态编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "pending")
        private String statusCode;
        @Schema(description = "状态名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "待开始")
        private String statusName;
        @Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "5")
        private Long count;
        @Schema(description = "排序", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
        private Integer sort;
        @Schema(description = "是否终态", example = "false")
        private Boolean terminal;

    }

}
