/**
* Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved.
* EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
* http://www.ewcms.com
*/
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.ewcms.plugin.online.model;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.codehaus.jackson.annotate.JsonIgnore;
import com.ewcms.core.site.model.Organ;
/**
*
* @author wangwei
*/
@Entity
@Table(name = "plugin_online_advisory")
public class Advisor implements Serializable {
private static final long serialVersionUID = 6224654774927203618L;
@Id
private Integer id;
@Column(name = "username")
private String username;
@Column(name = "name")
private String name;
@Column(name = "title")
private String title;
@Column(name = "content", columnDefinition="text")
private String content;
@Column(name = "replay", columnDefinition="text")
private String replay;
@ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER, targetEntity = Organ.class)
@JoinColumn(name = "organ_id")
private Organ organ;
@ManyToOne(cascade = CascadeType.ALL, fetch = FetchType.EAGER, targetEntity = Matter.class)
@JoinColumn(name = "matter_id")
private Matter matter;
@Column(name = "ip")
private String ip;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "date")
private Date date;
@Column(name = "checked")
private boolean checked = false;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "replay_date")
private Date replayDate;
@Column(name = "state")
private int state;
public boolean isChecked() {
return checked;
}
public void setChecked(boolean checked) {
this.checked = checked;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
@JsonIgnore
public Matter getMatter() {
return matter;
}
public void setMatter(Matter matter) {
this.matter = matter;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@JsonIgnore
public Organ getOrgan() {
return organ;
}
public void setOrgan(Organ organ) {
this.organ = organ;
}
public String getReplay() {
return replay;
}
public void setReplay(String replay) {
this.replay = replay;
}
public Date getReplayDate() {
return replayDate;
}
public void setReplayDate(Date replayDate) {
this.replayDate = replayDate;
}
public int getState() {
return state;
}
public void setState(int state) {
this.state = state;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Advisor other = (Advisor) obj;
if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 19 * hash + (this.id != null ? this.id.hashCode() : 0);
return hash;
}
}