package com.dsk.cscec.domain.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class CbCostMeasureActualVo {
    /**
     * 主键id
     */
    private Long id;

    /**
     * 序号
     */
    private String number;

    /**
     * 清单内容
     */
    private String itemContent; // 清单内容

    /**
     * 工作内容
     */
    private String workContent; // 工作内容、做法/规格型号/施工现场配置说明

    /**
     * 单位
     */
    private String unit; // 单位

    /**
     * 工程量
     */
    private BigDecimal quantity; // 工程量

    /**
     * 不含税单价
     */
    private String unitPriceExcludingTax; // 不含税单价

    /**
     * 使用时间
     */
    private String usageTime; // 使用时间

    /**
     * 不含税合价
     */
    private String amountExcludingTax; //

    /**
     * 税率(%)
     */
    private String taxRate; // 税率(%)

    /**
     * 含税合价
     */
    private String amountIncludingTax; //

    /**
     * 摊销比例(%)
     */
    private String amortizationRatio; //

    /**
     * 摊销后不含税合价
     */
    private String amountExcludeTaxAmortized; //

    /**
     * 摊销后含税合价
     */
    private String amountIncludeTaxAmortized; //

    /**
     * 税金（元）
     */
    private String taxAmount; //

    /**
     * 备注
     */
    private String remarks; //

    /**
     * 成本科目
     */
    private String costSubject; // 成本科目

    /**
     * 税金类型
     */
    private String taxType; //

    /**
     * 计划成本措施费id
     */
    private Long planMeasureId;

    /**
     * 本月发生成本比例
     */
    private BigDecimal monthCostRate;

    /**
     * 成本合价
     */
    private BigDecimal costEffective;

    /**
     * 截止本月工程量
     */
    private BigDecimal currentProjectVolume;

    /**
     * 推送工程量
     */
    private BigDecimal submitProjectVolume;

    /**
     * 年月
     */
    private String month;

    /**
     * 推送时间
     */
    private Date pushTime;


    /**
     * 修改人
     */
    @TableField(value = "update_user")
    private String updateUser;

    /**
     * 修改人id
     */
    @TableField(value = "update_id")
    private String updateId;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private Date updateTime;

    public static final String COL_ID = "id";

    public static final String COL_PLAN_MEASURE_ID = "plan_measure_id";

    public static final String COL_MONTH_COST_RATE = "month_cost_rate";

    public static final String COL_COST_EFFECTIVE = "cost_effective";

    public static final String COL_CURRENT_PROJECT_VOLUME = "current_project_volume";

    public static final String COL_SUBMIT_PROJECT_VOLUME = "submit_project_volume";

    public static final String COL_MONTH = "month";

    public static final String COL_PUSH_TIME = "push_time";

    public static final String COL_PUSH_DATA_JSON = "push_data_json";

    public static final String COL_DEL_FLAG = "del_flag";

    public static final String COL_UPDATE_USER = "update_user";

    public static final String COL_UPDATE_ID = "update_id";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_TIME = "update_time";
}