package cn.iocoder.lyzsys.module.tjt.dal.dataobject.planning;

import cn.iocoder.lyzsys.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 合约规划 DO
 *
 * @author Codex
 */
@TableName("tjt_project_planning")
@KeySequence("tjt_project_planning_seq")
@Data
@EqualsAndHashCode(callSuper = true)
public class ProjectPlanningDO extends TenantBaseDO {

    @TableId
    private Long id;

    private Long projectId;

    private Integer sortNo;

    private String ownershipType;

    private String calculationMethod;

    private String planningContent;

    private BigDecimal planningAmount;

    private BigDecimal contractValueQuantity;

    private BigDecimal contractValueUnitPrice;

    private BigDecimal managementFeeRate;

    private BigDecimal managementFee;

    private BigDecimal vatRate;

    private BigDecimal vatAmount;

    private BigDecimal projectBudgetOutputValue;

    private String implementationTeam;

    private Integer planningStartYear;

    private BigDecimal planningArea;

    private String designStage;

    private BigDecimal currentDesignStageRatio;

    private Boolean reviewOutsourceFlag;

    private BigDecimal reviewOutsourceRatio;

    private BigDecimal totalDistributionAmount;

    private String progressRemark;

    private Integer buildingOrUnitCount;

    private BigDecimal drawingSetFactor;

    private BigDecimal scaleFactor;

    private BigDecimal modificationFactor;

    private BigDecimal complexityFactor;

    private BigDecimal internalGuidanceUnitPrice;

    private String virtualCalculationMethod;

    private BigDecimal workingDayCount;

    private BigDecimal workingDayUnitPrice;

    private BigDecimal guidanceUnitPrice;

    private BigDecimal guidanceTotalPrice;

    private BigDecimal calculationRatio;

    private BigDecimal contractUnitPrice;

    private BigDecimal totalAdjustmentFactor;

    private BigDecimal assessmentArea;

    private BigDecimal virtualOutputValue;

    private BigDecimal assessmentOutputValue;

}
