package com.dayou.entity;
import com.dayou.common.BaseEntity;

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

import com.github.liangbaika.validate.annations.AbcValidate;
import com.github.liangbaika.validate.enums.Check;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.dayou.annotation.ExcelSheet;
import com.dayou.annotation.ExportCell;
import com.dayou.annotation.ImportCell;
/**
 * <p>
 * 项目阶段表
 * </p>
 *
 * @author wucl
 * @since 2022-12-08
 */
@Data
@ExcelSheet(sheetName = "项目阶段表")
public class ItemStage{

    private static final long serialVersionUID=1L;

    /**
     * id
     */
    private Long id;
    /**
     * 项目id
     */
    private Long itemId;

    /**
     * 阶段头id
     */
    private String headerId;

    /**
     * 阶段尾id
     */
    private String footerId;

    /**
     * 阶段名称
     */
    @ImportCell
    @ExportCell(columnName = "阶段名称")
    private String name;

    /**
     * 阶段目标
     */
    @ImportCell
    @ExportCell(columnName = "阶段目标")
    private String target;

    /**
     * 开始时间
     */
    @ImportCell
    @ExportCell(columnName = "开始时间")
    @AbcValidate(required = true ,message = "开始时间不能为空", fun = Check.NotNull)
    private LocalDate startDate;

    /**
     * 结束时间
     */
    @ImportCell
    @ExportCell(columnName = "结束时间")
    @AbcValidate(required = true ,message = "结束时间不能为空", fun = Check.NotNull)
    private LocalDate endDate;

    /**
     * 阶段负责人id(userid)
     */
    private Long dutyerId;

    /**
     * 备注
     */
    @ImportCell
    @ExportCell(columnName = "备注")
    private String remark;

    /**
     * 创建时间
     */
    private Date created;

    /**
     *提成权重
     */
    private BigDecimal weight;
    /**
     *逾期提成系数
     */
    private BigDecimal coefficient;
    /**
     *是否逾期
     */
    private Boolean overdue;

}
