package cn.iocoder.lyzsys.module.tjt.controller.admin.profit.vo;

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

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 项目盈亏 Response VO")
@Data
public class ProjectProfitRespVO {

    @Schema(description = "项目 ID", example = "1")
    private Long projectId;

    @Schema(description = "项目名称")
    private String projectName;

    @Schema(description = "排序")
    private Integer sortNo;

    @Schema(description = "是否签订合同")
    private Boolean contractSignedFlag;

    @Schema(description = "合同产值")
    private BigDecimal contractAmount;

    @Schema(description = "最终结算金额")
    private BigDecimal finalSettlementAmount;

    @Schema(description = "有效结算金额，最终结算金额大于 0 时取最终结算金额，否则取合同产值")
    private BigDecimal effectiveSettlementAmount;

    @Schema(description = "综合所协作金额")
    private BigDecimal comprehensivePlanningAmount;

    @Schema(description = "专业分包金额")
    private BigDecimal subcontractPlanningAmount;

    @Schema(description = "专业所产值")
    private BigDecimal majorOutputValue;

    @Schema(description = "专业所预计绩效")
    private BigDecimal majorExpectedPerformance;

    @Schema(description = "科创产值比例")
    private BigDecimal innovationOutputRate;

    @Schema(description = "科创产值")
    private BigDecimal innovationOutputValue;

    @Schema(description = "其他成本")
    private BigDecimal otherCost;

    @Schema(description = "盈亏值")
    private BigDecimal profitLossValue;

    @Schema(description = "盈亏百分比")
    private BigDecimal profitLossRate;

    @Schema(description = "项目开始年度")
    private Integer projectStartYear;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

}
