package com.xinyilu.system.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinyilu.common.custominterface.Insert;
import com.xinyilu.common.custominterface.Update;
import com.xinyilu.system.domain.studentInfo.StudentInfo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;

/**
 * @Description 学生信息管理DTO
 * @Author 纪寒
 * @Date 2022-08-01 13:12:56
 * @Version 1.0
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class StudentInfoDTO extends StudentInfo implements Serializable {
    private static final long serialVersionUID = 2307024939415079759L;
    /**
     * 所属家长id集合
     */
    @NotNull(message = "所属家长不能位空", groups = {Insert.class, Update.class})
    private List<Long> parentIdList;

    /**
     * 班级id集合
     */
    private List<Long> classIdList;

    /**
     * 学生id集合
     */
    private List<Long> idList;

    /**
     * 班级id集合，用于角色即是老师又是家长的情况下查询
     */
    private List<Long> classList;

    /**
     * 学生id集合，用于角色即是老师又是家长的情况下查询
     */
    private List<Long> studentList;

    /**
     * 出生日期开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate startTime;

    /**
     * 出生日期结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate endTime;

    /**
     * 幼儿园id
     */
    private Long kindergartenId;
}
