EvalGroupRankStageDTO.java 1.34 KB
package cn.fw.morax.domain.dto.eval;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;

import javax.validation.Valid;
import javax.validation.constraints.Future;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.time.LocalDate;
import java.util.List;

/**
 * <p>
 * 考评阶段
 * </p>
 *
 * @author jiangchao
 * @since 2022-12-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class EvalGroupRankStageDTO {

    /**
     * 考评组id(前一次)
     */
    private Long id;

    /**
     * 阶段名称
     */
    @NotBlank(message = "名称不能为空")
    @Length(max = 255, message = "名称超出最大限制")
    private String name;

    /**
     * 生效时间
     */
//    @Future(message = "生效时间不能在当前时间之前")
    @NotNull(message = "生效时间不能为空")
    private LocalDate beginTime;

    /**
     * 结束时间
     */
    @NotNull(message = "结束时间不能为空")
//    @Future(message = "结束时间不能在当前时间之前")
    private LocalDate overTime;

    /**
     * 考评组
     */
    @NotNull(message = "考评组不能为空")
    @Size(min = 1, message = "考评组不能为空")
    @Valid
    private List<EvalGroupDTO> evalGroups;

}