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

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 校园大数据仪表盘数据中心Entity
 *
 * @author ZYJ
 * @date 2023-04-19 16:42:57
 */
@Data
@TableName("edu_school_dashboard_data")
public class EduSchoolDashboardData implements Serializable {

    private static final long serialVersionUID = -5320543865040629256L;

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

    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    @TableField(value = "create_id", fill = FieldFill.INSERT)
    private Long createId;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_date", fill = FieldFill.INSERT)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createDate;

    /**
     * 最后修改人id
     */
    @ApiModelProperty(value = "最后修改人id")
    @TableField(value = "update_id", fill = FieldFill.UPDATE)
    private Long updateId;

    /**
     * 最后修改时间
     */
    @ApiModelProperty(value = "最后修改时间")
    @TableField(value = "update_date", fill = FieldFill.UPDATE)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateDate;

    /**
     * 删除标识. 0: 未删除, 1: 已删除
     */
    @ApiModelProperty(value = "删除标识. 0: 未删除, 1: 已删除")
    @TableField("del_flag")
    @TableLogic(value = "0", delval = "1")
    private Integer delFlag;

    /**
     * 学校id
     */
    @ApiModelProperty(value = "学校id")
    @TableField("school_id")
    private Long schoolId;

    /**
     * 大屏名称
     */
    @ApiModelProperty(value = "大屏名称")
    @TableField("title")
    private String title;

    /**
     * 学校logo地址
     */
    @ApiModelProperty(value = "学校logo地址")
    @TableField("header_url")
    private String headerUrl;

    /**
     * 模板类型1:单页，2双页，3.。。
     */
    @ApiModelProperty(value = "模板类型1:单页，2双页，3.。。")
    @TableField("mode_type")
    private Integer modeType;

    /**
     * 所属区域
     */
    @ApiModelProperty(value = "所属区域")
    @TableField("area")
    private String area;

    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    @TableField("address")
    private String address;

    /**
     * 学校创建时间
     */
    @ApiModelProperty(value = "学校创建时间")
    @TableField("school_create_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private LocalDate schoolCreateDate;

    /**
     * 学校占地面积
     */
    @ApiModelProperty(value = "学校占地面积")
    @TableField("school_area")
    private Integer schoolArea;

    /**
     * 主管部门
     */
    @ApiModelProperty(value = "主管部门")
    @TableField("competent_department")
    private String competentDepartment;

    /**
     * 办学类型
     */
    @ApiModelProperty(value = "办学类型")
    @TableField("edu_type")
    private String eduType;

    /**
     * 院校特色
     */
    @ApiModelProperty(value = "院校特色")
    @TableField("edu_feature")
    private String eduFeature;

    /**
     * 院校类型
     */
    @ApiModelProperty(value = "院校类型")
    @TableField("institution_type")
    private String institutionType;

    /**
     * 硕士点
     */
    @ApiModelProperty(value = "硕士点")
    @TableField("master_num")
    private Integer masterNum;

    /**
     * 博士点
     */
    @ApiModelProperty(value = "博士点")
    @TableField("doctor_num")
    private Integer doctorNum;

    /**
     * 重点学科数
     */
    @ApiModelProperty(value = "重点学科数")
    @TableField("key_disciplines_num")
    private Integer keyDisciplinesNum;

    /**
     * 科研项目数
     */
    @ApiModelProperty(value = "科研项目数")
    @TableField("research_project_num")
    private Integer researchProjectNum;

    /**
     * 学校简介
     */
    @ApiModelProperty(value = "学校简介")
    @TableField("edu_introduction")
    private String eduIntroduction;

    /**
     * 办学理念
     */
    @ApiModelProperty(value = "办学理念")
    @TableField("edu_philosophy")
    private String eduPhilosophy;

    /**
     * 办学使命
     */
    @ApiModelProperty(value = "办学使命")
    @TableField("edu_mission")
    private String eduMission;

    /**
     * 办学校训
     */
    @ApiModelProperty(value = "办学校训")
    @TableField("edu_motto")
    private String eduMotto;

    /**
     * 校园风采
     */
    @ApiModelProperty(value = "校园风采")
    @TableField("campus_style")
    private String campusStyle;

    /**
     * 官方电话
     */
    @ApiModelProperty(value = "官方电话")
    @TableField("telephone")
    private String telephone;

    /**
     * 教师人数
     */
    @ApiModelProperty(value = "教师人数")
    @TableField("teacher_num")
    private Integer teacherNum;

    /**
     * 院系数量
     */
    @ApiModelProperty(value = "院系数量")
    @TableField("department_num")
    private Integer departmentNum;

    /**
     * 一级学科数量
     */
    @ApiModelProperty(value = "一级学科数量")
    @TableField("first_level_discipline_num")
    private Integer firstLevelDisciplineNum;

    /**
     * 二级学科数量
     */
    @ApiModelProperty(value = "二级学科数量")
    @TableField("secondary_discipline_num")
    private Integer secondaryDisciplineNum;

    /**
     * 班级数
     */
    @ApiModelProperty(value = "班级数")
    @TableField("class_num")
    private Integer classNum;

    /**
     * 学生人数
     */
    @ApiModelProperty(value = "学生人数")
    @TableField("student_num")
    private Integer studentNum;
}