Commit 962c77f2 by Tuomas Riihimäki

Polliin näkymää ja wrappereita

1 parent b0164c33
......@@ -33,6 +33,10 @@ public abstract class GenericEventChild implements EventChildInterface {
super();
}
public GenericEventChild(EventPk eventPk) {
id = eventPk;
}
@Override
public final boolean equals(Object object) {
......
package fi.insomnia.bortal.model;
import fi.insomnia.bortal.model.GenericEntity;
import static javax.persistence.TemporalType.TIMESTAMP;
import java.io.Serializable;
import java.util.Calendar;
import java.util.List;
import javax.persistence.*;
import static javax.persistence.TemporalType.TIMESTAMP;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
/**
* Entity implementation class for Entity: Poll
......@@ -73,4 +76,12 @@ public class Poll extends GenericEventChild implements Serializable {
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 {
@ManyToOne
@Column(name = "question_id", nullable = false)
private PossibleAnswer choise;
private PossibleAnswer choice;
public void setAnswerText(String answerText) {
this.answerText = answerText;
}
public PollAnswer(PollQuestion q)
{
super(new EventPk(q.getId().getId()));
}
public String getAnswerText() {
return answerText;
}
public void setChoise(PossibleAnswer choise) {
this.choise = choise;
public void setChoise(PossibleAnswer choice) {
this.choice = choice;
}
public PossibleAnswer getChoise() {
return choise;
public PossibleAnswer getChoice() {
return choice;
}
}
......@@ -4,9 +4,9 @@ import javax.annotation.Generated;
import javax.persistence.metamodel.SingularAttribute;
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)
public class PollAnswer_ extends GenericEventChild_ {
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;
import javax.persistence.metamodel.SingularAttribute;
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)
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, Integer> choices;
public static volatile SingularAttribute<PollQuestion, Integer> sort;
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;
import javax.persistence.metamodel.SingularAttribute;
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)
public class PossibleAnswer_ extends GenericEventChild_ {
public static volatile SingularAttribute<PossibleAnswer, String> answer;
public static volatile SingularAttribute<PossibleAnswer, Integer> sort;
public static volatile SingularAttribute<PossibleAnswer, Boolean> text;
public static volatile SingularAttribute<PossibleAnswer, String> description;
public static volatile SingularAttribute<PossibleAnswer, String> answer;
public static volatile SingularAttribute<PossibleAnswer, PollQuestion> question;
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!