package com.wisedu.mooc.app.log.bo;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import java.util.Date;

/**
 * LogStudy entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "log_study")
public class LogStudy implements java.io.Serializable {

    // Fields

    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String logId;
    private Long itemId;
    private Long userId;
    private String visitKey;
    private String visitSession;
    private Date visitDate;
    private Long visitTime;
    private Integer visitYear;
    private Integer visitMonth;
    private Integer visitDay;
    private String ipAddress;
    private String country;
    private String province;
    private String city;
    private String userAgent;
    private String osName;
    private String osVer;
    private String displaySize;
    private String displayColor;
    private String browserName;
    private String browserVer;
    private String cookieSupported;
    private String jsSupported;
    private String flashSupported;
    private String flashVer;
    private String lang;
    private String refererUrl;
    private Integer visitPosCount;
    private Integer visitFirstPos;
    private Integer visitLastPos;
    private Integer visitDuration;
    private String lastPosId;
    private Integer formalFlag;

    private Integer studyCount;

    // Constructors

    /** default constructor */
    public LogStudy() {
    }

    /** minimal constructor */
    public LogStudy(String logId) {
        this.logId = logId;
    }


    // Property accessors
    @Id
    @Column(name = "log_id", unique = true, nullable = false, length = 64)
    public String getLogId() {
        return this.logId;
    }

    public void setLogId(String logId) {
        this.logId = logId;
    }

    @Column(name = "item_id")
    public Long getItemId() {
        return this.itemId;
    }

    public void setItemId(Long itemId) {
        this.itemId = itemId;
    }

    @Column(name = "visit_key", length = 128)
    public String getVisitKey() {
        return this.visitKey;
    }

    public void setVisitKey(String visitKey) {
        this.visitKey = visitKey;
    }

    @Column(name = "visit_session", length = 128)
    public String getVisitSession() {
        return this.visitSession;
    }

    public void setVisitSession(String visitSession) {
        this.visitSession = visitSession;
    }

    @Column(name = "visit_date", length = 19)
    public Date getVisitDate() {
        return this.visitDate;
    }

    public void setVisitDate(Date visitDate) {
        this.visitDate = visitDate;
    }

    @Column(name = "visit_time")
    public Long getVisitTime() {
        return this.visitTime;
    }

    public void setVisitTime(Long visitTime) {
        this.visitTime = visitTime;
    }

    @Column(name = "visit_year")
    public Integer getVisitYear() {
        return this.visitYear;
    }

    public void setVisitYear(Integer visitYear) {
        this.visitYear = visitYear;
    }

    @Column(name = "visit_month")
    public Integer getVisitMonth() {
        return this.visitMonth;
    }

    public void setVisitMonth(Integer visitMonth) {
        this.visitMonth = visitMonth;
    }

    @Column(name = "visit_day")
    public Integer getVisitDay() {
        return this.visitDay;
    }

    public void setVisitDay(Integer visitDay) {
        this.visitDay = visitDay;
    }

    @Column(name = "ip_address", length = 32)
    public String getIpAddress() {
        return this.ipAddress;
    }

    public void setIpAddress(String ipAddress) {
        this.ipAddress = ipAddress;
    }

    @Column(name = "country", length = 128)
    public String getCountry() {
        return this.country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    @Column(name = "province", length = 128)
    public String getProvince() {
        return this.province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    @Column(name = "city", length = 128)
    public String getCity() {
        return this.city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    @Column(name = "user_agent", length = 16)
    public String getUserAgent() {
        return this.userAgent;
    }

    public void setUserAgent(String userAgent) {
        this.userAgent = userAgent;
    }

    @Column(name = "os_name", length = 16)
    public String getOsName() {
        return this.osName;
    }

    public void setOsName(String osName) {
        this.osName = osName;
    }

    @Column(name = "os_ver", length = 16)
    public String getOsVer() {
        return this.osVer;
    }

    public void setOsVer(String osVer) {
        this.osVer = osVer;
    }

    @Column(name = "display_size", length = 16)
    public String getDisplaySize() {
        return this.displaySize;
    }

    public void setDisplaySize(String displaySize) {
        this.displaySize = displaySize;
    }

    @Column(name = "display_color", length = 16)
    public String getDisplayColor() {
        return this.displayColor;
    }

    public void setDisplayColor(String displayColor) {
        this.displayColor = displayColor;
    }

    @Column(name = "browser_name", length = 16)
    public String getBrowserName() {
        return this.browserName;
    }

    public void setBrowserName(String browserName) {
        this.browserName = browserName;
    }

    @Column(name = "browser_ver", length = 16)
    public String getBrowserVer() {
        return this.browserVer;
    }

    public void setBrowserVer(String browserVer) {
        this.browserVer = browserVer;
    }

    @Column(name = "cookie_supported", length = 16)
    public String getCookieSupported() {
        return this.cookieSupported;
    }

    public void setCookieSupported(String cookieSupported) {
        this.cookieSupported = cookieSupported;
    }

    @Column(name = "js_supported", length = 16)
    public String getJsSupported() {
        return this.jsSupported;
    }

    public void setJsSupported(String jsSupported) {
        this.jsSupported = jsSupported;
    }

    @Column(name = "flash_supported", length = 16)
    public String getFlashSupported() {
        return this.flashSupported;
    }

    public void setFlashSupported(String flashSupported) {
        this.flashSupported = flashSupported;
    }

    @Column(name = "flash_ver", length = 16)
    public String getFlashVer() {
        return this.flashVer;
    }

    public void setFlashVer(String flashVer) {
        this.flashVer = flashVer;
    }

    @Column(name = "lang", length = 32)
    public String getLang() {
        return this.lang;
    }

    public void setLang(String lang) {
        this.lang = lang;
    }

    @Column(name = "referer_url", length = 2048)
    public String getRefererUrl() {
        return this.refererUrl;
    }

    public void setRefererUrl(String refererUrl) {
        this.refererUrl = refererUrl;
    }

    @Column(name = "visit_pos_count")
    public Integer getVisitPosCount() {
        return this.visitPosCount;
    }

    public void setVisitPosCount(Integer visitPosCount) {
        this.visitPosCount = visitPosCount;
    }

    @Column(name = "visit_first_pos")
    public Integer getVisitFirstPos() {
        return this.visitFirstPos;
    }

    public void setVisitFirstPos(Integer visitFirstPos) {
        this.visitFirstPos = visitFirstPos;
    }

    @Column(name = "visit_last_pos")
    public Integer getVisitLastPos() {
        return this.visitLastPos;
    }

    public void setVisitLastPos(Integer visitLastPos) {
        this.visitLastPos = visitLastPos;
    }

    @Column(name = "visit_duration")
    public Integer getVisitDuration() {
        return this.visitDuration;
    }

    public void setVisitDuration(Integer visitDuration) {
        this.visitDuration = visitDuration;
    }

    @Column(name = "last_pos_id", length = 64)
    public String getLastPosId() {
        return this.lastPosId;
    }

    public void setLastPosId(String lastPosId) {
        this.lastPosId = lastPosId;
    }
    
    @Transient
	public Integer getStudyCount() {
		return studyCount;
	}

	public void setStudyCount(Integer studyCount) {
		this.studyCount = studyCount;
	}

	@Column(name = "formal_flag")
	public Integer getFormalFlag() {
		return formalFlag;
	}

	public void setFormalFlag(Integer formalFlag) {
		this.formalFlag = formalFlag;
	}

	@Column(name = "USER_ID")
	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

	
}