package com.ym.mec.biz.dal.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ym.mec.biz.dal.entity.CourseSchedule;
import com.ym.mec.biz.dal.enums.CourseStatusEnum;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author hgw
 * Created by 2021-12-26
 */
public class TenantCloudCourseRecordVo implements Serializable {
    @TableId(value = "id_", type = IdType.AUTO)
    @ApiModelProperty(value = "流水id")
    private Integer id;

    @TableField("course_id_")
    @ApiModelProperty(value = "课程编号 course_schedule表的id_")
    private Integer courseId;

    @ApiModelProperty(value = "分部名称")
    private String organName;

    @ApiModelProperty(value = "机构Id")
    private Integer tenantId;

    @ApiModelProperty(value = "机构名称")
    private String tenantName;

    @ApiModelProperty(value = "课程类型  CourseSchedule.CourseScheduleType")
    private String type;

    @ApiModelProperty(value = "上课教师名称")
    private String teacherName;

    @ApiModelProperty(value = "实际上课人数")
    private Integer studentNum;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "上课日期")
    private Date classDate;

    @JsonFormat(pattern = "HH:mm:ss")
    @ApiModelProperty(value = "上课时间")
    private Date startClassTime;

    @JsonFormat(pattern = "HH:mm:ss")
    @ApiModelProperty(value = "结束时间")
    private Date endClassTime;

    @ApiModelProperty(value = "课程状态 CourseStatusEnum")
    private String status;

    @TableField("deduct_state_")
    @ApiModelProperty(value = "扣费状态 0冻结 1扣费 2取消冻结")
    private Integer deductState;

    @TableField("amount_")
    @ApiModelProperty(value = "金额")
    private BigDecimal amount;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getCourseId() {
        return courseId;
    }

    public void setCourseId(Integer courseId) {
        this.courseId = courseId;
    }

    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }

    public Integer getTenantId() {
        return tenantId;
    }

    public void setTenantId(Integer tenantId) {
        this.tenantId = tenantId;
    }

    public String getTenantName() {
        return tenantName;
    }

    public void setTenantName(String tenantName) {
        this.tenantName = tenantName;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getTeacherName() {
        return teacherName;
    }

    public void setTeacherName(String teacherName) {
        this.teacherName = teacherName;
    }

    public Integer getStudentNum() {
        return studentNum;
    }

    public void setStudentNum(Integer studentNum) {
        this.studentNum = studentNum;
    }

    public Date getClassDate() {
        return classDate;
    }

    public void setClassDate(Date classDate) {
        this.classDate = classDate;
    }

    public Date getStartClassTime() {
        return startClassTime;
    }

    public void setStartClassTime(Date startClassTime) {
        this.startClassTime = startClassTime;
    }

    public Date getEndClassTime() {
        return endClassTime;
    }

    public void setEndClassTime(Date endClassTime) {
        this.endClassTime = endClassTime;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Integer getDeductState() {
        return deductState;
    }

    public void setDeductState(Integer deductState) {
        this.deductState = deductState;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }
}
