package org.dromara.system.domain.bo;

import org.dromara.system.domain.StudentInfoOld;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;

/**
 * 学生档案历史信息业务对象 student_info_old
 *
 * @author Lion Li
 * @date 2023-08-16
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = StudentInfoOld.class, reverseConvertGenerate = false)
public class StudentInfoOldBo extends BaseEntity {

    /**
     * ID
     */
    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
    private Long oldId;

    /**
     * 学生id（家长-学生(审核通过之后数据)表id）
     */
    @NotNull(message = "学生id（家长-学生(审核通过之后数据)表id）不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long studentId;

    /**
     * 姓名
     */
    //@NotBlank(message = "姓名不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 性别(1：男，2：女)
     */
    //@NotBlank(message = "性别(1：男，2：女)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String sex;

    /**
     * 年龄
     */
    //@NotBlank(message = "年龄不能为空", groups = { AddGroup.class, EditGroup.class })
    private String age;

    /**
     * 名族
     */
    //@NotBlank(message = "名族不能为空", groups = { AddGroup.class, EditGroup.class })
    private String familyName;

    /**
     * 学校
     */
    //@NotBlank(message = "学校不能为空", groups = { AddGroup.class, EditGroup.class })
    private String school;

    /**
     * 学号
     */
    //@NotBlank(message = "学号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String studentNumber;

    /**
     * 身份证号
     */
    //@NotBlank(message = "身份证号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String idCard;

    /**
     * 是否近视（1：是，2：否）
     */
    //@NotBlank(message = "是否近视（1：是，2：否）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String isNearsightedness;

    /**
     * 近视度数
     */
    //@NotBlank(message = "近视度数不能为空", groups = { AddGroup.class, EditGroup.class })
    private String degreeMyopia;

    /**
     * 是否远视（1：是，2：否）
     */
    //@NotBlank(message = "是否远视（1：是，2：否）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String isFarsightedness;

    /**
     * 远视度数
     */
    //@NotBlank(message = "远视度数不能为空", groups = { AddGroup.class, EditGroup.class })
    private String farsightedness;

    /**
     * 身高
     */
    //@NotBlank(message = "身高不能为空", groups = { AddGroup.class, EditGroup.class })
    private String height;

    /**
     * 体重
     */
    //@NotBlank(message = "体重不能为空", groups = { AddGroup.class, EditGroup.class })
    private String weight;

    /**
     * 血型
     */
    //@NotBlank(message = "血型不能为空", groups = { AddGroup.class, EditGroup.class })
    private String bloodType;

    /**
     * 政治面貌
     */
    //@NotBlank(message = "政治面貌不能为空", groups = { AddGroup.class, EditGroup.class })
    private String politicalStatus;

    /**
     * 健康状况
     */
    //@NotBlank(message = "健康状况不能为空", groups = { AddGroup.class, EditGroup.class })
    private String health;

    /**
     * 证件照(地址)
     */
    //@NotBlank(message = "证件照(地址)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String identificationPhoto;

    /**
     * 心理状况
     */
    //@NotBlank(message = "心理状况不能为空", groups = { AddGroup.class, EditGroup.class })
    private String mind;

    /**
     * 门禁照(地址)
     */
    //@NotBlank(message = "门禁照(地址)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String entrancePermit;

    /**
     * 父亲
     */
    //@NotBlank(message = "父亲不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fatherName;

    /**
     * 父亲联系方式
     */
    //@NotBlank(message = "父亲联系方式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fatherTelephone;

    /**
     * 母亲
     */
    //@NotBlank(message = "母亲不能为空", groups = { AddGroup.class, EditGroup.class })
    private String motherName;

    /**
     * 母亲联系方式
     */
    //@NotBlank(message = "母亲联系方式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String motherTelephone;

    /**
     * 居住地址
     */
    //@NotBlank(message = "居住地址不能为空", groups = { AddGroup.class, EditGroup.class })
    private String address;

    /**
     * 经度
     */
    //@NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String longitude;

    /**
     * 纬度
     */
    //@NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String latitude;

    /**
     * 备注
     */
    //@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
    private String remark;

    /**
     * 有无过往病史（1：有，2：无）
     */
    //@NotBlank(message = "有无过往病史（1：有，2：无）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String isMedicalHistory;

    /**
     * 病史描述
     */
    //@NotBlank(message = "病史描述不能为空", groups = { AddGroup.class, EditGroup.class })
    private String medicalDescription;

    /**
     * 心理健康描述
     */
    //@NotBlank(message = "心理健康描述不能为空", groups = { AddGroup.class, EditGroup.class })
    private String psychologicalDescription;

    /**
     * 留守儿童（1：是，2：否）
     */
    //@NotBlank(message = "留守儿童（1：是，2：否）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String isLset;

    /**
     * 是否贫困（1：是，2：否）
     */
    //@NotBlank(message = "是否贫困（1：是，2：否）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String isPoverty;

    /**
     * 紧急联系人
     */
    //@NotBlank(message = "紧急联系人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String emergencyContact;

    /**
     * 紧急联系人手机号
     */
    //@NotBlank(message = "紧急联系人手机号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String emergencyContactTelephone;


}
