package com.ssj.bean.sys.usercenter.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.ssj.bean.common.framework.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.*;
import java.util.Date;

/**
 * 学生信息
 * @author Mount Liu
 * @date 2018/9/20
 */
@Entity
@Table(name = "ssj_student_v")
public class StudentCenter extends BaseEntity {

    private static final long serialVersionUID = 1L;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 用户ID
     */
    private String userId;
    /**
     * 家长ID
     */
    private String parentId;
    /**
     * 状态 1--有效 2--无效
     */
    private String stat;
    /**
     * 性别 1男2女
     */
    private String sex;
    /**
     * vip编号
     */
    private String vipno;
    /**
     * 用户激活时间
     */
    private Date activateTime;
    /**
     * 1，普通卡，5，尊尚卡
     */
    private Integer level;
    /**
     * 会员卡二维码地址
     */
    private String qrcodeUrl;
    /**
     * 家长姓名
     */
    private String parentName;
    /**
     * 小孩姓名（宝宝姓名）
     */
    private String childName;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 学校
     */
    private String school;
    /**
     * 辅导
     */
    private String counseling;
    /**
     * 头像
     */
    private String imgUrl;


    /**
     * vip由系统自动生成编号
     */
    private Integer flowId;
    /**
     * //是否已更新 0 未更新 1已更新
     */
    private String isUpdate;
    /**
     * 生日
     */
    private Date birthday;
    /**
     * 年级
     */
    private String grade;
    /**
     * 家庭地址
     */
    private String family;

    private String orderUser; //预约的认证专员

    private Date orderTime;//预约时间
    /**
     * 1北师大（沪教版）深圳
     * 2人教版(教科版)  广州
     */
    private Integer banben;

    private String cardCode;//微信会员卡的code

    private String derver;//小塾设备号(深圳小塾设备号)

    private String courseName; //科目  多个科目用逗号隔开

    private String studyPlan; //学习计划 多个学习计划用逗号隔开

    private String tagsCharacter;   //性格标签

    private String tagsHabit;     //爱好标签

    private String planTemplateId;//kmt学习计划

    /**
     * 小孩用户ID
     */
    private String childUserId;

    @Column(updatable=false)
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getUserId() {
        return userId;
    }
    public void setUserId(String userId) {
        this.userId = userId;
    }
    public String getParentId() {
        return parentId;
    }
    public void setParentId(String parentId) {
        this.parentId = parentId;
    }
    public String getStat() {
        return stat;
    }
    public void setStat(String stat) {
        this.stat = stat;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public Date getActivateTime() {
        return activateTime;
    }
    public void setActivateTime(Date activateTime) {
        this.activateTime = activateTime;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getVipno() {
        return vipno;
    }
    public void setVipno(String vipno) {
        this.vipno = vipno;
    }
    @Column(updatable =false)
    public Integer getLevel() {
        return level;
    }
    public void setLevel(Integer level) {
        this.level = level;
    }
    public String getQrcodeUrl() {
        return qrcodeUrl;
    }
    public void setQrcodeUrl(String qrcodeUrl) {
        this.qrcodeUrl = qrcodeUrl;
    }
    public String getParentName() {
        return parentName;
    }
    public void setParentName(String parentName) {
        this.parentName = parentName;
    }
    public String getChildName() {
        return childName;
    }
    public void setChildName(String childName) {
        this.childName = childName;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public String getSchool() {
        return school;
    }
    public void setSchool(String school) {
        this.school = school;
    }
    public String getCounseling() {
        return counseling;
    }
    public void setCounseling(String counseling) {
        this.counseling = counseling;
    }
    public String getImgUrl() {
        return imgUrl;
    }
    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }

    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name = "flow_id",insertable =false, updatable=false, nullable=false)
    public Integer getFlowId() {
        return flowId;
    }
    public void setFlowId(Integer flowId) {
        this.flowId = flowId;
    }
    public String getIsUpdate() {
        return isUpdate;
    }
    public void setIsUpdate(String isUpdate) {
        this.isUpdate = isUpdate;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JSONField(format="yyyy-MM-dd")
    public Date getBirthday() {
        return birthday;
    }
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
    public String getGrade() {
        return grade;
    }
    public void setGrade(String grade) {
        this.grade = grade;
    }
    public String getFamily() {
        return family;
    }
    public void setFamily(String family) {
        this.family = family;
    }
    public String getOrderUser() {
        return orderUser;
    }
    public void setOrderUser(String orderUser) {
        this.orderUser = orderUser;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public Date getOrderTime() {
        return orderTime;
    }
    public void setOrderTime(Date orderTime) {
        this.orderTime = orderTime;
    }
    public Integer getBanben() {
        return banben;
    }
    public void setBanben(Integer banben) {
        this.banben = banben;
    }
    public String getCardCode() {
        return cardCode;
    }
    public void setCardCode(String cardCode) {
        this.cardCode = cardCode;
    }
    public String getDerver() {
        return derver;
    }
    public void setDerver(String derver) {
        this.derver = derver;
    }
    public String getCourseName() {
        return courseName;
    }
    public void setCourseName(String courseName) {
        this.courseName = courseName;
    }
    public String getStudyPlan() {
        return studyPlan;
    }
    public void setStudyPlan(String studyPlan) {
        this.studyPlan = studyPlan;
    }

    public String getTagsCharacter() {
        return tagsCharacter;
    }

    public void setTagsCharacter(String tagsCharacter) {
        this.tagsCharacter = tagsCharacter;
    }

    public String getTagsHabit() {
        return tagsHabit;
    }

    public void setTagsHabit(String tagsHabit) {
        this.tagsHabit = tagsHabit;
    }
    public String getPlanTemplateId() {
        return planTemplateId;
    }
    public void setPlanTemplateId(String planTemplateId) {
        this.planTemplateId = planTemplateId;
    }
    public String getChildUserId() {
        return childUserId;
    }
    public void setChildUserId(String childUserId) {
        this.childUserId = childUserId;
    }
}
