package com.srs.comprehensive.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.*;
import com.srs.common.annotation.Excel;
import com.srs.common.core.domain.BaseEntity;
import com.srs.common.core.domain.TreeEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;


/**
 * 个人评优评先类别对象 cph_own_good_type
 *
 * @author srs
 * @date 2023-09-11
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ApiModel(value = "CphOwnGoodType对象" , description = "个人评优评先类别")
@TableName("cph_own_good_type")
public class CphOwnGoodType extends BaseEntity {
private static final long serialVersionUID=1L;

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

    /**
     * 个人评优类别名称
     */
    @ApiModelProperty("个人评优类别名称")
    @TableField("type_name")
    @Excel(name = "个人评优类别名称")
    private String typeName;

    /**
     * 类别代码
     */
    @ApiModelProperty("类别代码")
    @TableField("type_code")
    @Excel(name = "类别代码")
    private String typeCode;

    /**
     * 父级类别代码
     */
    @ApiModelProperty("父级类别代码")
    @TableField("parent_code")
    @Excel(name = "父级类别代码")
    private String parentCode;

    /**
     * 学年id
     */
    @ApiModelProperty("学年id")
    @TableField("stu_year_id")
    @Excel(name = "学年id")
    private Long stuYearId;

    /**
     * 开始时间
     */
    @ApiModelProperty("开始时间")
    @TableField("start_time")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间" , width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty("结束时间")
    @TableField("end_time")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间" , width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /**
     * 启用状态
     */
    @ApiModelProperty("启用状态")
    @TableField("enable_status")
    @Excel(name = "启用状态")
    private String enableStatus;

    /**
     * 开始状态
     */
    @ApiModelProperty("开始状态")
    @TableField("start_status")
    @Excel(name = "开始状态")
    private String startStatus;

    /**
     * 树形结构
     */
    @ApiModelProperty("树形结构")
    @TableField("trees")
    @Excel(name = "树形结构")
    private String trees;

    /**
     * 状态
     */
    @ApiModelProperty("状态")
    @TableField("status")
    @Excel(name = "状态")
    private String status;

    /**
     * 删除标记（0存在2删除）
     */
    @ApiModelProperty("删除标记（0存在2删除）")
    @TableField("del_flag")
    private String delFlag;

    @TableField("only_code")
    public String onlyCode;


    @TableField(exist = false)
    public String stuYearName;


        }
