package kr.gmtc.tss.data.vo;

import java.sql.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * @author choi
 *
 */
public class AsdeTrackVO implements Comparable<AsdeTrackVO> {

	private boolean inserted=false;
	//private String marineAreaId="";
	
	//public long timeStamp = LocalDateTime.now().toInstant(ZoneOffset.ofHours(9)).toEpochMilli();
	
	public AsdeTrackVO() {
	}

	//protected LocalDateTime dateTime;
	@JsonProperty("trgt_id")
	private String trgtId;  // 타겟 ID  
	@JsonProperty("mode_s_cd")
	private String modeScd; // Mode-S 코드  
	@JsonProperty("ssr_cd")
	private String ssrCd;   //
	private String clsgn;   //
	@JsonProperty("tail_no")
	private String tailNo;  //	
	@JsonProperty("track_no")
	private int trackNo; //  추가 2023.04.07
	@JsonProperty("recptn_dt") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")
	private Date recptnDt;  //
	@JsonProperty("cat_ty")
	private double catTy;   //
	private double lat;     //
	private double lon;     //
	private double spd;     //
	private double cos;     //
	@JsonProperty("trgt_ty")
	private String trgtTy;  //	

	
//	private String acRegNo;
	private String alt;
//	private String virtlTrgtAt;
//	private String trackCrrctAt;
//	private String trackCnfdnc;
	private String registerId;
	private String registDt;
	private String updusrId;
	private String updtDt;
	private boolean lstFlag;
	
	public boolean isInserted() {
		return inserted;
	}

	public void setInserted(boolean inserted) {
		this.inserted = inserted;
	}

//	public String getMarineAreaId() {
//		return marineAreaId;
//	}
//
//	public void setMarineAreaId(String marineAreaId) {
//		this.marineAreaId = marineAreaId;
//	}
//
//	public long getTimeStamp() {
//		return timeStamp;
//	}
//
//	public void setTimeStamp(long timeStamp) {
//		this.timeStamp = timeStamp;
//	}

    public String getTrgtId() {
		return trgtId;
	}

	public void setTrgtId(String trgtId) {
		this.trgtId = trgtId;
	}

//	public String getAcRegNo() {
//		return acRegNo;
//	}
//
//	public void setAcRegNo(String acRegNo) {
//		this.acRegNo = acRegNo;
//	}

	public String getClsgn() {
		return clsgn;
	}

	public void setClsgn(String clsgn) {
		this.clsgn = clsgn;
	}

	public String getSsrCd() {
		return ssrCd;
	}

	public void setSsrCd(String ssrCd) {
		this.ssrCd = ssrCd;
	}

	public String getModeScd() {
		return modeScd;
	}

	public void setModeScd(String modeScd) {
		this.modeScd = modeScd;
	}

	public Date getRecptnDt() {
		return recptnDt;
	}

	public void setRecptnDt(Date recptnDt) {
		this.recptnDt = recptnDt;
	}

	public double getCatTy() {
		return catTy;
	}

	public void setCatTy(double catTy) {
		this.catTy = catTy;
	}

	public double getLat() {
		return lat;
	}

	public void setLat(double lat) {
		this.lat = lat;
	}

	public double getLon() {
		return lon;
	}

	public void setLon(double lon) {
		this.lon = lon;
	}

	public double getSpd() {
		return spd;
	}

	public void setSpd(double spd) {
		this.spd = spd;
	}

	public double getCos() {
		return cos;
	}

	public void setCos(double cos) {
		this.cos = cos;
	}

//	public String getVirtlTrgtAt() {
//		return virtlTrgtAt;
//	}
//
//	public void setVirtlTrgtAt(String virtlTrgtAt) {
//		this.virtlTrgtAt = virtlTrgtAt;
//	}
//
//	public String getTrackCrrctAt() {
//		return trackCrrctAt;
//	}
//
//	public void setTrackCrrctAt(String trackCrrctAt) {
//		this.trackCrrctAt = trackCrrctAt;
//	}
//
//	public String getTrackCnfdnc() {
//		return trackCnfdnc;
//	}
//
//	public void setTrackCnfdnc(String trackCnfdnc) {
//		this.trackCnfdnc = trackCnfdnc;
//	}

	public String getAlt() {
		return alt;
	}

	public void setAlt(String alt) {
		this.alt = alt;
	}

	public String getRegisterId() {
		return registerId;
	}

	public void setRegisterId(String registerId) {
		this.registerId = registerId;
	}

	public String getRegistDt() {
		return registDt;
	}

	public void setRegistDt(String registDt) {
		this.registDt = registDt;
	}

	public String getUpdusrId() {
		return updusrId;
	}

	public void setUpdusrId(String updusrId) {
		this.updusrId = updusrId;
	}

	public String getUpdtDt() {
		return updtDt;
	}

	public void setUpdtDt(String updtDt) {
		this.updtDt = updtDt;
	}

//	public LocalDateTime getDateTime() {
//		return dateTime;
//	}
//
//	public void setDateTime(LocalDateTime dateTime) {
//		this.dateTime = dateTime;
//	}
	
	public boolean isLstFlag() {
		return lstFlag;
	}

	public void setLstFlag(boolean lstFlag) {
		this.lstFlag = lstFlag;
	}
	
	public String getTailNo() {
		return tailNo;
	}

	public void setTailNo(String tailNo) {
		this.tailNo = tailNo;
	}
	
	public int getTrackNo() {
		return trackNo;
	}

	public void setTrackNo(int trackNo) {
		this.trackNo = trackNo;
	}

	public String getTrgtTy() {
		return trgtTy;
	}

	public void setTrgtTy(String trgtTy) {
		this.trgtTy = trgtTy;
	}

	@Override
    public boolean equals(Object obj) {
        //p1.equals(p2)
        if(obj instanceof AsdeTrackVO) {
        	AsdeTrackVO p = (AsdeTrackVO)obj;
            return this.hashCode()==p.hashCode(); 
            
        }
        return false;
    }

	@Override
	public int compareTo(AsdeTrackVO o) {
		return 0;
	}
}
