Commit 962c77f2 by Tuomas Riihimäki

Polliin näkymää ja wrappereita

1 parent b0164c33
...@@ -33,6 +33,10 @@ public abstract class GenericEventChild implements EventChildInterface { ...@@ -33,6 +33,10 @@ public abstract class GenericEventChild implements EventChildInterface {
super(); super();
} }
public GenericEventChild(EventPk eventPk) {
id = eventPk;
}
@Override @Override
public final boolean equals(Object object) { public final boolean equals(Object object) {
......
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import fi.insomnia.bortal.model.GenericEntity; import static javax.persistence.TemporalType.TIMESTAMP;
import java.io.Serializable; import java.io.Serializable;
import java.util.Calendar; import java.util.Calendar;
import java.util.List; import java.util.List;
import javax.persistence.*; import javax.persistence.Entity;
import javax.persistence.Lob;
import static javax.persistence.TemporalType.TIMESTAMP; import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
/** /**
* Entity implementation class for Entity: Poll * Entity implementation class for Entity: Poll
...@@ -73,4 +76,12 @@ public class Poll extends GenericEventChild implements Serializable { ...@@ -73,4 +76,12 @@ public class Poll extends GenericEventChild implements Serializable {
this.description = description; this.description = description;
} }
public void setQuestions(List<PollQuestion> questions) {
this.questions = questions;
}
public List<PollQuestion> getQuestions() {
return questions;
}
} }
...@@ -20,21 +20,26 @@ public class PollAnswer extends GenericEventChild implements Serializable { ...@@ -20,21 +20,26 @@ public class PollAnswer extends GenericEventChild implements Serializable {
@ManyToOne @ManyToOne
@Column(name = "question_id", nullable = false) @Column(name = "question_id", nullable = false)
private PossibleAnswer choise; private PossibleAnswer choice;
public void setAnswerText(String answerText) { public void setAnswerText(String answerText) {
this.answerText = answerText; this.answerText = answerText;
} }
public PollAnswer(PollQuestion q)
{
super(new EventPk(q.getId().getId()));
}
public String getAnswerText() { public String getAnswerText() {
return answerText; return answerText;
} }
public void setChoise(PossibleAnswer choise) { public void setChoise(PossibleAnswer choice) {
this.choise = choise; this.choice = choice;
} }
public PossibleAnswer getChoise() { public PossibleAnswer getChoice() {
return choise; return choice;
} }
} }
...@@ -4,9 +4,9 @@ import javax.annotation.Generated; ...@@ -4,9 +4,9 @@ import javax.annotation.Generated;
import javax.persistence.metamodel.SingularAttribute; import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel; import javax.persistence.metamodel.StaticMetamodel;
@Generated(value="Dali", date="2010-10-31T00:24:20.751+0300") @Generated(value="Dali", date="2010-10-31T00:32:23.530+0300")
@StaticMetamodel(PollAnswer.class) @StaticMetamodel(PollAnswer.class)
public class PollAnswer_ extends GenericEventChild_ { public class PollAnswer_ extends GenericEventChild_ {
public static volatile SingularAttribute<PollAnswer, String> answerText; public static volatile SingularAttribute<PollAnswer, String> answerText;
public static volatile SingularAttribute<PollAnswer, PossibleAnswer> choise; public static volatile SingularAttribute<PollAnswer, PossibleAnswer> choice;
} }
...@@ -5,13 +5,13 @@ import javax.persistence.metamodel.ListAttribute; ...@@ -5,13 +5,13 @@ import javax.persistence.metamodel.ListAttribute;
import javax.persistence.metamodel.SingularAttribute; import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel; import javax.persistence.metamodel.StaticMetamodel;
@Generated(value="Dali", date="2010-10-31T00:23:24.781+0300") @Generated(value="Dali", date="2010-10-31T00:31:49.926+0300")
@StaticMetamodel(PollQuestion.class) @StaticMetamodel(PollQuestion.class)
public class PollQuestion_ extends GenericEventChild_ { public class PollQuestion_ extends GenericEventChild_ {
public static volatile SingularAttribute<PollQuestion, Poll> poll;
public static volatile ListAttribute<PollQuestion, PossibleAnswer> answers;
public static volatile SingularAttribute<PollQuestion, String> question; public static volatile SingularAttribute<PollQuestion, String> question;
public static volatile SingularAttribute<PollQuestion, Integer> choices; public static volatile SingularAttribute<PollQuestion, Integer> choices;
public static volatile SingularAttribute<PollQuestion, Integer> sort; public static volatile SingularAttribute<PollQuestion, Integer> sort;
public static volatile SingularAttribute<PollQuestion, Integer> page; public static volatile SingularAttribute<PollQuestion, Integer> page;
public static volatile ListAttribute<PollQuestion, PossibleAnswer> answers;
public static volatile SingularAttribute<PollQuestion, Poll> poll;
} }
...@@ -5,13 +5,13 @@ import javax.persistence.metamodel.ListAttribute; ...@@ -5,13 +5,13 @@ import javax.persistence.metamodel.ListAttribute;
import javax.persistence.metamodel.SingularAttribute; import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel; import javax.persistence.metamodel.StaticMetamodel;
@Generated(value="Dali", date="2010-10-31T00:23:24.804+0300") @Generated(value="Dali", date="2010-10-31T00:31:49.966+0300")
@StaticMetamodel(PossibleAnswer.class) @StaticMetamodel(PossibleAnswer.class)
public class PossibleAnswer_ extends GenericEventChild_ { public class PossibleAnswer_ extends GenericEventChild_ {
public static volatile SingularAttribute<PossibleAnswer, String> answer;
public static volatile SingularAttribute<PossibleAnswer, Integer> sort; public static volatile SingularAttribute<PossibleAnswer, Integer> sort;
public static volatile SingularAttribute<PossibleAnswer, Boolean> text; public static volatile SingularAttribute<PossibleAnswer, Boolean> text;
public static volatile SingularAttribute<PossibleAnswer, String> description; public static volatile SingularAttribute<PossibleAnswer, String> description;
public static volatile SingularAttribute<PossibleAnswer, String> answer;
public static volatile SingularAttribute<PossibleAnswer, PollQuestion> question; public static volatile SingularAttribute<PossibleAnswer, PollQuestion> question;
public static volatile ListAttribute<PossibleAnswer, PollAnswer> answers; public static volatile ListAttribute<PossibleAnswer, PollAnswer> answers;
} }
package fi.insomnia.bortal.view;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.ListDataModel;
import fi.insomnia.bortal.model.Poll;
import fi.insomnia.bortal.view.helpers.PollWrapper;
@ManagedBean(name = "pollView")
@SessionScoped
public class PollView extends GenericView {
@EJB
private PollBeanLocal pollBean;
private PollWrapper pollwrapper;
private ListDataModel<Poll> polls;
public void initPollList() {
polls = new ListDataModel<Poll>(pollBean.findPolls());
}
public String beginPoll() {
pollwrapper = new PollWrapper(polls.getRowData());
}
}
package fi.insomnia.bortal.view.helpers;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map.Entry;
import javax.faces.model.ListDataModel;
import fi.insomnia.bortal.model.Poll;
import fi.insomnia.bortal.model.PollAnswer;
import fi.insomnia.bortal.model.PollQuestion;
import fi.insomnia.bortal.view.helpers.PollWrapper.QuestionWrapper;
public class PollWrapper {
HashMap<Integer, List<QuestionWrapper>> pages;
public PollWrapper(Poll poll) {
pages = new HashMap<Integer, List<QuestionWrapper>>();
for (PollQuestion q : poll.getQuestions()) {
if (!pages.containsKey(q.getPage())) {
pages.put(q.getPage(), new LinkedList<QuestionWrapper>());
}
pages.get(q.getPage()).add(new QuestionWrapper(q));
}
}
public class QuestionWrapper {
private PollQuestion question;
private PollAnswer answer;
public QuestionWrapper(PollQuestion q) {
question = q;
answer = new PollAnswer(q);
}
public PollQuestion getQuestion() {
return question;
}
public void setQuestion(PollQuestion question) {
this.question = question;
}
public PollAnswer getAnswer() {
return answer;
}
public void setAnswer(PollAnswer answer) {
this.answer = answer;
}
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!