Commit 074aa366 by Tuomas Riihimäki

Renamed EventSettings entity and references to EventOrganiser

Added PdfPrinter which prints a pdf-bill from given Bill Entity
Added PDFJet.jar library to LanBoralBeans project
1 parent edf469a6
...@@ -4,10 +4,10 @@ import javax.ejb.EJB; ...@@ -4,10 +4,10 @@ import javax.ejb.EJB;
import javax.ejb.Stateless; import javax.ejb.Stateless;
import fi.insomnia.bortal.facade.EventFacade; import fi.insomnia.bortal.facade.EventFacade;
import fi.insomnia.bortal.facade.EventSettingsFacade; import fi.insomnia.bortal.facade.EventOrganiserFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.Event; import fi.insomnia.bortal.model.Event;
import fi.insomnia.bortal.model.EventSettings; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
/** /**
...@@ -23,7 +23,7 @@ public class EventBean implements EventBeanLocal { ...@@ -23,7 +23,7 @@ public class EventBean implements EventBeanLocal {
private EventFacade eventFacade; private EventFacade eventFacade;
@EJB @EJB
private EventSettingsFacade eventSettingsFacade; private EventOrganiserFacade eventOrganiserFacade;
@EJB @EJB
private UserFacade userFacade; private UserFacade userFacade;
...@@ -45,21 +45,21 @@ public class EventBean implements EventBeanLocal { ...@@ -45,21 +45,21 @@ public class EventBean implements EventBeanLocal {
ret = new Event(); ret = new Event();
ret.setReferer(""); ret.setReferer("");
ret.setName(DEFAULT_EVENT_NAME); ret.setName(DEFAULT_EVENT_NAME);
ret.setSettings(findOrCreateDefaultEventSettings()); ret.setOrganiser(findOrCreateDefaultEventOrganisation());
eventFacade.create(ret); eventFacade.create(ret);
} }
return ret; return ret;
} }
public EventSettings findOrCreateDefaultEventSettings() { public EventOrganiser findOrCreateDefaultEventOrganisation() {
EventSettings settings = eventSettingsFacade.findByOrganisation(DEFAULT_ORGANISATION_NAME); EventOrganiser settings = eventOrganiserFacade.findByOrganisation(DEFAULT_ORGANISATION_NAME);
if (settings == null) { if (settings == null) {
settings = new EventSettings(); settings = new EventOrganiser();
settings.setOrganisation(DEFAULT_ORGANISATION_NAME); settings.setOrganisation(DEFAULT_ORGANISATION_NAME);
User defaultUser = userFacade.getOrCreateDefaultUser(); User defaultUser = userFacade.getOrCreateDefaultUser();
settings.setAdmin(defaultUser); settings.setAdmin(defaultUser);
eventSettingsFacade.create(settings); eventOrganiserFacade.create(settings);
} }
return settings; return settings;
......
...@@ -12,13 +12,13 @@ import javax.ejb.Stateless; ...@@ -12,13 +12,13 @@ import javax.ejb.Stateless;
import fi.insomnia.bortal.facade.EventFacade; import fi.insomnia.bortal.facade.EventFacade;
import fi.insomnia.bortal.facade.EventMapFacade; import fi.insomnia.bortal.facade.EventMapFacade;
import fi.insomnia.bortal.facade.EventSettingsFacade; import fi.insomnia.bortal.facade.EventOrganiserFacade;
import fi.insomnia.bortal.facade.EventStatusFacade; import fi.insomnia.bortal.facade.EventStatusFacade;
import fi.insomnia.bortal.facade.PlaceFacade; import fi.insomnia.bortal.facade.PlaceFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.Event; import fi.insomnia.bortal.model.Event;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.EventSettings; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.EventStatus; import fi.insomnia.bortal.model.EventStatus;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -35,7 +35,7 @@ public class TestDataBean implements TestDataBeanLocal { ...@@ -35,7 +35,7 @@ public class TestDataBean implements TestDataBeanLocal {
@EJB @EJB
private EventStatusFacade eventStatusFacade; private EventStatusFacade eventStatusFacade;
@EJB @EJB
private EventSettingsFacade eventSettingsFacade; private EventOrganiserFacade eventOrganiserFacade;
@EJB @EJB
private EventFacade eventFacade; private EventFacade eventFacade;
@EJB @EJB
...@@ -101,14 +101,14 @@ public class TestDataBean implements TestDataBeanLocal { ...@@ -101,14 +101,14 @@ public class TestDataBean implements TestDataBeanLocal {
eventStatusFacade.create(status); eventStatusFacade.create(status);
EventSettings settings = new EventSettings(); EventOrganiser settings = new EventOrganiser();
settings.setOrganisation("MUN ORGANISAATIO; EI SUN!"); settings.setOrganisation("MUN ORGANISAATIO; EI SUN!");
settings.setAdmin(generateUser()); settings.setAdmin(generateUser());
eventSettingsFacade.create(settings); eventOrganiserFacade.create(settings);
Event event = new Event(); Event event = new Event();
event.setName("testEvent"); event.setName("testEvent");
event.setSettings(settings); event.setOrganiser(settings);
event.setStatus(status); event.setStatus(status);
eventFacade.create(event); eventFacade.create(event);
......
package fi.insomnia.bortal.beanutil.pdfprinter;
public enum LineStyle {
THIN, THICK, NORMAL
}
...@@ -6,25 +6,25 @@ import javax.persistence.EntityManager; ...@@ -6,25 +6,25 @@ import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery; import javax.persistence.TypedQuery;
import fi.insomnia.bortal.model.EventSettings; import fi.insomnia.bortal.model.EventOrganiser;
@Stateless @Stateless
@LocalBean @LocalBean
public class EventSettingsFacade extends GenericFacade<Integer, EventSettings> { public class EventOrganiserFacade extends GenericFacade<Integer, EventOrganiser> {
@PersistenceContext @PersistenceContext
private EntityManager em; private EntityManager em;
public EventSettingsFacade() { public EventOrganiserFacade() {
super(EventSettings.class); super(EventOrganiser.class);
} }
protected EntityManager getEm() { protected EntityManager getEm() {
return em; return em;
} }
public EventSettings findByOrganisation(String organisation) { public EventOrganiser findByOrganisation(String organisation) {
TypedQuery<EventSettings> q = em.createNamedQuery("EventSettings.findByOrganisation", EventSettings.class); TypedQuery<EventOrganiser> q = em.createNamedQuery("EventOrganiser.findByOrganisation", EventOrganiser.class);
q.setParameter("organisation", organisation); q.setParameter("organisation", organisation);
return getSingleNullableResult(q); return getSingleNullableResult(q);
} }
......
No preview for this file type
...@@ -30,7 +30,7 @@ import javax.persistence.Version; ...@@ -30,7 +30,7 @@ import javax.persistence.Version;
*/ */
@Entity @Entity
@Table(name = "account_events") @Table(name = "account_events")
@NamedQueries( { @NamedQueries({
@NamedQuery(name = "AccountEvent.findAll", query = "SELECT a FROM AccountEvent a"), @NamedQuery(name = "AccountEvent.findAll", query = "SELECT a FROM AccountEvent a"),
@NamedQuery(name = "AccountEvent.findByUnitPrice", query = "SELECT a FROM AccountEvent a WHERE a.unitPrice = :unitPrice"), @NamedQuery(name = "AccountEvent.findByUnitPrice", query = "SELECT a FROM AccountEvent a WHERE a.unitPrice = :unitPrice"),
@NamedQuery(name = "AccountEvent.findByUnits", query = "SELECT a FROM AccountEvent a WHERE a.units = :units"), @NamedQuery(name = "AccountEvent.findByUnits", query = "SELECT a FROM AccountEvent a WHERE a.units = :units"),
...@@ -72,7 +72,7 @@ public class AccountEvent implements EventChildInterface { ...@@ -72,7 +72,7 @@ public class AccountEvent implements EventChildInterface {
* If this AccountEvent is a product in foodwace, this field is a reference * If this AccountEvent is a product in foodwace, this field is a reference
* to that foodwave. * to that foodwave.
*/ */
@JoinColumns( { @JoinColumns({
@JoinColumn(name = "food_wave_id", referencedColumnName = "id"), @JoinColumn(name = "food_wave_id", referencedColumnName = "id"),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false) })
@ManyToOne @ManyToOne
...@@ -82,7 +82,7 @@ public class AccountEvent implements EventChildInterface { ...@@ -82,7 +82,7 @@ public class AccountEvent implements EventChildInterface {
* The product user has acquired and this this AccountEvent is a reference * The product user has acquired and this this AccountEvent is a reference
* to. * to.
*/ */
@JoinColumns( { @JoinColumns({
@JoinColumn(name = "product_id", referencedColumnName = "id", nullable = false), @JoinColumn(name = "product_id", referencedColumnName = "id", nullable = false),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) })
@ManyToOne(optional = false) @ManyToOne(optional = false)
...@@ -113,7 +113,7 @@ public class AccountEvent implements EventChildInterface { ...@@ -113,7 +113,7 @@ public class AccountEvent implements EventChildInterface {
* When user has paid a bill a Account event for product "Credit" is created * When user has paid a bill a Account event for product "Credit" is created
* and reference to that bill is here.. * and reference to that bill is here..
*/ */
@JoinColumns( { @JoinColumns({
@JoinColumn(name = "bill_id", referencedColumnName = "id", nullable = false, updatable = false, insertable = false), @JoinColumn(name = "bill_id", referencedColumnName = "id", nullable = false, updatable = false, insertable = false),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) })
@OneToOne @OneToOne
......
...@@ -23,6 +23,7 @@ import javax.persistence.Table; ...@@ -23,6 +23,7 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import javax.persistence.Version; import javax.persistence.Version;
import static javax.persistence.TemporalType.DATE;
/** /**
* The system can send bills to the users. When user pays bill a AccountEvent * The system can send bills to the users. When user pays bill a AccountEvent
...@@ -31,7 +32,7 @@ import javax.persistence.Version; ...@@ -31,7 +32,7 @@ import javax.persistence.Version;
*/ */
@Entity @Entity
@Table(name = "bills") @Table(name = "bills")
@NamedQueries( { @NamedQueries({
@NamedQuery(name = "Bill.findAll", query = "SELECT b FROM Bill b"), @NamedQuery(name = "Bill.findAll", query = "SELECT b FROM Bill b"),
@NamedQuery(name = "Bill.findByDueDate", query = "SELECT b FROM Bill b WHERE b.dueDate = :dueDate"), @NamedQuery(name = "Bill.findByDueDate", query = "SELECT b FROM Bill b WHERE b.dueDate = :dueDate"),
...@@ -60,12 +61,38 @@ public class Bill implements EventChildInterface { ...@@ -60,12 +61,38 @@ public class Bill implements EventChildInterface {
private Calendar paidDate; private Calendar paidDate;
/** /**
* Reference number of the bill. * The bill number from which the reference number will be generated
* *
* @See http://www.fkl.fi/www/page/fk_www_1293 * @See http://www.fkl.fi/www/page/fk_www_1293
*
*/ */
@Column(name = "reference_number") @Column(name = "bill_number")
private String referenceNumber; private Integer billNumber;
/**
* Address where the bill should be sent;
*/
private String addr1;
private String addr2;
private String addr3;
private String addr4;
private String addr5;
@Column(nullable = false, name = "sent_time")
@Temporal(DATE)
private Calendar sentDate = Calendar.getInstance();
@Column(name = "payment_time", nullable = false)
private Integer paymentTime = 0;
@Column(name = "notice_days", nullable = false)
private String noticetime = "8 vrk";
@Column(name = "their_reference", nullable = false)
private String theirReference = "";
@Column(name = "our_reference", nullable = false)
private String ourReference = "";
@Column(name = "delivery_terms", nullable = false)
private String deliveryTerms = "";
@Column(name = "delay_intrest", nullable = false)
private Integer delayIntrest = 11;
/** /**
* Notes for the event organisators about the bill. * Notes for the event organisators about the bill.
...@@ -84,7 +111,7 @@ public class Bill implements EventChildInterface { ...@@ -84,7 +111,7 @@ public class Bill implements EventChildInterface {
* When the bill is paid this AccountEvent is created and this is a * When the bill is paid this AccountEvent is created and this is a
* reference to that accountAction. * reference to that accountAction.
*/ */
@JoinColumns( { @JoinColumns({
@JoinColumn(name = "account_event_id", referencedColumnName = "id", updatable = false), @JoinColumn(name = "account_event_id", referencedColumnName = "id", updatable = false),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false) })
@OneToOne @OneToOne
...@@ -101,6 +128,10 @@ public class Bill implements EventChildInterface { ...@@ -101,6 +128,10 @@ public class Bill implements EventChildInterface {
@JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false) @JoinColumn(name = "event_id", referencedColumnName = "event_id", updatable = false, insertable = false)
private Event event; private Event event;
public Integer getReferenceNumberBase() {
return event.getReferenceNumberBase() + billNumber;
}
/** /**
* Commodity function to calculate the total price of the bill. * Commodity function to calculate the total price of the bill.
* *
...@@ -115,6 +146,19 @@ public class Bill implements EventChildInterface { ...@@ -115,6 +146,19 @@ public class Bill implements EventChildInterface {
} }
/** /**
* Commodity function to calculate the total price of the bill.
*
* @return The total sum of the bill ( unitPrice * units * vat )
*/
public BigDecimal totalVat() {
BigDecimal total = BigDecimal.ZERO;
for (BillLine line : getBillLines()) {
total = total.add(line.getLineVat());
}
return total;
}
/**
* Commodity function to return the vatless price of the bill * Commodity function to return the vatless price of the bill
* *
* @return The total VAT-less sum of the bill ( unitPrice * units ) * @return The total VAT-less sum of the bill ( unitPrice * units )
...@@ -164,14 +208,6 @@ public class Bill implements EventChildInterface { ...@@ -164,14 +208,6 @@ public class Bill implements EventChildInterface {
this.paidDate = paidDate; this.paidDate = paidDate;
} }
public String getReferenceNumber() {
return referenceNumber;
}
public void setReferenceNumber(String referenceNumber) {
this.referenceNumber = referenceNumber;
}
public String getNotes() { public String getNotes() {
return notes; return notes;
} }
...@@ -248,4 +284,109 @@ public class Bill implements EventChildInterface { ...@@ -248,4 +284,109 @@ public class Bill implements EventChildInterface {
public Event getEvent() { public Event getEvent() {
return event; return event;
} }
public void setBillNumber(Integer billNumber) {
this.billNumber = billNumber;
}
public Integer getBillNumber() {
return billNumber;
}
public String getAddr1() {
return addr1;
}
public void setAddr1(String addr1) {
this.addr1 = addr1;
}
public String getAddr2() {
return addr2;
}
public void setAddr2(String addr2) {
this.addr2 = addr2;
}
public String getAddr3() {
return addr3;
}
public void setAddr3(String addr3) {
this.addr3 = addr3;
}
public String getAddr4() {
return addr4;
}
public void setAddr4(String addr4) {
this.addr4 = addr4;
}
public String getAddr5() {
return addr5;
}
public void setAddr5(String addr5) {
this.addr5 = addr5;
}
public Calendar getSentDate() {
return sentDate;
}
public void setSentDate(Calendar sentDate) {
this.sentDate = sentDate;
}
public String getNoticetime() {
return noticetime;
}
public void setNoticetime(String noticetime) {
this.noticetime = noticetime;
}
public String getOurReference() {
return ourReference;
}
public void setOurReference(String ourReference) {
this.ourReference = ourReference;
}
public void setTheirReference(String theirReference) {
this.theirReference = theirReference;
}
public String getTheirReference() {
return theirReference;
}
public void setDeliveryTerms(String deliveryTerms) {
this.deliveryTerms = deliveryTerms;
}
public String getDeliveryTerms() {
return deliveryTerms;
}
public void setPaymentTime(Integer paymentTime) {
this.paymentTime = paymentTime;
}
public Integer getPaymentTime() {
return paymentTime;
}
public void setDelayIntrest(Integer delayIntrest) {
this.delayIntrest = delayIntrest;
}
public Integer getDelayIntrest() {
return delayIntrest;
}
} }
...@@ -23,7 +23,7 @@ import javax.persistence.Version; ...@@ -23,7 +23,7 @@ import javax.persistence.Version;
*/ */
@Entity @Entity
@Table(name = "bill_lines") @Table(name = "bill_lines")
@NamedQueries( { @NamedQueries({
@NamedQuery(name = "BillLine.findAll", query = "SELECT b FROM BillLine b"), @NamedQuery(name = "BillLine.findAll", query = "SELECT b FROM BillLine b"),
@NamedQuery(name = "BillLine.findByProduct", query = "SELECT b FROM BillLine b WHERE b.name = :name"), @NamedQuery(name = "BillLine.findByProduct", query = "SELECT b FROM BillLine b WHERE b.name = :name"),
...@@ -57,6 +57,12 @@ public class BillLine implements EventChildInterface { ...@@ -57,6 +57,12 @@ public class BillLine implements EventChildInterface {
private BigDecimal unitPrice = BigDecimal.ZERO; private BigDecimal unitPrice = BigDecimal.ZERO;
/** /**
*
*/
@Column(name = "unit_name", nullable = false)
private String unitName = "";
/**
* How much VAT this product contains ( 0, 0.22 ) etc * How much VAT this product contains ( 0, 0.22 ) etc
*/ */
@Column(name = "vat", nullable = false, precision = 3, scale = 2) @Column(name = "vat", nullable = false, precision = 3, scale = 2)
...@@ -65,7 +71,7 @@ public class BillLine implements EventChildInterface { ...@@ -65,7 +71,7 @@ public class BillLine implements EventChildInterface {
/** /**
* Which bill this bill line belongs to * Which bill this bill line belongs to
*/ */
@JoinColumns( { @JoinColumns({
@JoinColumn(name = "bill_id", referencedColumnName = "id", nullable = false, updatable = false), @JoinColumn(name = "bill_id", referencedColumnName = "id", nullable = false, updatable = false),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) })
@ManyToOne @ManyToOne
...@@ -85,6 +91,10 @@ public class BillLine implements EventChildInterface { ...@@ -85,6 +91,10 @@ public class BillLine implements EventChildInterface {
return getLinePriceVatless().multiply(vatMultiplicand); return getLinePriceVatless().multiply(vatMultiplicand);
} }
public BigDecimal getLineVat() {
return getLinePriceVatless().multiply(getVat());
}
/** /**
* Calculate the total VAT-less price for the items on this lin * Calculate the total VAT-less price for the items on this lin
* *
...@@ -102,9 +112,10 @@ public class BillLine implements EventChildInterface { ...@@ -102,9 +112,10 @@ public class BillLine implements EventChildInterface {
this.bill = bill; this.bill = bill;
} }
public BillLine(Event event, Bill bill, String product, BigDecimal units, public BillLine(Event event, Bill bill, String product, String unitName, BigDecimal units,
BigDecimal unitPrice, BigDecimal vat) { BigDecimal unitPrice, BigDecimal vat) {
this(event, bill); this(event, bill);
this.unitName = unitName;
this.name = product; this.name = product;
this.setQuantity(units); this.setQuantity(units);
this.setUnitPrice(unitPrice); this.setUnitPrice(unitPrice);
...@@ -198,4 +209,12 @@ public class BillLine implements EventChildInterface { ...@@ -198,4 +209,12 @@ public class BillLine implements EventChildInterface {
return vat; return vat;
} }
public void setUnitName(String unitName) {
this.unitName = unitName;
}
public String getUnitName() {
return unitName;
}
} }
...@@ -58,9 +58,17 @@ public class Event implements ModelInterface<Integer> { ...@@ -58,9 +58,17 @@ public class Event implements ModelInterface<Integer> {
@Column(name = "referer") @Column(name = "referer")
private String referer; private String referer;
@JoinColumn(name = "event_settings_id", referencedColumnName = "event_settings_id", nullable = false, updatable = false) /**
* Bill's reference number will be formed by adding
* this number to the bill number and adding the
* checksum of that number as the last digit
*/
private Integer referenceNumberBase = 54321;
@JoinColumn(name = "event_organiser_id", referencedColumnName = "event_organiser_id", nullable = false, updatable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private EventSettings settings; private EventOrganiser organiser;
@JoinColumn(name = "event_status_id", referencedColumnName = "event_status_id", nullable = false) @JoinColumn(name = "event_status_id", referencedColumnName = "event_status_id", nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
...@@ -97,14 +105,6 @@ public class Event implements ModelInterface<Integer> { ...@@ -97,14 +105,6 @@ public class Event implements ModelInterface<Integer> {
public Event() { public Event() {
} }
public Event(EventSettings settings) {
this.settings = settings;
}
public Event(EventSettings settings, String name) {
this.settings = settings;
this.name = name;
}
public Calendar getStartTime() { public Calendar getStartTime() {
return startTime; return startTime;
...@@ -138,14 +138,6 @@ public class Event implements ModelInterface<Integer> { ...@@ -138,14 +138,6 @@ public class Event implements ModelInterface<Integer> {
this.referer = referer; this.referer = referer;
} }
public EventSettings getSettings() {
return settings;
}
public void setSettings(EventSettings eventSettingsId) {
this.settings = eventSettingsId;
}
public EventStatus getStatus() { public EventStatus getStatus() {
return status; return status;
} }
...@@ -284,4 +276,25 @@ public class Event implements ModelInterface<Integer> { ...@@ -284,4 +276,25 @@ public class Event implements ModelInterface<Integer> {
public void setReaders(List<Reader> readers) { public void setReaders(List<Reader> readers) {
this.readers = readers; this.readers = readers;
} }
public void setOrganiser(EventOrganiser organiser) {
this.organiser = organiser;
}
public EventOrganiser getOrganiser() {
return organiser;
}
public void setReferenceNumberBase(Integer referenceNumberBase) {
this.referenceNumberBase = referenceNumberBase;
}
public Integer getReferenceNumberBase() {
return referenceNumberBase;
}
} }
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.io.Serializable;
/** /**
* *
......
...@@ -15,7 +15,6 @@ import javax.persistence.Column; ...@@ -15,7 +15,6 @@ import javax.persistence.Column;
import javax.persistence.EmbeddedId; import javax.persistence.EmbeddedId;
import javax.persistence.Entity; import javax.persistence.Entity;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.Lob; import javax.persistence.Lob;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries; import javax.persistence.NamedQueries;
......
...@@ -24,17 +24,17 @@ import javax.persistence.Version; ...@@ -24,17 +24,17 @@ import javax.persistence.Version;
* *
*/ */
@Entity @Entity
@Table(name = "event_settings") @Table(name = "event_organiser")
@NamedQueries( { @NamedQueries( {
@NamedQuery(name = "EventSettings.findAll", query = "SELECT e FROM EventSettings e"), @NamedQuery(name = "EventOrganiser.findAll", query = "SELECT e FROM EventOrganiser e"),
@NamedQuery(name = "EventSettings.findByOrganisation", query = "SELECT e FROM EventSettings e WHERE e.organisation = :organisation"), @NamedQuery(name = "EventOrganiser.findByOrganisation", query = "SELECT e FROM EventOrganiser e WHERE e.organisation = :organisation"),
@NamedQuery(name = "EventSettings.findByBundleCountry", query = "SELECT e FROM EventSettings e WHERE e.bundleCountry = :bundleCountry") }) @NamedQuery(name = "EventOrganiser.findByBundleCountry", query = "SELECT e FROM EventOrganiser e WHERE e.bundleCountry = :bundleCountry") })
public class EventSettings implements ModelInterface<Integer> { public class EventOrganiser implements ModelInterface<Integer> {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@Id @Id
@GeneratedValue(strategy = GenerationType.IDENTITY) @GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "event_settings_id", nullable = false) @Column(name = "event_organiser_id", nullable = false)
private Integer id; private Integer id;
@Column(name = "organisation") @Column(name = "organisation")
...@@ -43,7 +43,7 @@ public class EventSettings implements ModelInterface<Integer> { ...@@ -43,7 +43,7 @@ public class EventSettings implements ModelInterface<Integer> {
@Column(name = "bundle_country") @Column(name = "bundle_country")
private String bundleCountry; private String bundleCountry;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "settings") @OneToMany(cascade = CascadeType.ALL, mappedBy = "organiser")
private List<Event> events; private List<Event> events;
@ManyToOne @ManyToOne
...@@ -54,7 +54,26 @@ public class EventSettings implements ModelInterface<Integer> { ...@@ -54,7 +54,26 @@ public class EventSettings implements ModelInterface<Integer> {
@Column(nullable = false) @Column(nullable = false)
private int jpaVersionField = 0; private int jpaVersionField = 0;
public EventSettings() { @Column(nullable = false,name="bill_address1")
private String billAddress1 = "";
@Column(nullable = false,name="bill_address2")
private String billAddress2 = "";
@Column(nullable = false,name="bill_address3")
private String billAddress3 = "";
@Column(nullable = false,name="bill_address4")
private String billAddress4 = "";
@Column(nullable = false,name="bank_number1")
private String bankNumber1;
@Column(nullable = false,name="bank_number2")
private String bankNumber2;
@Column(nullable = false,name="bank_name1")
private String bankName1;
@Column(nullable = false,name="bank_name2")
private String bankName2;
public EventOrganiser() {
} }
public List<Event> getEvents() { public List<Event> getEvents() {
...@@ -76,10 +95,10 @@ public class EventSettings implements ModelInterface<Integer> { ...@@ -76,10 +95,10 @@ public class EventSettings implements ModelInterface<Integer> {
public boolean equals(Object object) { public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are // TODO: Warning - this method won't work in the case the id fields are
// not set // not set
if (!(object instanceof EventSettings)) { if (!(object instanceof EventOrganiser)) {
return false; return false;
} }
EventSettings other = (EventSettings) object; EventOrganiser other = (EventOrganiser) object;
if ((this.getId() == null && other.getId() != null) if ((this.getId() == null && other.getId() != null)
|| (this.getId() != null && !this.id.equals(other.id))) { || (this.getId() != null && !this.id.equals(other.id))) {
return false; return false;
...@@ -89,7 +108,7 @@ public class EventSettings implements ModelInterface<Integer> { ...@@ -89,7 +108,7 @@ public class EventSettings implements ModelInterface<Integer> {
@Override @Override
public String toString() { public String toString() {
return "fi.insomnia.bortal.model.EventSettings[id=" + getId() + "]"; return "fi.insomnia.bortal.model.EventOrganiser[id=" + getId() + "]";
} }
/** /**
...@@ -170,4 +189,69 @@ public class EventSettings implements ModelInterface<Integer> { ...@@ -170,4 +189,69 @@ public class EventSettings implements ModelInterface<Integer> {
public void setAdmin(User admin) { public void setAdmin(User admin) {
this.admin = admin; this.admin = admin;
} }
public String getBillAddress1() {
return billAddress1;
}
public void setBillAddress1(String billAddress1) {
this.billAddress1 = billAddress1;
}
public String getBillAddress2() {
return billAddress2;
}
public void setBillAddress2(String billAddress2) {
this.billAddress2 = billAddress2;
}
public String getBillAddress3() {
return billAddress3;
}
public void setBillAddress3(String billAddress3) {
this.billAddress3 = billAddress3;
}
public String getBillAddress4() {
return billAddress4;
}
public void setBillAddress4(String billAddress4) {
this.billAddress4 = billAddress4;
}
public String getBankNumber1() {
return bankNumber1;
}
public void setBankNumber1(String bankNumber1) {
this.bankNumber1 = bankNumber1;
}
public String getBankNumber2() {
return bankNumber2;
}
public void setBankNumber2(String bankNumber2) {
this.bankNumber2 = bankNumber2;
}
public String getBankName1() {
return bankName1;
}
public void setBankName1(String bankName1) {
this.bankName1 = bankName1;
}
public String getBankName2() {
return bankName2;
}
public void setBankName2(String bankName2) {
this.bankName2 = bankName2;
}
} }
...@@ -59,6 +59,10 @@ public class EventPk implements Serializable { ...@@ -59,6 +59,10 @@ public class EventPk implements Serializable {
return pk.id == this.id && pk.eventId == this.eventId; return pk.id == this.id && pk.eventId == this.eventId;
} }
@Override
public String toString() {
return "fi.insomnia.bortal.model.EventPk[id=" + id + ", eventId=" + eventId + "]";
}
// public void setEvent(Event event) { // public void setEvent(Event event) {
// this.event = event; // this.event = event;
// } // }
......
...@@ -164,7 +164,7 @@ public class User implements ModelInterface<Integer> { ...@@ -164,7 +164,7 @@ public class User implements ModelInterface<Integer> {
private int jpaVersionField = 0; private int jpaVersionField = 0;
@OneToMany(mappedBy = "admin") @OneToMany(mappedBy = "admin")
private List<EventSettings> eventSettings; private List<EventOrganiser> eventOrganiser;
@Transient @Transient
private static final Logger logger = LoggerFactory.getLogger(User.class); private static final Logger logger = LoggerFactory.getLogger(User.class);
...@@ -519,20 +519,7 @@ public class User implements ModelInterface<Integer> { ...@@ -519,20 +519,7 @@ public class User implements ModelInterface<Integer> {
this.confirmTime = confirmTime; this.confirmTime = confirmTime;
} }
/**
* @return the eventSettings
*/
public List<EventSettings> getEventSettings() {
return eventSettings;
}
/**
* @param eventSettings
* the eventSettings to set
*/
public void setEventSettings(List<EventSettings> eventSettings) {
this.eventSettings = eventSettings;
}
public void resetPassword(String password) { public void resetPassword(String password) {
String newEncryptedPassword = PasswordFunctions.getEncryptedPassword(password); String newEncryptedPassword = PasswordFunctions.getEncryptedPassword(password);
...@@ -543,4 +530,12 @@ public class User implements ModelInterface<Integer> { ...@@ -543,4 +530,12 @@ public class User implements ModelInterface<Integer> {
boolean matches = PasswordFunctions.checkPlainPassword(plainPassword, this.password); boolean matches = PasswordFunctions.checkPlainPassword(plainPassword, this.password);
return matches; return matches;
} }
public void setEventOrganiser(List<EventOrganiser> eventOrganiser) {
this.eventOrganiser = eventOrganiser;
}
public List<EventOrganiser> getEventOrganiser() {
return eventOrganiser;
}
} }
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>LanBortalWeb</display-name> <display-name>LanBortalWeb</display-name>
<context-param> <context-param>
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name> <param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
<servlet-name>PlaceMap</servlet-name> <servlet-name>PlaceMap</servlet-name>
<url-pattern>/PlaceMap</url-pattern> <url-pattern>/PlaceMap</url-pattern>
</servlet-mapping> </servlet-mapping>
<welcome-file-list> <welcome-file-list>
<welcome-file>index.html</welcome-file> <welcome-file>index.html</welcome-file>
<welcome-file>index.jsf</welcome-file> <welcome-file>index.jsf</welcome-file>
...@@ -27,7 +26,6 @@ ...@@ -27,7 +26,6 @@
<servlet-name>Faces Servlet</servlet-name> <servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern> <url-pattern>*.jsf</url-pattern>
</servlet-mapping> </servlet-mapping>
<filter> <filter>
<display-name>HostnameFilter</display-name> <display-name>HostnameFilter</display-name>
<filter-name>HostnameFilter</filter-name> <filter-name>HostnameFilter</filter-name>
...@@ -37,7 +35,6 @@ ...@@ -37,7 +35,6 @@
<filter-name>HostnameFilter</filter-name> <filter-name>HostnameFilter</filter-name>
<servlet-name>Faces Servlet</servlet-name> <servlet-name>Faces Servlet</servlet-name>
</filter-mapping> </filter-mapping>
<login-config> <login-config>
<auth-method>FORM</auth-method> <auth-method>FORM</auth-method>
<realm-name>omniarealm</realm-name> <realm-name>omniarealm</realm-name>
...@@ -52,9 +49,6 @@ ...@@ -52,9 +49,6 @@
<security-role> <security-role>
<role-name>user</role-name> <role-name>user</role-name>
</security-role> </security-role>
<security-constraint> <security-constraint>
<web-resource-collection> <web-resource-collection>
<web-resource-name>forbidden</web-resource-name> <web-resource-name>forbidden</web-resource-name>
...@@ -64,5 +58,14 @@ ...@@ -64,5 +58,14 @@
<description>Thou shall not read the sources..</description> <description>Thou shall not read the sources..</description>
</auth-constraint> </auth-constraint>
</security-constraint> </security-constraint>
<servlet>
<description></description>
<display-name>BillPrint</display-name>
<servlet-name>BillPrint</servlet-name>
<servlet-class>fi.insomnia.bortal.servlet.BillPrint</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>BillPrint</servlet-name>
<url-pattern>/BillPrint</url-pattern>
</servlet-mapping>
</web-app> </web-app>
\ No newline at end of file
...@@ -7,6 +7,7 @@ import javax.faces.context.FacesContext; ...@@ -7,6 +7,7 @@ import javax.faces.context.FacesContext;
/*** /***
* Access i18n localisations from Java code. Feel free to make up a better way. * Access i18n localisations from Java code. Feel free to make up a better way.
* Note! works only when invoked from inside Faces context...
* *
* @author jkj * @author jkj
* *
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!