You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

232 lines
4.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.ruoyi.course.domain;
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 com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* <p>
* 排课信息
* </p>
*
*
*
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sc_cla_time")
public class ScClaTime implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 排课编号
*/
@TableId(value = "course_time_id", type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class)
private Long courseTimeId;
/**
* 规则编号
*/
@TableField("rule_id")
private Long ruleId;
/**
* 班级id
*/
@TableField("cla_id")
private Long claId;
@TableField( "course_id")
private Long courseId;
/**
* 任课教师
*/
@TableField("teacher_id")
private Long teacherId;
/**
* 上课教室
*/
@TableField("room_id")
private Long roomId;
/**
* 上课教室
*/
@TableField("room_name")
private String roomName;
/**
* 上课主题
*/
@TableField("class_theme")
private String classTheme;
/**
* 上课日期 如:2020-02-05
*/
@TableField("cla_date")
private String claDate;
/**
* 上课开始时间
*/
@TableField("start_time")
private String startTime;
/**
* 上课结束时间
*/
@TableField("end_time")
private String endTime;
/**
* 实际上课时间
*/
@TableField("real_cla_date")
private String realClaDate;
/**
* 实际开始时间
*/
@TableField("real_start_time")
private String realStartTime;
/**
* 实际结束时间
*/
@TableField("real_end_time")
private String realEndTime;
/**
* 老师获取的课时费
*/
@TableField("teacher_fee")
private BigDecimal teacherFee;
/**
* 来源 1:重复排课 2:未排课上课 3:单个新增
*/
@TableField("source")
private String source;
/**
* 状态 1:待上课 2:已上课
*/
@TableField("status")
private String status;
/**
* 预约人数
*/
@TableField("book_attend_cnt")
private Integer bookAttendCnt;
/**
* 实到人数
*/
@TableField("real_attend_cnt")
private Integer realAttendCnt;
/**
* 限制最高人数
*/
@TableField("at_class_cnt")
private Integer atClassCnt;
/**
* 最低开课人数
*/
@TableField("less_cnt")
private Integer lessCnt;
/**
* 备注
*/
@TableField("memo")
private String memo;
/**
* 创建者
*/
@TableField("create_user")
private Long createUser;
/**
* 创建时间
*/
@TableField("create_time")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
/**
* 更新时间
*/
@TableField("last_update_time")
private Date lastUpdateTime;
@TableField("venue_fee")
private BigDecimal venueFee;
@TableField("room_usage_time")
private Double roomUsageTime;//不足0.5按0.5计,>0.5小时按1小时计
/**
* 所属租户
*/
@TableField("tenant_id")
private String tenantId;
@TableField("dept_id")
private Long storeId;
@TableField(exist = false)
private String courseName;
@TableField(exist = false)
private String claName;
@TableField(exist = false)
private String deptName;
public boolean checkUpdateParam() {
if (StringUtils.isAnyEmpty(claDate, startTime, endTime)) {
return false;
}
if (null == teacherId) {
return false;
}
return true;
}
public boolean checkAddParam() {
if(null == claId || null == teacherId) {
return false;
}
if (StringUtils.isAnyEmpty(claDate, startTime, endTime)) {
return false;
}
return true;
}
}