package br.usp.ime.academicdevoir.entidade;
import javax.persistence.Entity;
import br.usp.ime.academicdevoir.dao.TagDao;
import br.usp.ime.academicdevoir.infra.TipoDeQuestao;
@Entity
public class QuestaoDeVouF extends Questao {
/**
* @uml.property name="resposta"
*/
private Boolean resposta;
public Boolean getResposta() {
return resposta;
}
/**
* @param resposta
* @uml.property name="resposta"
*/
public void setResposta(Boolean resposta) {
this.resposta = resposta;
}
public TipoDeQuestao getTipo() {
return TipoDeQuestao.VOUF;
}
public String getRenderizacao() {
String htmlResult = "";
StringBuffer buffer = new StringBuffer();
buffer.append("<table>");
buffer.append("<tr><td><input type=\"radio\" name=\"resposta.valor\" value=\"true\" />Verdadeiro </td>");
buffer.append("<td><input type=\"radio\" name=\"resposta.valor\" value=\"false\">Falso");
buffer.append("</td></tr>");
buffer.append("<input type=\"hidden\" name=\"idDaQuestao\" value=\"");
buffer.append(this.getId());
buffer.append("\" />");
buffer.append("</table>");
htmlResult = buffer.toString();
return htmlResult;
}
public String getRenderAlteracao(Resposta resposta) {
if (resposta == null || resposta.getValor() == null
|| resposta.getValor().isEmpty())
return getRenderizacao();
String htmlResult = "";
StringBuffer buffer = new StringBuffer();
buffer.append("<table>");
buffer.append("<tr><td><input type=\"radio\" name=\"resposta.valor\" value=\"true\"");
if (resposta.getValor().equals("true"))
buffer.append(" checked=\"checked\"");
buffer.append(" />Verdadeiro </td><td><input type=\"radio\" name=\"resposta.valor\" value=\"false\"");
if (resposta.getValor().equals("false"))
buffer.append(" checked=\"checked\"");
buffer.append("/>Falso</td></tr>");
buffer.append("<input type=\"hidden\" name=\"idDaQuestao\" value=\"");
buffer.append(this.getId());
buffer.append("\" />");
buffer.append("</table>");
htmlResult = buffer.toString();
return htmlResult;
}
public String getRenderCorrecao (Resposta resposta) {
if (resposta == null)
resposta = new Resposta();
String htmlResult = "";
StringBuffer buffer = new StringBuffer();
buffer.append("<p>");
if (resposta.getValor() != null) {
if (resposta.getValor().equals("true"))
buffer.append("Verdadeiro");
else if (resposta.getValor().equals("false"))
buffer.append("Falso");
}
buffer.append("</p>");
buffer.append("<p> Comentários: ");
if (resposta.getComentario() != null)
buffer.append(resposta.getComentario());
buffer.append("</p>");
buffer.append("<p> Nota: ");
if (resposta.getNota() != null)
buffer.append(resposta.getNota());
buffer.append("</p>");
htmlResult = buffer.toString();
return htmlResult;
}
public Boolean respostaDoAlunoEhCorreta(Resposta respostaAluno) {
return respostaAluno.getValor().equals(resposta.toString());
}
public QuestaoDeVouF copia(TagDao dao) {
QuestaoDeVouF questao = new QuestaoDeVouF();
questao.enunciado = this.enunciado;
questao.resposta = this.resposta;
questao.setTags(this.getTagsEmString(), dao);
return questao;
}
}