Section.java 7.08 KB
package com.bsth.entity;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import org.geolatte.geom.LineString;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.Formula;

import java.util.Date;

import javax.persistence.*;

/**
 * 
 * @ClassName : Section(路段实体类)
 * 
 * @Author : bsth@lq
 * 
 * @Description : TODO(路段)
 * 
 * @Data :2016-04-21
 *
 * @Version 公交调度系统BS版 0.1
 * 
 */

@Entity
@Table(name = "bsth_c_section")
@JsonIgnoreProperties(ignoreUnknown = true)
@DynamicUpdate
public class Section{
	
	@Id
	private Integer id;

	/**
	 * 路段编码
 	 */
	private String sectionCode;

	/**
	 * 道路编码
 	 */
	private String roadCoding;

	/**
	 * 路段名称
 	 */
	private String sectionName;

	/**
	 * 路段距离
 	 */
	private Double sectionDistance;

	/**
	 * 路段时间
 	 */
	private Double sectionTime;

	/**
	 * 经纬坐标类型
 	 */
	private String dbType;

	/**
	 * 路段类型
 	 */
	private String sectionType;

	/**
	 * 路段矢量(空间坐标点集合)--GPS坐标点
 	 */
	@JsonIgnore
	private LineString gsectionVector;

	@Transient
	private String gsectionVectorWkt;

	/**
	 * 路段矢量(空间坐标点集合)--百度原始坐标坐标点
 	 */
	@JsonIgnore
	private LineString bsectionVector;

	@Transient
	private String bsectionVectorWkt;

	/**
	 * 路段矢量(空间坐标点集合)--城建坐标点
 	 */
	@JsonIgnore
	private LineString csectionVector;

	@Transient
	private String csectionVectorWkt;

	/**
	 * 交叉路
 	 */
	private String crosesRoad;

	/**
	 * 起始节点
 	 */
	private String startNode;

	/**
	 * 中间节点
 	 */
	private String middleNode;

	/**
	 * 终止节点
 	 */
	private String endNode;

	/**
	 * 限速
 	 */
	private Double speedLimit;

	/**
	 * 版本号
 	 */
	private Integer versions;

	/**
	 * 描述
 	 */
	private String descriptions;

	/**
	 * 创建人
 	 */
	private Integer createBy;

	/**
	 * 修改人
 	 */
	private Integer updateBy;

	/**
	 * 创建日期
 	 */
	@Column(updatable = false, name = "create_date", columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
	private Date createDate;

	/**
	 * 修改日期
 	 */
	@Column(insertable = false, name = "update_date", columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP")
	private Date updateDate;

	private Integer ewDirection;

	private Integer snDirection;

	public Integer getId() {
		return id;
	}

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

	public String getSectionCode() {
		return sectionCode;
	}

	public void setSectionCode(String sectionCode) {
		this.sectionCode = sectionCode;
	}

	public String getRoadCoding() {
		return roadCoding;
	}

	public void setRoadCoding(String roadCoding) {
		this.roadCoding = roadCoding;
	}

	public String getSectionName() {
		return sectionName;
	}

	public void setSectionName(String sectionName) {
		this.sectionName = sectionName;
	}

	public Double getSectionDistance() {
		return sectionDistance;
	}

	public void setSectionDistance(Double sectionDistance) {
		this.sectionDistance = sectionDistance;
	}

	public Double getSectionTime() {
		return sectionTime;
	}

	public void setSectionTime(Double sectionTime) {
		this.sectionTime = sectionTime;
	}

	public String getDbType() {
		return dbType;
	}

	public void setDbType(String dbType) {
		this.dbType = dbType;
	}

	public String getSectionType() {
		return sectionType;
	}

	public void setSectionType(String sectionType) {
		this.sectionType = sectionType;
	}

	public LineString getGsectionVector() {
		return gsectionVector;
	}

	public void setGsectionVector(LineString gsectionVector) {
		this.gsectionVector = gsectionVector;
	}

	public String getGsectionVectorWkt() {
		if (gsectionVectorWkt == null && gsectionVector != null) {
			this.gsectionVectorWkt = this.gsectionVector.toString();
		}

		return gsectionVectorWkt;
	}

	public void setGsectionVectorWkt(String gsectionVectorWkt) {
		this.gsectionVectorWkt = gsectionVectorWkt;
	}

	public LineString getBsectionVector() {
		return bsectionVector;
	}

	public void setBsectionVector(LineString bsectionVector) {
		this.bsectionVector = bsectionVector;
	}

	public String getBsectionVectorWkt() {
		if (bsectionVectorWkt == null && bsectionVector != null) {
			this.bsectionVectorWkt = this.bsectionVector.toString();
		}

		return bsectionVectorWkt;
	}

	public void setBsectionVectorWkt(String bsectionVectorWkt) {
		this.bsectionVectorWkt = bsectionVectorWkt;
	}

	public LineString getCsectionVector() {
		return csectionVector;
	}

	public void setCsectionVector(LineString csectionVector) {
		this.csectionVector = csectionVector;
	}

	public String getCsectionVectorWkt() {
		if (csectionVectorWkt == null && csectionVector != null) {
			this.csectionVectorWkt = this.csectionVector.toString();
		}

		return csectionVectorWkt;
	}

	public void setCsectionVectorWkt(String csectionVectorWkt) {
		this.csectionVectorWkt = csectionVectorWkt;
	}

	public String getCrosesRoad() {
		return crosesRoad;
	}

	public void setCrosesRoad(String crosesRoad) {
		this.crosesRoad = crosesRoad;
	}

	public String getStartNode() {
		return startNode;
	}

	public void setStartNode(String startNode) {
		this.startNode = startNode;
	}

	public String getMiddleNode() {
		return middleNode;
	}

	public void setMiddleNode(String middleNode) {
		this.middleNode = middleNode;
	}

	public String getEndNode() {
		return endNode;
	}

	public void setEndNode(String endNode) {
		this.endNode = endNode;
	}

	public Double getSpeedLimit() {
		return speedLimit;
	}

	public void setSpeedLimit(Double speedLimit) {
		this.speedLimit = speedLimit;
	}

	public Integer getVersions() {
		return versions;
	}

	public void setVersions(Integer versions) {
		this.versions = versions;
	}

	public String getDescriptions() {
		return descriptions;
	}

	public void setDescriptions(String descriptions) {
		this.descriptions = descriptions;
	}

	public Integer getCreateBy() {
		return createBy;
	}

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

	public Integer getUpdateBy() {
		return updateBy;
	}

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

	public Date getCreateDate() {
		return createDate;
	}

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

	public Date getUpdateDate() {
		return updateDate;
	}

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

	public Integer getEwDirection() {
		return ewDirection;
	}

	public void setEwDirection(Integer ewDirection) {
		this.ewDirection = ewDirection;
	}

	public Integer getSnDirection() {
		return snDirection;
	}

	public void setSnDirection(Integer snDirection) {
		this.snDirection = snDirection;
	}
}