RerunRule.java 6.05 KB
package com.bsth.entity.schedule.rule;

import com.bsth.entity.Line;
import com.bsth.entity.schedule.CarConfigInfo;
import com.bsth.entity.schedule.EmployeeConfigInfo;
import com.bsth.entity.schedule.GuideboardInfo;
import com.bsth.entity.schedule.TTInfo;
import com.bsth.entity.sys.SysUser;

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

/**
 * 套跑规则。
 */
@Entity
@Table(name = "bsth_c_s_rerun_rule")
@NamedEntityGraphs({
        @NamedEntityGraph(name = "dylp", attributeNodes = {
                @NamedAttributeNode("rerunXl"),
                @NamedAttributeNode("rerunTtinfo"),
                @NamedAttributeNode("rerunLp"),
                @NamedAttributeNode("useXl"),
                @NamedAttributeNode("useLp"),
                @NamedAttributeNode("useCarConfig"),
                @NamedAttributeNode("useEmployeeConfig")

                // TODO:subgraph貌似没有用,再议
//                subgraphs = {
//                @NamedSubgraph(name = "useCarConfig", attributeNodes = {
//                        @NamedAttributeNode("xl"),
//                        @NamedAttributeNode("cl")
//                }),
//                @NamedSubgraph(name = "useEmployeeConfig", attributeNodes = {
//                        @NamedAttributeNode("jsy"),
//                        @NamedAttributeNode("spy"),
//                        @NamedAttributeNode("xl")
//                })
//                }
        })
})


public class RerunRule {
    /** 主键Id */
    @Id
    @GeneratedValue
    private Long id;

    /** 套跑线路 */
    @ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private Line rerunXl;
    /** 套跑时刻表 */
    @ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private TTInfo rerunTtinfo;
    /** 套跑路牌 */
    @ManyToOne(optional = false, cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private GuideboardInfo rerunLp;
    /** 套跑班次(时刻表明细ids,使用逗号连接) */
    private String rerunTtinfodetailIds;


    /** 套跑类型(dylp;对应路牌,dybc:对应班车) */
    @Column(nullable = false)
    private String rerunType;

    //--------- 对应路牌 ----------/
    /** 使用线路 */
    @ManyToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private Line useXl;
    /** 使用路牌 */
    @ManyToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private GuideboardInfo useLp;

    //--------- 对应班车 ----------/
    /** 车辆配置 */
    @ManyToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private CarConfigInfo useCarConfig;
    /** 人员配置 */
    @ManyToOne(cascade = CascadeType.DETACH, fetch = FetchType.LAZY)
    private EmployeeConfigInfo useEmployeeConfig;

    /** 是否删除(标记) */
    @Column(nullable = false)
    private Boolean isCancel = false;

    /** 创建人 */
    @ManyToOne(cascade = CascadeType.PERSIST, fetch = FetchType.LAZY)
    private SysUser createBy;
    /** 修改人 */
    @ManyToOne(cascade = CascadeType.PERSIST, fetch = FetchType.LAZY)
    private SysUser updateBy;
    /** 创建日期 */
    @Column(updatable = false, name = "create_date", columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
    private Date createDate;
    /** 修改日期 */
    @Column(name = "update_date", columnDefinition = "TIMESTAMP  DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP")
    private Date updateDate;

    public Long getId() {
        return id;
    }

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

    public Line getRerunXl() {
        return rerunXl;
    }

    public void setRerunXl(Line rerunXl) {
        this.rerunXl = rerunXl;
    }

    public TTInfo getRerunTtinfo() {
        return rerunTtinfo;
    }

    public void setRerunTtinfo(TTInfo rerunTtinfo) {
        this.rerunTtinfo = rerunTtinfo;
    }

    public GuideboardInfo getRerunLp() {
        return rerunLp;
    }

    public void setRerunLp(GuideboardInfo rerunLp) {
        this.rerunLp = rerunLp;
    }

    public String getRerunTtinfodetailIds() {
        return rerunTtinfodetailIds;
    }

    public void setRerunTtinfodetailIds(String rerunTtinfodetailIds) {
        this.rerunTtinfodetailIds = rerunTtinfodetailIds;
    }

    public String getRerunType() {
        return rerunType;
    }

    public void setRerunType(String rerunType) {
        this.rerunType = rerunType;
    }

    public Line getUseXl() {
        return useXl;
    }

    public void setUseXl(Line useXl) {
        this.useXl = useXl;
    }

    public GuideboardInfo getUseLp() {
        return useLp;
    }

    public void setUseLp(GuideboardInfo useLp) {
        this.useLp = useLp;
    }

    public CarConfigInfo getUseCarConfig() {
        return useCarConfig;
    }

    public void setUseCarConfig(CarConfigInfo useCarConfig) {
        this.useCarConfig = useCarConfig;
    }

    public EmployeeConfigInfo getUseEmployeeConfig() {
        return useEmployeeConfig;
    }

    public void setUseEmployeeConfig(EmployeeConfigInfo useEmployeeConfig) {
        this.useEmployeeConfig = useEmployeeConfig;
    }

    public SysUser getCreateBy() {
        return createBy;
    }

    public void setCreateBy(SysUser createBy) {
        this.createBy = createBy;
    }

    public SysUser getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(SysUser updateBy) {
        this.updateBy = updateBy;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public Boolean getIsCancel() {
        return isCancel;
    }

    public void setIsCancel(Boolean isCancel) {
        this.isCancel = isCancel;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }
}