package cn.iocoder.yudao.module.knowledge.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;


@Data
@TableName("t_train")
@Schema(description = "培训类")
public class TTrain extends BaseDO {

    @Schema(description = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @Schema(description = "培训编码", example = "dsdssKDSDFDS0DSC2")
    private String code;

    @Schema(description = "培训班名称（内容）", example = "起航班")
    private String name;

    @Schema(description = "办班单位", example = "起航")
    private String holdUnit;

    @Schema(description = "办班形式 0:脱产 1：半脱产 2：业余", example = "0")
    private Integer holdForm;

    @Schema(description = "教学计划", example = "计划")
    private String plan;

    @Schema(description = "教师名称", example = "李某某")
    private String teacherName;

    @Schema(description = "教师学历", example = "大专")
    private String teacherEducation;

    @Schema(description = "教师职称", example = "高级")
    private String jobTitle;

    @Schema(description = "授课时长", example = "1.5")
    private Double teachTime;

    @Schema(description = "办班地址", example = "济南")
    private String handAddress;

    @Schema(description = "开班时间", example = "2024-04-22 12:00:00")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date startTime;

    @Schema(description = "结束时间", example = "2024-04-22 12:00:00")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date stopTime;

    @Schema(description = "办班单位审批意见", example = "没意见")
    private String holdApprovalOpinion;

    @Schema(description = "主管单位审批意见", example = "没意见")
    private String coApprovalOpinion;

    @Schema(description = "备注", example = "备注")
    private String desrc;

    @Schema(description = "培训人数", example = "11")
    @TableField(exist = false)
    private Integer userTotal;

    @Schema(description = "考试成绩)")
    @TableField(exist = false)
    private Double score;

    @Schema(description = "是否合格)")
    @TableField(exist = false)
    private String isPass;
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date examTime;
    @TableField(exist = false)
    private Integer duration;
}
