package br.com.centralit.citquestionario.bean;
import java.sql.Date;
import java.util.Collection;
import java.util.Iterator;
import org.apache.commons.lang.StringEscapeUtils;
import br.com.citframework.dto.IDto;
import br.com.citframework.util.UtilFormatacao;
import br.com.citframework.util.UtilHTML;
import br.com.citframework.util.WebUtil;
public class QuestaoQuestionarioDTO implements IDto {
/**
*
*/
private static final long serialVersionUID = 6249418505804531221L;
private Integer idQuestaoQuestionario;
private Integer idGrupoQuestionario;
private Integer idQuestaoAgrupadora;
private Integer idQuestaoOrigem;
private String tituloQuestaoQuestionario;
private String tipoQuestao;
private Integer sequenciaQuestao;
private String valorDefault;
private String textoInicial;
private String tipo;
private String infoResposta;
private String unidade;
private String valoresReferencia;
private String obrigatoria;
private Integer tamanho;
private Integer decimais;
private String ponderada;
private Integer qtdeLinhas;
private Integer qtdeColunas;
private String cabecalhoLinhas;
private String cabecalhoColunas;
private String nomeListagem;
private String ultimoValor;
private Double valorPermitido1;
private Double valorPermitido2;
private Integer idImagem;
private Collection colOpcoesResposta;
private String serializeOpcoesResposta;
private Collection colQuestoesAgrupadas;
private String serializeQuestoesAgrupadas;
private Collection colRespostas;
private String serializeRespostas;
private Collection colCabecalhosLinha;
private String serializeCabecalhosLinha;
private Collection colCabecalhosColuna;
private String serializeCabecalhosColuna;
private Integer idRespostaItemQuestionario;
private RespostaItemQuestionarioDTO respostaItemDto;
private String idTabela;
private String idControleQuestao;
private Integer sequencialResposta;
private Integer idSubQuestionario;
private String abaResultSubForm;
private String sigla;
private String imprime;
private String calculada;
private String editavel;
private String nomeGrupo;
public boolean agrupada;
private Date dataRegistro;
private Integer idSolicitacaoServico;
public QuestaoQuestionarioDTO(){
this.setAgrupada(false);
this.setSequencialResposta(null);
}
public boolean isAgrupada() {
return agrupada;
}
public void setAgrupada(boolean agrupada) {
this.agrupada = agrupada;
}
public Integer getIdGrupoQuestionario() {
return idGrupoQuestionario;
}
public void setIdGrupoQuestionario(Integer idGrupoQuestionario) {
this.idGrupoQuestionario = idGrupoQuestionario;
}
public Integer getIdQuestaoQuestionario() {
return idQuestaoQuestionario;
}
public void setIdQuestaoQuestionario(Integer idQuestaoQuestionario) {
this.idQuestaoQuestionario = idQuestaoQuestionario;
}
public Integer getIdQuestaoAgrupadora() {
return idQuestaoAgrupadora;
}
public void setIdQuestaoAgrupadora(Integer idQuestaoAgrupadora) {
this.idQuestaoAgrupadora = idQuestaoAgrupadora;
}
public Integer getIdQuestaoOrigem() {
return idQuestaoOrigem;
}
public void setIdQuestaoOrigem(Integer idQuestaoOrigem) {
this.idQuestaoOrigem = idQuestaoOrigem;
}
public Integer getSequenciaQuestao() {
return sequenciaQuestao;
}
public void setSequenciaQuestao(Integer sequenciaQuestao) {
this.sequenciaQuestao = sequenciaQuestao;
}
public String getTipoQuestao() {
return tipoQuestao;
}
public void setTipoQuestao(String tipoQuestao) {
this.tipoQuestao = tipoQuestao;
}
public String getTituloQuestaoQuestionarioNoEnter() {
if (tituloQuestaoQuestionario == null) return "";
tituloQuestaoQuestionario = tituloQuestaoQuestionario.replaceAll("\n", "");
tituloQuestaoQuestionario = tituloQuestaoQuestionario.replaceAll("\r", "");
tituloQuestaoQuestionario = tituloQuestaoQuestionario.replaceAll("\\\n", "");
tituloQuestaoQuestionario = tituloQuestaoQuestionario.replaceAll("\\\r", "");
tituloQuestaoQuestionario = StringEscapeUtils.escapeJavaScript(tituloQuestaoQuestionario);
return tituloQuestaoQuestionario;
}
public String getTituloQuestaoQuestionario() {
return tituloQuestaoQuestionario;
}
public String getTituloQuestaoQuestionarioSemFmt() {
if (tituloQuestaoQuestionario == null) return "";
return UtilHTML.retiraFormatacaoHTML(tituloQuestaoQuestionario);
}
public void setTituloQuestaoQuestionario(String tituloQuestaoQuestionario) {
this.tituloQuestaoQuestionario = tituloQuestaoQuestionario;
}
public String getValorDefault() {
return valorDefault;
}
public void setValorDefault(String valorDefault) {
this.valorDefault = valorDefault;
}
public Integer getDecimais() {
return decimais;
}
public void setDecimais(Integer decimais) {
this.decimais = decimais;
}
public Integer getTamanho() {
return tamanho;
}
public void setTamanho(Integer tamanho) {
this.tamanho = tamanho;
}
public String getTextoInicialNoEnter() {
if (textoInicial == null) return "";
textoInicial = textoInicial.replaceAll("\n", "");
textoInicial = textoInicial.replaceAll("\r", "");
textoInicial = textoInicial.replaceAll("\\\n", "");
textoInicial = textoInicial.replaceAll("\\\r", "");
return textoInicial;
}
public String getValorDefaultNoEnter() {
if (valorDefault == null) return "";
valorDefault = valorDefault.replaceAll("\n", "");
valorDefault = valorDefault.replaceAll("\r", "");
valorDefault = valorDefault.replaceAll("\\\n", "");
valorDefault = valorDefault.replaceAll("\\\r", "");
return valorDefault;
}
public String getTextoInicial() {
return textoInicial;
}
public void setTextoInicial(String textoInicial) {
this.textoInicial = textoInicial;
}
public String getSerializeOpcoesResposta() {
if (serializeOpcoesResposta == null){
try {
serializeOpcoesResposta = WebUtil.serializeObjects(getColOpcoesResposta());
} catch (Exception e) {
serializeOpcoesResposta = "";
e.printStackTrace();
}
}
return serializeOpcoesResposta;
}
public void setSerializeOpcoesResposta(String serializeOpcoesResposta) {
this.serializeOpcoesResposta = serializeOpcoesResposta;
}
public Collection getColOpcoesResposta() {
return colOpcoesResposta;
}
public void setColOpcoesResposta(Collection colOpcoesResposta) {
this.colOpcoesResposta = colOpcoesResposta;
}
public Collection getColQuestoesAgrupadas() {
return colQuestoesAgrupadas;
}
public void setColQuestoesAgrupadas(Collection colQuestoesAgrupadas) {
this.colQuestoesAgrupadas = colQuestoesAgrupadas;
}
public String getSerializeQuestoesAgrupadas() {
if (serializeQuestoesAgrupadas == null){
try {
serializeQuestoesAgrupadas = WebUtil.serializeObjects(getColQuestoesAgrupadas());
} catch (Exception e) {
serializeQuestoesAgrupadas = "";
e.printStackTrace();
}
}
return serializeQuestoesAgrupadas;
}
public void setSerializeQuestoesAgrupadas(String serializeQuestoesAgrupadas) {
this.serializeQuestoesAgrupadas = serializeQuestoesAgrupadas;
}
public Collection getColCabecalhosLinha() {
return colCabecalhosLinha;
}
public Collection getColRespostas() {
return colRespostas;
}
public void setColRespostas(Collection colRespostas) {
this.colRespostas = colRespostas;
}
public String getSerializeRespostas() {
return serializeRespostas;
}
public void setSerializeRespostas(String serializeRespostas) {
this.serializeRespostas = serializeRespostas;
}
public void setColCabecalhosLinha(Collection colCabecalhosLinha) {
this.colCabecalhosLinha = colCabecalhosLinha;
}
public String getSerializeCabecalhosLinha() {
if (serializeCabecalhosLinha == null){
try {
serializeCabecalhosLinha = WebUtil.serializeObjects(getColCabecalhosLinha());
} catch (Exception e) {
serializeCabecalhosLinha = "";
e.printStackTrace();
}
}
return serializeCabecalhosLinha;
}
public void setSerializeCabecalhosLinha(String serializeCabecalhosLinha) {
this.serializeCabecalhosLinha = serializeCabecalhosLinha;
}
public Collection getColCabecalhosColuna() {
return colCabecalhosColuna;
}
public void setColCabecalhosColuna(Collection colCabecalhosColuna) {
this.colCabecalhosColuna = colCabecalhosColuna;
}
public String getSerializeCabecalhosColuna() {
if (serializeCabecalhosColuna == null){
try {
serializeCabecalhosColuna = WebUtil.serializeObjects(getColCabecalhosColuna());
} catch (Exception e) {
serializeCabecalhosColuna = "";
e.printStackTrace();
}
}
return serializeCabecalhosColuna;
}
public void setSerializeCabecalhosColuna(String serializeCabecalhosColuna) {
this.serializeCabecalhosColuna = serializeCabecalhosColuna;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
public String getInfoResposta() {
return infoResposta;
}
public void setInfoResposta(String infoResposta) {
this.infoResposta = infoResposta;
}
public String getUnidade() {
return unidade;
}
public void setUnidade(String unidade) {
this.unidade = unidade;
}
public String getValoresReferencia() {
return valoresReferencia;
}
public void setValoresReferencia(String valoresReferencia) {
this.valoresReferencia = valoresReferencia;
}
public String getObrigatoria() {
return obrigatoria;
}
public void setObrigatoria(String obrigatoria) {
this.obrigatoria = obrigatoria;
}
public String getPonderada() {
return ponderada;
}
public void setPonderada(String ponderada) {
this.ponderada = ponderada;
}
public Integer getQtdeLinhas() {
return qtdeLinhas;
}
public void setQtdeLinhas(Integer qtdeLinhas) {
this.qtdeLinhas = qtdeLinhas;
}
public Integer getQtdeColunas() {
return qtdeColunas;
}
public void setQtdeColunas(Integer qtdeColunas) {
this.qtdeColunas = qtdeColunas;
}
public String getCabecalhoLinhas() {
return cabecalhoLinhas;
}
public void setCabecalhoLinhas(String cabecalhoLinhas) {
this.cabecalhoLinhas = cabecalhoLinhas;
}
public String getCabecalhoColunas() {
return cabecalhoColunas;
}
public void setCabecalhoColunas(String cabecalhoColunas) {
this.cabecalhoColunas = cabecalhoColunas;
}
public RespostaItemQuestionarioDTO getRespostaItemDto() {
return respostaItemDto;
}
public void setRespostaItemDto(RespostaItemQuestionarioDTO respostaItemDto) {
this.respostaItemDto = respostaItemDto;
}
public String getIdTabela() {
return idTabela;
}
public void setIdTabela(String idTabela) {
this.idTabela = idTabela;
}
public String getIdControleQuestao() {
return idControleQuestao;
}
public void setIdControleQuestao(String idControleQuestao) {
this.idControleQuestao = idControleQuestao;
}
public RespostaItemQuestionarioDTO obtemRespostaItemDto(Integer sequencialResposta) {
RespostaItemQuestionarioDTO resp = null;
if (sequencialResposta == null) {
resp = respostaItemDto;
}else{
if (colRespostas != null && sequencialResposta > 0){
for (Iterator itResp = colRespostas.iterator(); itResp.hasNext();){
RespostaItemQuestionarioDTO respAux = (RespostaItemQuestionarioDTO) itResp.next();
if (respAux.getSequencialResposta() != null && respAux.getSequencialResposta().intValue() == sequencialResposta.intValue()) {
resp = respAux;
break;
}
}
}
}
return resp;
}
public String getNomeListagem() {
return nomeListagem;
}
public void setNomeListagem(String nomeListagem) {
this.nomeListagem = nomeListagem;
}
public void copiaValoresAtributos(QuestaoQuestionarioDTO questaoOrigem) throws Exception {
setDecimais(questaoOrigem.getDecimais());
setInfoResposta(questaoOrigem.getInfoResposta());
setObrigatoria(questaoOrigem.getObrigatoria());
setPonderada(questaoOrigem.getPonderada());
setQtdeColunas(questaoOrigem.getQtdeColunas());
setQtdeLinhas(questaoOrigem.getQtdeLinhas());
setTamanho(questaoOrigem.getTamanho());
setTextoInicial(questaoOrigem.getTextoInicial());
setTipoQuestao(questaoOrigem.getTipoQuestao());
setTituloQuestaoQuestionario(questaoOrigem.getTituloQuestaoQuestionarioSemFmt());
setUnidade(questaoOrigem.getUnidade());
setValorDefault(questaoOrigem.getValorDefault());
setValoresReferencia(questaoOrigem.getValoresReferencia());
setCabecalhoColunas(questaoOrigem.getCabecalhoColunas());
setCabecalhoLinhas(questaoOrigem.getCabecalhoLinhas());
setNomeListagem(questaoOrigem.getNomeListagem());
setUltimoValor(questaoOrigem.getUltimoValor());
setIdSubQuestionario(questaoOrigem.getIdSubQuestionario());
setAbaResultSubForm(questaoOrigem.getAbaResultSubForm());
setSigla(questaoOrigem.getSigla());
setImprime(questaoOrigem.getImprime());
setCalculada(questaoOrigem.getCalculada());
}
public Integer getSequencialResposta() {
return sequencialResposta;
}
public void setSequencialResposta(Integer sequencialResposta) {
this.sequencialResposta = sequencialResposta;
}
public String getUltimoValor() {
return ultimoValor;
}
public void setUltimoValor(String ultimoValor) {
this.ultimoValor = ultimoValor;
}
public Integer getIdSubQuestionario() {
return idSubQuestionario;
}
public void setIdSubQuestionario(Integer idSubQuestionario) {
this.idSubQuestionario = idSubQuestionario;
}
public String getAbaResultSubForm() {
return abaResultSubForm;
}
public void setAbaResultSubForm(String abaResultSubForm) {
this.abaResultSubForm = abaResultSubForm;
}
public String getSigla() {
return sigla;
}
public void setSigla(String sigla) {
this.sigla = sigla;
}
public String getImprime() {
return imprime;
}
public void setImprime(String imprime) {
this.imprime = imprime;
}
public String getCalculada() {
return calculada;
}
public void setCalculada(String calculada) {
this.calculada = calculada;
}
private boolean isInCollection(Integer idValor, Collection colVerificar){
if (colVerificar == null) return false;
for(Iterator it = colVerificar.iterator(); it.hasNext();){
RespostaItemQuestionarioOpcoesDTO respItemQuestDto = (RespostaItemQuestionarioOpcoesDTO)it.next();
if (respItemQuestDto.getIdOpcaoRespostaQuestionario().intValue() == idValor.intValue()){
return true;
}
}
return false;
}
public String obtemTituloOpcaoResposta(Integer sequencialResposta) {
String value = "";
String sep = "";
if (getColOpcoesResposta()!=null){
boolean b = false;
for(Iterator itOpcResp = getColOpcoesResposta().iterator(); itOpcResp.hasNext();){
OpcaoRespostaQuestionarioDTO opcRespDto = (OpcaoRespostaQuestionarioDTO)itOpcResp.next();
RespostaItemQuestionarioDTO resposta = obtemRespostaItemDto(sequencialResposta);
if (resposta!=null){
if (isInCollection(opcRespDto.getIdOpcaoRespostaQuestionario(), resposta.getColOpcoesResposta())){
value += sep + opcRespDto.getTitulo().replaceAll("<br>","");;
sep = ", ";
}
}
}
}
return value;
}
public String getEditavel() {
return editavel;
}
public void setEditavel(String editavel) {
this.editavel = editavel;
}
public String getNomeGrupo() {
return nomeGrupo;
}
public void setNomeGrupo(String nomeGrupo) {
this.nomeGrupo = nomeGrupo;
}
public Double getValorPermitido1() {
return valorPermitido1;
}
public String getValorPermitido1Str() {
if (valorPermitido1 == null){
return "0,000";
}
return UtilFormatacao.formatDouble(valorPermitido1,3);
}
public void setValorPermitido1(Double valorPermitido1) {
this.valorPermitido1 = valorPermitido1;
}
public Double getValorPermitido2() {
return valorPermitido2;
}
public String getValorPermitido2Str() {
if (valorPermitido2 == null){
return "0,000";
}
return UtilFormatacao.formatDouble(valorPermitido2,3);
}
public void setValorPermitido2(Double valorPermitido2) {
this.valorPermitido2 = valorPermitido2;
}
public Integer getIdRespostaItemQuestionario() {
return idRespostaItemQuestionario;
}
public void setIdRespostaItemQuestionario(Integer idRespostaItemQuestionario) {
this.idRespostaItemQuestionario = idRespostaItemQuestionario;
}
public Date getDataRegistro() {
return dataRegistro;
}
public void setDataRegistro(Date dataRegistro) {
this.dataRegistro = dataRegistro;
}
public Integer getIdImagem() {
return idImagem;
}
public void setIdImagem(Integer idImagem) {
this.idImagem = idImagem;
}
public Integer getIdSolicitacaoServico() {
return idSolicitacaoServico;
}
public void setIdSolicitacaoServico(Integer idSolicitacaoServico) {
this.idSolicitacaoServico = idSolicitacaoServico;
}
}