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

import com.njcn.rdms.module.project.controller.admin.workreport.common.vo.WorkReportMemberSnapshotRespVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "管理后台 - 项目半月报 Response VO")
@Data
public class ProjectReportRespVO {

    private Long id;
    private Long projectId;
    private String projectName;
    private Long projectOwnerId;
    private String projectOwnerName;
    private String technicalOwnerName;
    private List<WorkReportMemberSnapshotRespVO> projectMemberSnapshot;
    private Long supervisorUserId;
    private String supervisorName;
    private String periodKey;
    private String periodLabel;
    private LocalDate periodStartDate;
    private LocalDate periodEndDate;
    private Integer flag;
    private String statusCode;
    private String statusName;
    private Boolean allowEdit;
    private Boolean terminal;
    private String projectStatusDesc;
    private String projectProgressPlan;
    private String projectKeyPoints;
    private String projectProblems;
    private BigDecimal totalWorkHours;
    private String approvalComment;
    private String lastStatusReason;
    private LocalDateTime submitTime;
    private LocalDateTime approvalTime;
    private LocalDateTime createTime;
    private LocalDateTime updateTime;
    private List<ProjectReportItemRespVO> currentItems;
    private List<ProjectReportItemRespVO> nextItems;
}
