package com.yida.data.common.core.entity.user;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 教师实体类
 *
 * @author zyj
 * @date 2020/6/3
 */
@Data
public class EduStaff implements Serializable {

    private static final long serialVersionUID = -1945376676737016875L;

    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createDate;

    private Long createId;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE)
    private LocalDateTime updateDate;

    private Long updateId;

    @TableLogic(value = "0", delval = "1")
    private Integer delFlag;

    /**
     * 教师姓名
     */
    @ApiModelProperty("教师名称")
    private String name;

    @ApiModelProperty("头像url")
    private String avatar;

    /**
     *
     */
    @ApiModelProperty("教师性别 0:男, 1:女,2保密")
    private String sex;

    /**
     * 联系方式
     */
    @ApiModelProperty("手机号")
    private String mobile;

    @ApiModelProperty("座机")
    private String landLine;

    @ApiModelProperty("邮箱")
    private String email;


    @ApiModelProperty("学校id")
    private Long schoolId;

    @ApiModelProperty("学校名称")
    private String schoolName;

    @ApiModelProperty("职务信息")
    private String position;

    @ApiModelProperty("地址")
    private String address;

    @ApiModelProperty("底图采集状态,0-未采集，1-已采集")
    private Integer collectType;

    private Long sysUserId;

    @ApiModelProperty("0-创建到微信，1-不创建到微信")
    private Integer wxPath;

    @ApiModelProperty("企业微信用户Id")
    private String wxId;

    @ApiModelProperty("易达app用户Id")
    private String yidaAppUserId;

    @ApiModelProperty("微信公众号openId")
    private String wxPublicOpenId;

    @ApiModelProperty("大华用户id")
    private Long dahuaId;

    @ApiModelProperty("大华用户code")
    private String dahuaCode;

    /**
     * 底图url
     */
    private transient String collectBasePic;

    /**
     * 关联班级信息
     */
    @ApiModelProperty("关联班级科目关系")
    private transient List<EduTeacherDept> teacherDept;

    /**
     * 关联部门信息
     */
    @ApiModelProperty("关联部门信息")
    private transient List<EduStaffDept> staffDept;

    private transient Integer teacherType;

    /********教师导入字段*********/

    @TableField(exist = false)
    private String alias;
    @TableField(exist = false)
    private Integer isLeader;
    @TableField(exist = false)
    private String companyAbbre;
    @TableField(exist = false)
    private String foreignPosition;
}