SchedulePlan.java 3.17 KB
package com.bsth.entity.schedule;

import com.bsth.entity.Line;
import com.fasterxml.jackson.annotation.JsonIgnore;

import javax.persistence.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 排班计划。
 */
@Entity
@Table(name = "bsth_c_s_sp")
@NamedEntityGraphs({
        @NamedEntityGraph(name = "schedulePlan_xl", attributeNodes = {
            @NamedAttributeNode("xl"),
        })
})
public class SchedulePlan extends BEntity {

    /** 主键Id */
    @Id
    @GeneratedValue
    private Long id;

    /** 关联的线路 */
    @ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private Line xl;

    /** 排班计划的开始时间 */
    @Column(nullable = false)
    private Date scheduleFromTime;
    /** 排班计划的结束时间 */
    @Column(nullable = false)
    private Date scheduleToTime;

    /** 使用的时刻表名字列表(用逗号连接) */
    private String ttInfoNames;
    /** 使用的时刻表id列表(用逗号连接) */
    private String ttInfoIds;

    /** 是否 排班计划优先 */
    private Boolean isHistoryPlanFirst;

    /** 每次排班的结果数据(错误,正确提示都在这里) */
    @Column(length = 2000)
    private String planResult;

    @JsonIgnore
    /** 使用中间表的一对多关联 明细信息 */
    @OneToMany(mappedBy = "schedulePlan", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
    private List<SchedulePlanInfo> schedulePlanInfoList = new ArrayList<>();

    public Long getId() {
        return id;
    }

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

    public Line getXl() {
        return xl;
    }

    public void setXl(Line xl) {
        this.xl = xl;
    }

    public Date getScheduleFromTime() {
        return scheduleFromTime;
    }

    public void setScheduleFromTime(Date scheduleFromTime) {
        this.scheduleFromTime = scheduleFromTime;
    }

    public Date getScheduleToTime() {
        return scheduleToTime;
    }

    public void setScheduleToTime(Date scheduleToTime) {
        this.scheduleToTime = scheduleToTime;
    }

    public List<SchedulePlanInfo> getSchedulePlanInfoList() {
        return schedulePlanInfoList;
    }

    public void setSchedulePlanInfoList(List<SchedulePlanInfo> schedulePlanInfoList) {
        this.schedulePlanInfoList = schedulePlanInfoList;
    }

    public String getTtInfoNames() {
        return ttInfoNames;
    }

    public void setTtInfoNames(String ttInfoNames) {
        this.ttInfoNames = ttInfoNames;
    }

    public String getTtInfoIds() {
        return ttInfoIds;
    }

    public void setTtInfoIds(String ttInfoIds) {
        this.ttInfoIds = ttInfoIds;
    }

    public Boolean getIsHistoryPlanFirst() {
        return isHistoryPlanFirst;
    }

    public void setIsHistoryPlanFirst(Boolean isHistoryPlanFirst) {
        this.isHistoryPlanFirst = isHistoryPlanFirst;
    }

    public String getPlanResult() {
        return planResult;
    }

    public void setPlanResult(String planResult) {
        this.planResult = planResult;
    }
}