Commit 1c48fc3f by Tuomas Riihimäki

Changed entities to use composite key.

1 parent ee7c91cf
Showing with 285 additions and 163 deletions
......@@ -7,7 +7,6 @@ package fi.insomnia.bortal.model;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
......
......@@ -12,10 +12,8 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -57,11 +55,17 @@ public class AccountEvent implements EventChildInterface{
@Temporal(TemporalType.TIMESTAMP)
private Calendar delivered;
@JoinColumn(name = "food_waves_id", referencedColumnName = "food_waves_id")
@JoinColumns({
@JoinColumn(name = "food_waves_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="food_waves_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private FoodWave foodWave;
@JoinColumn(name = "products_id", referencedColumnName = "products_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "products_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="products_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Product product;
......@@ -76,6 +80,10 @@ public class AccountEvent implements EventChildInterface{
@OneToMany(mappedBy = "accountEvent")
private List<DiscountInstance> discountInstances;
@JoinColumns({
@JoinColumn(name = "bill_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="bill_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@OneToOne
private Bill bill;
......
......@@ -9,12 +9,9 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -66,10 +63,13 @@ public class Bill implements EventChildInterface{
@OneToMany(mappedBy = "bill")
private List<BillLine> billLines;
@JoinColumn(name = "accout_events_id", referencedColumnName = "account_events_id")
@JoinColumns({
@JoinColumn(name = "account_event_id", referencedColumnName = "entity_id", nullable = false, updatable=false,insertable=false),
@JoinColumn(name = "account_event_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable=false,insertable=false) })
@OneToOne
private AccountEvent accountEvent;
@JoinColumn(name = "users_id", referencedColumnName = "users_id", nullable = false)
@ManyToOne(optional = false)
private User user;
......
......@@ -10,10 +10,8 @@ import java.math.BigDecimal;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -49,7 +47,11 @@ public class BillLine implements EventChildInterface{
@Column(name = "vat", nullable = false, precision = 3, scale = 2)
private BigDecimal vat = DEFAULT_VAT;
@JoinColumn(name = "bills_id", referencedColumnName = "bills_id")
@JoinColumns({
@JoinColumn(name = "bills_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="bills_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private Bill bill;
......
......@@ -10,9 +10,6 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......
......@@ -12,9 +12,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......
......@@ -12,10 +12,8 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -34,7 +32,6 @@ import javax.persistence.Version;
@Table(name = "entries")
@NamedQueries( {
@NamedQuery(name = "CompoEntry.findAll", query = "SELECT c FROM CompoEntry c"),
@NamedQuery(name = "CompoEntry.findByCreated", query = "SELECT c FROM CompoEntry c WHERE c.created = :created"),
@NamedQuery(name = "CompoEntry.findByName", query = "SELECT c FROM CompoEntry c WHERE c.name = :name"),
@NamedQuery(name = "CompoEntry.findByNotes", query = "SELECT c FROM CompoEntry c WHERE c.notes = :notes"),
......@@ -66,6 +63,10 @@ public class CompoEntry implements EventChildInterface{
@Column(name = "final_position")
private Integer finalPosition;
@JoinColumns({
@JoinColumn(name = "currentFile_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="currentFile_event_id",referencedColumnName = "events_pk_id",nullable=false, updatable=false,insertable=false)
})
@OneToOne
private CompoEntryFile currentFile;
......@@ -78,11 +79,14 @@ public class CompoEntry implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "entry")
private List<CompoEntryParticipant> participants;
@JoinColumn(name = "compos_id", referencedColumnName = "compos_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "compos_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="compos_event_id",referencedColumnName = "events_pk_id",nullable=false, updatable=false,insertable=false)
})
@ManyToOne(optional = false)
private Compo compo;
@JoinColumn(name = "creator", referencedColumnName = "users_id")
@JoinColumn(name = "creator_id", referencedColumnName = "users_id")
@ManyToOne
private User creator;
......
......@@ -10,10 +10,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -30,7 +28,6 @@ import javax.persistence.Version;
@Table(name = "entry_files")
@NamedQueries( {
@NamedQuery(name = "CompoEntryFile.findAll", query = "SELECT c FROM CompoEntryFile c"),
@NamedQuery(name = "CompoEntryFile.findByMimeType", query = "SELECT c FROM CompoEntryFile c WHERE c.mimeType = :mimeType"),
@NamedQuery(name = "CompoEntryFile.findByFileName", query = "SELECT c FROM CompoEntryFile c WHERE c.fileName = :fileName"),
@NamedQuery(name = "CompoEntryFile.findByDescription", query = "SELECT c FROM CompoEntryFile c WHERE c.description = :description"),
......@@ -62,7 +59,10 @@ public class CompoEntryFile implements EventChildInterface{
@Temporal(TemporalType.TIMESTAMP)
private Calendar uploaded;
@JoinColumn(name = "entries_id", referencedColumnName = "entries_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "entries_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="entries_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private CompoEntry entry;
......
......@@ -6,13 +6,12 @@
package fi.insomnia.bortal.model;
import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -47,11 +46,19 @@ public class CompoEntryParticipant implements EventChildInterface{
@Temporal(TemporalType.TIMESTAMP)
private Calendar confirmed;
@JoinColumn(name = "entries_id", referencedColumnName = "entries_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "entries_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="entries_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private CompoEntry entry;
@JoinColumn(name = "users_id", referencedColumnName = "users_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "users_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="users_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private User users;
......
......@@ -12,6 +12,7 @@ import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -69,11 +70,18 @@ public class Discount implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "discount")
private List<DiscountInstance> discountInstances;
@JoinColumn(name = "roles_id", referencedColumnName = "roles_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "roles_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="roles_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Role role;
@JoinColumn(name = "products_id", referencedColumnName = "products_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "products_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="products_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Product product;
......
......@@ -9,10 +9,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -37,11 +35,17 @@ public class DiscountInstance implements EventChildInterface{
@Temporal(TemporalType.TIMESTAMP)
private Calendar createTime = Calendar.getInstance();
@JoinColumn(name = "account_events_id", referencedColumnName = "account_events_id")
@JoinColumns({
@JoinColumn(name = "account_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="account_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private AccountEvent accountEvent;
@JoinColumn(name = "discounts_id", referencedColumnName = "discounts_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "discounts_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="discounts_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Discount discount;
......
......@@ -14,6 +14,7 @@ import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -58,15 +59,23 @@ public class Event implements ModelInterface<Integer> {
@Column(name = "referer")
private String referer;
@JoinColumn(name = "event_settings_id", referencedColumnName = "event_settings_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "event_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="event_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private EventSettings settings;
@JoinColumn(name = "event_status_id", referencedColumnName = "event_status_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "event_status_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="event_status_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private EventStatus status;
@JoinColumn(name = "default_role", referencedColumnName = "roles_id")
@JoinColumns({
@JoinColumn(name = "default_role_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="default_role_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@OneToOne
private Role defaultRole;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model;
import java.io.Serializable;
/**
*
* @author tuukka
*/
public interface EventChildInterface extends ModelInterface<EventPk>, Serializable {
public EventPk getId();
public void setId(EventPk id);
public int getJpaVersionField();
public void setJpaVersionField(int jpaVersionField);
}
......@@ -10,9 +10,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......
package fi.insomnia.bortal.model;
import java.io.Serializable;
import javax.persistence.*;
/**
* Entity implementation class for Entity: EntityPK
*
*/
@Embeddable
public class EventPk implements Serializable {
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "entity_id", nullable = false)
private Integer id;
@Column(name = "events_pk_id", nullable = false, updatable = false)
private Integer eventId;
private static final long serialVersionUID = 1L;
public EventPk() {
super();
}
public void setId(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setEventId(Integer eventId) {
this.eventId = eventId;
}
public Integer getEventId() {
return eventId;
}
public int hashCode() {
return id.hashCode()+eventId.hashCode();
}
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj == this) return true;
if (!(obj instanceof EventPk)) return false;
EventPk pk = (EventPk) obj;
return pk.id == this.id && pk.eventId == this.eventId;
}
}
......@@ -10,9 +10,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -28,9 +25,8 @@ import javax.persistence.Version;
@Table(name = "event_settings")
@NamedQueries( {
@NamedQuery(name = "EventSettings.findAll", query = "SELECT e FROM EventSettings e"),
@NamedQuery(name = "EventSettings.findByBaseName", query = "SELECT e FROM EventSettings e WHERE e.baseName = :baseName"),
@NamedQuery(name = "EventSettings.findByStyleSheet", query = "SELECT e FROM EventSettings e WHERE e.styleSheet = :styleSheet") })
@NamedQuery(name = "EventSettings.findByBundleCountry", query = "SELECT e FROM EventSettings e WHERE e.bundleCountry = :bundleCountry")
})
public class EventSettings implements EventChildInterface{
private static final long serialVersionUID = 1L;
......
......@@ -10,9 +10,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
......
......@@ -10,9 +10,6 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......
......@@ -9,9 +9,6 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.ManyToMany;
import javax.persistence.NamedQueries;
......
......@@ -9,10 +9,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -51,15 +49,27 @@ public class GroupMembership implements EventChildInterface{
@Column(name = "invite_name")
private String inviteName;
@JoinColumn(name = "groups_id", referencedColumnName = "groups_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "groups_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="groups_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private PlaceGroup placeGroup;
@JoinColumn(name = "place_reservation", referencedColumnName = "places_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "place_reservation_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="place_reservation_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@OneToOne(optional = false)
private Place placeReservation;
@JoinColumn(name = "users_id", referencedColumnName = "users_id")
@JoinColumns({
@JoinColumn(name = "users_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="users_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private User user;
......
......@@ -9,9 +9,6 @@ import java.util.List;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
......
......@@ -11,10 +11,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -47,7 +45,10 @@ public class LogEntry implements EventChildInterface{
@Column(name = "event_description")
private String description;
@JoinColumn(name = "event_log_types_id", referencedColumnName = "event_log_types_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "event_log_type_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="event_log_event_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private LogEntryType type;
......
......@@ -10,9 +10,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......
......@@ -9,10 +9,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -65,7 +63,12 @@ public class News implements EventChildInterface{
@Column(name = "priority", nullable = false)
private int priority;
@JoinColumn(name = "news_groups_id", referencedColumnName = "news_groups_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "news_groups_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="news_groups_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private NewsGroup group;
......
......@@ -10,11 +10,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.Lob;
import javax.persistence.ManyToMany;
import javax.persistence.NamedQueries;
......@@ -52,7 +47,14 @@ public class NewsGroup implements EventChildInterface{
private int priority;
@ManyToMany
@JoinTable(name = "roles_news_groups", joinColumns = @JoinColumn(name = "news_groups_id", referencedColumnName = "news_groups_id"), inverseJoinColumns = @JoinColumn(name = "roles_id", referencedColumnName = "roles_id"))
/* @JoinTable(name = "roles_news_groups", joinColumns = {
@JoinColumn(name = "entity_id", referencedColumnName = "news_groups_id"),
@JoinColumn(name = "events_pk_id", referencedColumnName = "news_groups_event_id")
}, inverseJoinColumns ={
@JoinColumn(name = "entity_id", referencedColumnName = "roles_id"),
@JoinColumn(name = "events_pk_id", referencedColumnName = "roles_event_id")}
)
}*/
private List<Role> roles;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "group")
......
......@@ -7,10 +7,8 @@ package fi.insomnia.bortal.model;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -27,7 +25,6 @@ import javax.persistence.Version;
@NamedQueries( {
@NamedQuery(name = "Place.findAll", query = "SELECT p FROM Place p"),
@NamedQuery(name = "Place.findByDescription", query = "SELECT p FROM Place p WHERE p.description = :description"),
@NamedQuery(name = "Place.findByName", query = "SELECT p FROM Place p WHERE p.name = :name"),
@NamedQuery(name = "Place.findByMapX", query = "SELECT p FROM Place p WHERE p.mapX = :mapX"),
@NamedQuery(name = "Place.findByMapY", query = "SELECT p FROM Place p WHERE p.mapY = :mapY"),
......@@ -59,18 +56,29 @@ public class Place implements EventChildInterface{
/**
* Which group has bought the place
*/
@JoinColumn(name = "groups_id", referencedColumnName = "groups_id")
@JoinColumns({
@JoinColumn(name = "groups_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="groups_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private PlaceGroup placeGroup;
@JoinColumn(name = "maps_id", referencedColumnName = "maps_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "maps_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="maps_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private EventMap map;
/**
* Which ticket type is this place sold as
*/
@JoinColumn(name = "products_id", referencedColumnName = "products_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "products_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="products_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Product product;
......
......@@ -11,9 +11,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......
......@@ -12,10 +12,8 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -58,15 +56,21 @@ public class PrintedCard implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "printedCard")
private List<ReaderEvent> readerEvents;
@JoinColumn(name = "current_location", referencedColumnName = "locations_id")
@JoinColumns({
@JoinColumn(name = "current_location_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="current_location_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne
private Location currentLocation;
@JoinColumn(name = "users_id", referencedColumnName = "users_id", nullable = false)
@ManyToOne(optional = false)
private User user;
@JoinColumn(name = "card_templates_id", referencedColumnName = "card_templates_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "card_template_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="card_template_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private CardTemplate template;
......
......@@ -11,11 +11,6 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -28,14 +23,14 @@ import javax.persistence.Version;
*/
@Entity
@Table(name = "products")
@NamedQueries( {
@NamedQueries({
@NamedQuery(name = "Product.findAll", query = "SELECT p FROM Product p"),
@NamedQuery(name = "Product.findByProductName", query = "SELECT p FROM Product p WHERE p.name = :name"),
@NamedQuery(name = "Product.findByPrice", query = "SELECT p FROM Product p WHERE p.price = :price"),
@NamedQuery(name = "Product.findBySort", query = "SELECT p FROM Product p WHERE p.sort = :sort"),
@NamedQuery(name = "Product.findByBarcode", query = "SELECT p FROM Product p WHERE p.barcode = :barcode") })
public class Product implements EventChildInterface{
public class Product implements EventChildInterface {
private static final long serialVersionUID = 1L;
......@@ -60,7 +55,13 @@ public class Product implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "product")
private List<AccountEvent> accountEvents;
@JoinTable(name = "food_wave_templates_products", joinColumns = { @JoinColumn(name = "products_id", referencedColumnName = "products_id") }, inverseJoinColumns = { @JoinColumn(name = "food_wave_templates_id", referencedColumnName = "food_wave_templates_id") })
/* @JoinTable(name = "food_wave_templates_products", joinColumns =
{ @JoinColumn(name = "entity_id", referencedColumnName = "products_id"),
@JoinColumn(name = "events_pk_id", referencedColumnName = "product_event_id") },
inverseJoinColumns =
{ @JoinColumn(name = "entity_id", referencedColumnName = "food_wave_templates_id"),
@JoinColumn(name = "events_pk_id", referencedColumnName = "food_wave_templates_event_id") })
*/
@ManyToMany
private List<FoodWaveTemplate> foodWaveTemplate;
......
......@@ -10,10 +10,8 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
......@@ -48,8 +46,9 @@ public class Reader implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "reader")
private List<ReaderEvent> events;
@JoinColumn(name = "locations_id", referencedColumnName = "locations_id")
@JoinColumns({
@JoinColumn(name = "location_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "location_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false) })
@ManyToOne
private Location location;
......@@ -59,7 +58,9 @@ public class Reader implements EventChildInterface{
@ManyToOne
@JoinColumn(name = "maps_id", referencedColumnName = "maps_id")
@JoinColumns({
@JoinColumn(name = "maps_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "maps_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false) })
private EventMap eventMap;
......
......@@ -9,10 +9,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -45,11 +43,17 @@ public class ReaderEvent implements EventChildInterface{
@Column(name = "value")
private String value;
@JoinColumn(name = "printed_cards_id", referencedColumnName = "printed_cards_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "printed_cards_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="printed_cards_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private PrintedCard printedCard;
@JoinColumn(name = "readers_id", referencedColumnName = "readers_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "readers_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name="readers_event_id",referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false)
})
@ManyToOne(optional = false)
private Reader reader;
......
......@@ -10,10 +10,8 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
......@@ -28,14 +26,13 @@ import javax.persistence.Version;
*/
@Entity
@Table(name = "roles")
@NamedQueries( {
@NamedQueries({
@NamedQuery(name = "Role.findAll", query = "SELECT r FROM Role r"),
@NamedQuery(name = "Role.findByRoleName", query = "SELECT r FROM Role r WHERE r.name = :name") })
public class Role implements EventChildInterface{
public class Role implements EventChildInterface {
private static final long serialVersionUID = 1L;
@EmbeddedId
private EventPk id;
......@@ -43,11 +40,13 @@ public class Role implements EventChildInterface{
private String name;
@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(name = "role_memberships", joinColumns = @JoinColumn(name = "roles_id", referencedColumnName = "roles_id"), inverseJoinColumns = @JoinColumn(name = "users_id", referencedColumnName = "users_id"))
@JoinTable(name = "role_memberships", joinColumns = {@JoinColumn(name = "roles_id", referencedColumnName = "entity_id"),@JoinColumn(name = "roles_event_id", referencedColumnName = "events_pk_id")}, inverseJoinColumns = @JoinColumn(name = "users_id", referencedColumnName = "users_id"))
private List<User> users;
@ManyToMany
@JoinTable(name = "role_parents", joinColumns = @JoinColumn(name = "parent", referencedColumnName = "roles_id"), inverseJoinColumns = @JoinColumn(name = "roles_id", referencedColumnName = "roles_id"))
@JoinColumns({
@JoinColumn(name = "role_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "role_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false) })
private List<Role> children;
@ManyToMany(mappedBy = "children")
......@@ -56,7 +55,9 @@ public class Role implements EventChildInterface{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "role")
private List<RoleRight> roleRights;
@JoinColumn(name = "card_templates_id", referencedColumnName = "card_templates_id")
@JoinColumns({
@JoinColumn(name = "card_template_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "card_template_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false) })
@ManyToOne
private CardTemplate cardTemplate;
......@@ -74,7 +75,6 @@ public class Role implements EventChildInterface{
@Column(nullable = false)
private int jpaVersionField;
public Role() {
}
......@@ -211,4 +211,12 @@ public class Role implements EventChildInterface{
public List<Role> getChildren() {
return children;
}
public void setNewsGroups(List<NewsGroup> newsGroups) {
this.newsGroups = newsGroups;
}
public List<NewsGroup> getNewsGroups() {
return newsGroups;
}
}
......@@ -7,10 +7,8 @@ package fi.insomnia.bortal.model;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -55,7 +53,9 @@ public class RoleRight implements EventChildInterface{
@ManyToOne
private AccessRight accessRight;
@JoinColumn(name = "roles_id", referencedColumnName = "roles_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "role_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "role_event_id", referencedColumnName = "events_pk_id", nullable = false) })
@ManyToOne(optional = false)
private Role role;
......
......@@ -13,7 +13,6 @@ import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.ManyToMany;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -63,15 +62,12 @@ public class User implements ModelInterface<Integer>{
private boolean active;
@Column(name = "password")
@Lob
private String password;
@Column(name = "lastname")
@Lob
private String lastname;
@Column(name = "firstnames")
@Lob
private String firstnames;
@Column(name = "birthday")
......@@ -79,43 +75,33 @@ public class User implements ModelInterface<Integer>{
private Calendar birthday;
@Column(name = "nick")
@Lob
private String nick;
@Column(name = "email")
@Lob
private String email;
@Column(name = "address")
@Lob
private String address;
@Column(name = "zip")
@Lob
private String zip;
@Column(name = "postal_code")
@Lob
private String postalCode;
@Column(name = "town")
@Lob
private String town;
@Column(name = "phone")
@Lob
private String phone;
@Column(name = "female")
@Lob
private Boolean female;
@Column(name = "login")
@Lob
private String login;
@Column(name = "confirm_hash")
@Lob
private String confirmHash;
@Column(name = "confirm_time")
......
......@@ -7,9 +7,6 @@ package fi.insomnia.bortal.model;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......
......@@ -9,10 +9,8 @@ import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
......@@ -43,9 +41,13 @@ public class Vote implements EventChildInterface{
@Column(name = "vote_time", nullable = false)
@Temporal(TemporalType.TIMESTAMP)
private Calendar time;
@JoinColumn(name = "entries_id", referencedColumnName = "entries_id", nullable = false)
@JoinColumns({
@JoinColumn(name = "entries_id", referencedColumnName = "entity_id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "entries_event_id", referencedColumnName = "events_pk_id", nullable = false, updatable = false, insertable = false) })
@ManyToOne(optional = false)
private CompoEntry compoEntry;
@JoinColumn(name = "users_id", referencedColumnName = "users_id", nullable = false)
@ManyToOne(optional = false)
private User voter;
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!