FormsEntityBasic.java
package sk.iway.iwcm.components.forms;
import java.util.Date;
import java.util.Map;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import org.eclipse.persistence.annotations.Convert;
import org.eclipse.persistence.annotations.Converter;
import org.eclipse.persistence.annotations.Converters;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;
import sk.iway.iwcm.users.UserDetails;
import sk.iway.iwcm.users.UserDetailsConverter;
@MappedSuperclass
@Converters(value = {
@Converter(name = "UserDetailsConverter", converterClass = UserDetailsConverter.class)
})
@Setter
@Getter
public class FormsEntityBasic {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "S_forms")
private Long id;
@Column(name = "form_name")
private String formName;
private String data;
private String files;
@Column(name = "create_date")
@Temporal(TemporalType.TIMESTAMP)
private Date createDate;
private String html;
@Column(name = "user_id")
@Convert("UserDetailsConverter")
@JsonProperty(access = JsonProperty.Access.READ_ONLY) //toto nepotrebujeme deserializovat pri post requeste
private UserDetails userDetails;
private String note;
@Column(name = "doc_id")
private int docId;
@Column(name = "last_export_date")
@Temporal(TemporalType.TIMESTAMP)
private Date lastExportDate;
@Column(name = "domain_id")
private int domainId;
@Column(name = "double_optin_confirmation_date")
@Temporal(TemporalType.TIMESTAMP)
private Date doubleOptinConfirmationDate;
@Column(name = "double_optin_hash")
private String doubleOptinHash;
@Transient
private Map<String, String> columnNamesAndValues;
@Transient
private int count;
}