package com.crunii.micro.domain.entity.main;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;

/**
 * @author wangchen create 2023/6/5 15:30
 */
@Entity
@Table(name = "ycq_league_detail")
@DynamicInsert
@DynamicUpdate
@Getter
@Setter
@ToString
@EqualsAndHashCode(of= {"leagueDetailId"})
@GenericGenerator(name = "idGenerator", strategy = "com.crunii.micro.core.distributed.DistributedSnowFlakeId")
@ApiModel(description = "团委组织详情表")
public class YcqLeagueDetail implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(generator = "idGenerator")
    @Column(name = "league_detail_id")
    @ApiModelProperty(value = "主键")
    private String leagueDetailId;

    @Column(name = "adm_num")
    @ApiModelProperty(value = "本级团组织行政编制数")
    private Integer admNum;

    @Column(name = "contact_address")
    @ApiModelProperty(value = "地址")
    private String contactAddress;

    @Column(name = "contact_email")
    @ApiModelProperty(value = "联系电话")
    private String contactEmail;

    @Column(name = "contact_telephone")
    @ApiModelProperty(value = "组织编码")
    private String contactTelephone;

    @Column(name = "contact_person")
    @ApiModelProperty(value = "组织编码")
    private String contactPerson;

    @Column(name = "create_time")
    @ApiModelProperty(value = "组织编码")
    private String createTime;

    @Column(name = "enter_prise_num")
    @ApiModelProperty(value = "本级团组织事业编制数")
    private Integer enterPriseNum;

    @Column(name = "graduation_data")
    @ApiModelProperty(value = "组织编码")
    private String graduationData;

    @Column(name = "graduation_data_status")
    @ApiModelProperty(value = "组织编码")
    private Integer graduationDataStatus;

    @Column(name = "industry_name")
    @ApiModelProperty(value = "组织编码")
    private String industryName;

    @Column(name = "industry_options")
    @ApiModelProperty(value = "组织编码")
    private String industryOptions;

    @Column(name = "industry_type_id")
    @ApiModelProperty(value = "组织编码")
    private String industryTypeId;

    @Column(name = "is_check_g_date")
    @ApiModelProperty(value = "组织编码")
    private Integer isCheckGDate;

    @Column(name = "is_country")
    @ApiModelProperty(value = "组织编码")
    private Integer isCountry;

    @Column(name = "is_new_created")
    @ApiModelProperty(value = "组织编码")
    private Integer isNewCreated;

    @Column(name = "is_school")
    @ApiModelProperty(value = "组织编码")
    private Integer isSchool;

    @Column(name = "league_code")
    @ApiModelProperty(value = "组织编码")
    private String leagueCode;

    @Column(name = "league_full_name")
    @ApiModelProperty(value = "组织编码")
    private String leagueFullName;

    @Column(name = "league_id")
    @ApiModelProperty(value = "组织编码")
    private String leagueId;

    @Column(name = "league_name")
    @ApiModelProperty(value = "组织编码")
    private String leagueName;

    @Column(name = "league_photo64")
    @ApiModelProperty(value = "组织编码")
    private String leaguePhoto64;

    @Column(name = "league_photo_url")
    @ApiModelProperty(value = "组织编码")
    private String leaguePhotoUrl;

    @Column(name = "league_secretary")
    @ApiModelProperty(value = "组织编码")
    private String leagueSecretary;

    @Column(name = "league_type_id")
    @ApiModelProperty(value = "组织编码")
    private String leagueTypeId;

    @Column(name = "league_type_name")
    @ApiModelProperty(value = "组织编码")
    private String leagueTypeName;

    @Column(name = "modify_name")
    @ApiModelProperty(value = "组织编码")
    private String modifyName;

    @Column(name = "modify_time")
    @ApiModelProperty(value = "组织编码")
    private String modifyTime;

    @Column(name = "not_class_reason")
    @ApiModelProperty(value = "组织编码")
    private String notClassReason;

    @Column(name = "parent_league_full_name")
    @ApiModelProperty(value = "组织编码")
    private String parentLeagueFullName;

    @Column(name = "parent_league_id")
    @ApiModelProperty(value = "组织编码")
    private String parentLeagueId;

    @Column(name = "parent_league_name")
    @ApiModelProperty(value = "组织编码")
    private String parentLeagueName;

    @Column(name = "real_adm_num")
    @ApiModelProperty(value = "行政编制实际配备数")
    private Integer realAdmNum;

    @Column(name = "real_enter_prise_num")
    @ApiModelProperty(value = "事业编制实际配备数")
    private String realEnterPriseNum;

    @Column(name = "recommend_party_num")
    @ApiModelProperty(value = "组织编码")
    private Integer recommendPartyNum;

    @Column(name = "youth_1428_num")
    @ApiModelProperty(value = "组织编码")
    private Integer youth1428Num;

    @Column(name = "weibo")
    @ApiModelProperty(value = "微博")
    private String weibo;

    @Column(name = "weixin")
    @ApiModelProperty(value = "微信公众号")
    private String weixin;
}
