Subversion Repositories bacoAlunos

Rev

Rev 1553 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.services.questionarios;

import org.dom4j.DocumentException;
import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;
import org.w3c.dom.Document;
import pt.estgp.estgweb.services.questionarios.pedagogico.DataTable;
import pt.estgp.estgweb.utils.Dom4jUtil;

import javax.xml.transform.TransformerException;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

/**
 * Created by jorgemachado on 07/11/16.
 */

public class QuestionariosReport implements 1.5.0/docs/api/java/io/Serializable.html">Serializable{




    /**
     * CARACTERIZACAO DA AMOSTRA
     */

    public int questionariosReqRespondidos;
    public int questionariosReqNaoRespondidos;
    public int questionariosReqTotal;

    public int questionariosReqRespondidosPercentagem;

    public int alunosTotal;
    public int alunosNaoResponderam;
    public int alunosComResposta;
    //Genero
    public int masculinoComResposta;
    public int femininoComResposta;

    public int masculinoComRespostaPercent;
    public int femininoComRespostaPercent;

    //Tipos de Alunos
    public int tipoAlunosNormalComResposta;
    public int tipoAlunosTrabalhadorEstudanteComResposta;
    public int tipoAlunosErasmusComResposta;
    public int tipoAlunosOutros;

    public int tipoAlunosNormalComRespostaPercent;
    public int tipoAlunosTrabalhadorEstudanteComRespostaPercent;
    public int tipoAlunosErasmusComRespostaPercent;
    public int tipoAlunosOutrosPercent;

    public int idade17_22;
    public int idade23_25;
    public int idade26_30;
    public int idadeM30;

    public int idade17_22Percent;
    public int idade23_25Percent;
    public int idade26_30Percent;
    public int idadeM30Percent;


    //GRAFICOS
    public 1.5.0/docs/api/java/lang/String.html">String pathGraficoTaxaRespostaAlunos;
    public 1.5.0/docs/api/java/lang/String.html">String pathGraficoTaxaRespostaQuestionarios;
    public 1.5.0/docs/api/java/lang/String.html">String pathGraficoTiposAlunosComResposta;

    //TABELAS
    public DataTable tabelaIdades;
    public DataTable tabelaDistritos;
    public DataTable tabelaTaxaRespostaUnidade;


    public RespostasAgregadasCharts respostasAgregadasCharts = new RespostasAgregadasCharts();
    public DataTable respostasTable;

    public RespostasAgregadasCharts respostasAgregadasChartsGt2Secs = new RespostasAgregadasCharts();
    public DataTable respostasTableGt2Secs;

    public RespostasAgregadasCharts respostasAgregadasUnidadesCharts = new RespostasAgregadasCharts();
    public DataTable respostasUnidadesTable;

    public int docentesNosCursos;
    public int docentesNasEscolas;

    public int unidadesNosCursos;
    public int unidadesNasEscolas;



    public int getUnidadesNosCursos() {
        return unidadesNosCursos;
    }

    public void setUnidadesNosCursos(int unidadesNosCursos) {
        this.unidadesNosCursos = unidadesNosCursos;
    }

    public int getUnidadesNasEscolas() {
        return unidadesNasEscolas;
    }

    public void setUnidadesNasEscolas(int unidadesNasEscolas) {
        this.unidadesNasEscolas = unidadesNasEscolas;
    }

    public RespostasAgregadasCharts getRespostasAgregadasUnidadesCharts() {
        return respostasAgregadasUnidadesCharts;
    }

    public void setRespostasAgregadasUnidadesCharts(RespostasAgregadasCharts respostasAgregadasUnidadesCharts) {
        this.respostasAgregadasUnidadesCharts = respostasAgregadasUnidadesCharts;
    }

    public DataTable getRespostasUnidadesTable() {
        return respostasUnidadesTable;
    }

    public void setRespostasUnidadesTable(DataTable respostasUnidadesTable) {
        this.respostasUnidadesTable = respostasUnidadesTable;
    }



    public int getDocentesNosCursos() {
        return docentesNosCursos;
    }

    public void setDocentesNosCursos(int docentesNosCursos) {
        this.docentesNosCursos = docentesNosCursos;
    }

    public int getDocentesNasEscolas() {
        return docentesNasEscolas;
    }

    public void setDocentesNasEscolas(int docentesNasEscolas) {
        this.docentesNasEscolas = docentesNasEscolas;
    }

    public DataTable getRespostasTable() {
        return respostasTable;
    }

    public void setRespostasTable(DataTable respostasTable) {
        this.respostasTable = respostasTable;
    }

    public RespostasAgregadasCharts getRespostasAgregadasCharts() {
        return respostasAgregadasCharts;
    }

    public void setRespostasAgregadasCharts(RespostasAgregadasCharts respostasAgregadasCharts) {
        this.respostasAgregadasCharts = respostasAgregadasCharts;
    }

    public RespostasAgregadasCharts getRespostasAgregadasChartsGt2Secs() {
        return respostasAgregadasChartsGt2Secs;
    }

    public void setRespostasAgregadasChartsGt2Secs(RespostasAgregadasCharts respostasAgregadasChartsGt2Secs) {
        this.respostasAgregadasChartsGt2Secs = respostasAgregadasChartsGt2Secs;
    }

    public DataTable getRespostasTableGt2Secs() {
        return respostasTableGt2Secs;
    }

    public void setRespostasTableGt2Secs(DataTable respostasTableGt2Secs) {
        this.respostasTableGt2Secs = respostasTableGt2Secs;
    }

    public DataTable getTabelaTaxaRespostaUnidade() {
        return tabelaTaxaRespostaUnidade;
    }

    public void setTabelaTaxaRespostaUnidade(DataTable tabelaTaxaRespostaUnidade) {
        this.tabelaTaxaRespostaUnidade = tabelaTaxaRespostaUnidade;
    }

    public DataTable getTabelaDistritos() {
        return tabelaDistritos;
    }

    public void setTabelaDistritos(DataTable tabelaDistritos) {
        this.tabelaDistritos = tabelaDistritos;
    }

    public DataTable getTabelaIdades() {
        return tabelaIdades;
    }

    public int getQuestionariosReqRespondidosPercentagem() {
        return questionariosReqRespondidosPercentagem;
    }

    public void setQuestionariosReqRespondidosPercentagem(int questionariosReqRespondidosPercentagem) {
        this.questionariosReqRespondidosPercentagem = questionariosReqRespondidosPercentagem;
    }

    public void setTabelaIdades(DataTable tabelaIdades) {
        this.tabelaIdades = tabelaIdades;
    }

    public int getIdade17_22Percent() {
        return idade17_22Percent;
    }

    public void setIdade17_22Percent(int idade17_22Percent) {
        this.idade17_22Percent = idade17_22Percent;
    }

    public int getIdade23_25Percent() {
        return idade23_25Percent;
    }

    public void setIdade23_25Percent(int idade23_25Percent) {
        this.idade23_25Percent = idade23_25Percent;
    }

    public int getIdade26_30Percent() {
        return idade26_30Percent;
    }

    public void setIdade26_30Percent(int idade26_30Percent) {
        this.idade26_30Percent = idade26_30Percent;
    }

    public int getIdadeM30Percent() {
        return idadeM30Percent;
    }

    public void setIdadeM30Percent(int idadeM30Percent) {
        this.idadeM30Percent = idadeM30Percent;
    }


    public int getAlunosTotal() {
        return alunosTotal;
    }

    public void setAlunosTotal(int alunosTotal) {
        this.alunosTotal = alunosTotal;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getPathGraficoTaxaRespostaAlunos() {
        return pathGraficoTaxaRespostaAlunos;
    }

    public void setPathGraficoTaxaRespostaAlunos(1.5.0/docs/api/java/lang/String.html">String pathGraficoTaxaRespostaAlunos) {
        this.pathGraficoTaxaRespostaAlunos = pathGraficoTaxaRespostaAlunos;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getPathGraficoTaxaRespostaQuestionarios() {
        return pathGraficoTaxaRespostaQuestionarios;
    }

    public void setPathGraficoTaxaRespostaQuestionarios(1.5.0/docs/api/java/lang/String.html">String pathGraficoTaxaRespostaQuestionarios) {
        this.pathGraficoTaxaRespostaQuestionarios = pathGraficoTaxaRespostaQuestionarios;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getPathGraficoTiposAlunosComResposta() {
        return pathGraficoTiposAlunosComResposta;
    }

    public void setPathGraficoTiposAlunosComResposta(1.5.0/docs/api/java/lang/String.html">String pathGraficoTiposAlunosComResposta) {
        this.pathGraficoTiposAlunosComResposta = pathGraficoTiposAlunosComResposta;
    }

    public int getQuestionariosReqRespondidos() {
        return questionariosReqRespondidos;
    }

    public void setQuestionariosReqRespondidos(int questionariosReqRespondidos) {
        this.questionariosReqRespondidos = questionariosReqRespondidos;
    }

    public int getQuestionariosReqNaoRespondidos() {
        return questionariosReqNaoRespondidos;
    }

    public void setQuestionariosReqNaoRespondidos(int questionariosReqNaoRespondidos) {
        this.questionariosReqNaoRespondidos = questionariosReqNaoRespondidos;
    }

    public int getQuestionariosReqTotal() {
        return questionariosReqTotal;
    }

    public void setQuestionariosReqTotal(int questionariosReqTotal) {
        this.questionariosReqTotal = questionariosReqTotal;
    }

    public int getAlunosComResposta() {
        return alunosComResposta;
    }

    public void setAlunosComResposta(int alunosComResposta) {
        this.alunosComResposta = alunosComResposta;
    }


    public int getAlunosNaoResponderam() {
        return alunosNaoResponderam;
    }

    public void setAlunosNaoResponderam(int alunosNaoResponderam) {
        this.alunosNaoResponderam = alunosNaoResponderam;
    }

    public int getMasculinoComResposta() {
        return masculinoComResposta;
    }

    public void setMasculinoComResposta(int masculinoComResposta) {
        this.masculinoComResposta = masculinoComResposta;
    }

    public int getFemininoComResposta() {
        return femininoComResposta;
    }

    public void setFemininoComResposta(int femininoComResposta) {
        this.femininoComResposta = femininoComResposta;
    }

    public int getMasculinoComRespostaPercent() {
        return masculinoComRespostaPercent;
    }

    public void setMasculinoComRespostaPercent(int masculinoComRespostaPercent) {
        this.masculinoComRespostaPercent = masculinoComRespostaPercent;
    }

    public int getFemininoComRespostaPercent() {
        return femininoComRespostaPercent;
    }

    public void setFemininoComRespostaPercent(int femininoComRespostaPercent) {
        this.femininoComRespostaPercent = femininoComRespostaPercent;
    }

    public int getTipoAlunosNormalComResposta() {
        return tipoAlunosNormalComResposta;
    }

    public void setTipoAlunosNormalComResposta(int tipoAlunosNormalComResposta) {
        this.tipoAlunosNormalComResposta = tipoAlunosNormalComResposta;
    }

    public int getTipoAlunosTrabalhadorEstudanteComResposta() {
        return tipoAlunosTrabalhadorEstudanteComResposta;
    }

    public void setTipoAlunosTrabalhadorEstudanteComResposta(int tipoAlunosTrabalhadorEstudanteComResposta) {
        this.tipoAlunosTrabalhadorEstudanteComResposta = tipoAlunosTrabalhadorEstudanteComResposta;
    }

    public int getTipoAlunosErasmusComResposta() {
        return tipoAlunosErasmusComResposta;
    }

    public void setTipoAlunosErasmusComResposta(int tipoAlunosErasmusComResposta) {
        this.tipoAlunosErasmusComResposta = tipoAlunosErasmusComResposta;
    }

    public int getTipoAlunosOutros() {
        return tipoAlunosOutros;
    }

    public void setTipoAlunosOutros(int tipoAlunosOutros) {
        this.tipoAlunosOutros = tipoAlunosOutros;
    }

    public int getTipoAlunosNormalComRespostaPercent() {
        return tipoAlunosNormalComRespostaPercent;
    }

    public void setTipoAlunosNormalComRespostaPercent(int tipoAlunosNormalComRespostaPercent) {
        this.tipoAlunosNormalComRespostaPercent = tipoAlunosNormalComRespostaPercent;
    }

    public int getTipoAlunosTrabalhadorEstudanteComRespostaPercent() {
        return tipoAlunosTrabalhadorEstudanteComRespostaPercent;
    }

    public void setTipoAlunosTrabalhadorEstudanteComRespostaPercent(int tipoAlunosTrabalhadorEstudanteComRespostaPercent) {
        this.tipoAlunosTrabalhadorEstudanteComRespostaPercent = tipoAlunosTrabalhadorEstudanteComRespostaPercent;
    }

    public int getTipoAlunosErasmusComRespostaPercent() {
        return tipoAlunosErasmusComRespostaPercent;
    }

    public void setTipoAlunosErasmusComRespostaPercent(int tipoAlunosErasmusComRespostaPercent) {
        this.tipoAlunosErasmusComRespostaPercent = tipoAlunosErasmusComRespostaPercent;
    }

    public int getTipoAlunosOutrosPercent() {
        return tipoAlunosOutrosPercent;
    }

    public void setTipoAlunosOutrosPercent(int tipoAlunosOutrosPercent) {
        this.tipoAlunosOutrosPercent = tipoAlunosOutrosPercent;
    }


    public int getIdade17_22() {
        return idade17_22;
    }

    public void setIdade17_22(int idade17_22) {
        this.idade17_22 = idade17_22;
    }

    public int getIdade23_25() {
        return idade23_25;
    }

    public void setIdade23_25(int idade23_25) {
        this.idade23_25 = idade23_25;
    }

    public int getIdade26_30() {
        return idade26_30;
    }

    public void setIdade26_30(int idade26_30) {
        this.idade26_30 = idade26_30;
    }

    public int getIdadeM30() {
        return idadeM30;
    }

    public void setIdadeM30(int idadeM30) {
        this.idadeM30 = idadeM30;
    }

    public 5+0%2Fdocs%2Fapi+Document">Document serialize() throws DocumentException, 1.5.0/docs/api/javax/xml/transform/TransformerException.html">TransformerException, 1.5.0/docs/api/java/io/IOException.html">IOException {
        1.5.0/docs/api/java/io/ByteArrayOutputStream.html">ByteArrayOutputStream out = new 1.5.0/docs/api/java/io/ByteArrayOutputStream.html">ByteArrayOutputStream();

        Serializer serializer = new Persister();
        try {
            serializer.write(this,out);
        } catch (1.5.0/docs/api/java/lang/Exception.html">Exception e) {
            e.printStackTrace();
        }


        //fos1 = new FileOutputStream("/Volumes/Home/jorgemachado/Desktop/docenteReport.xml");
        //java.beans.XMLEncoder xe1 = new java.beans.XMLEncoder(out);

//        xe1.writeObject(this);
  //      xe1.flush();
    //    xe1.close();
        //Dom4jUtil.writeSout(Dom4jUtil.parse(out.toString()));
        return Dom4jUtil.toW3c(Dom4jUtil.parse(out.toString()));

    }


    /********************************************
     * CACHE DE MEDIAS PARA OUTROS GRAFICOS
     * PRIVADO
     ********************************************/


    private HashMap<String,RespostasChart> numeroPerguntaRespostasChart = new HashMap<String, RespostasChart>();

    public RespostasChart getRespostasChart(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        return numeroPerguntaRespostasChart.get(numero);
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaCursos(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getMediaCursos();
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaEscolas(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getMediaEscolas();
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaEntidadeEmAvaliacao(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getMediaEntidadeEmAvaliacao();
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaCursosPercent(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getPercentMediaCursos();
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaEscolasPercent(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getPercentMediaEscolas();
    }

    public 1.5.0/docs/api/java/lang/String.html">String getRespostasChartMediaEntidadeEmAvaliacaoPercent(1.5.0/docs/api/java/lang/String.html">String numero)
    {
        RespostasChart r = numeroPerguntaRespostasChart.get(numero);
        return r == null ? "0" : r.getPercentMediaEntidadeEmAvaliacao();
    }

    public static int NUMBER_CHARTS_ROW = 3;

    public void addRespostasAgregadasChart(RespostasChart chart)
    {
        respostasAgregadasCharts.addChart(chart);
        numeroPerguntaRespostasChart.put(chart.getNumero(),chart);
    }

    public void addRespostasAgregadasChartGt2Secs(RespostasChart chart)
    {
        respostasAgregadasChartsGt2Secs.addChart(chart);
    }

    public void addRespostasAgregadasUnidadesChart(RespostasChart chart)
    {
        respostasAgregadasUnidadesCharts.addChart(chart);
    }


    /**********************************************
     * @Class: RespostasAgregadasCharts
     *
     * Graficos de Respostas Agregadas
     ********************************************/



    public static class RespostasAgregadasCharts implements 1.5.0/docs/api/java/io/Serializable.html">Serializable
    {
        List<RespostasChartsRow> respostasChartsRow = new ArrayList<RespostasChartsRow>();

        private void addChart(RespostasChart chart)
        {
            if(respostasChartsRow.size() == 0 || respostasChartsRow.get(respostasChartsRow.size() - 1).getRespostasChart().size() >= NUMBER_CHARTS_ROW)
            {
                respostasChartsRow.add(new RespostasChartsRow());
            }
            respostasChartsRow.get(respostasChartsRow.size() - 1).getRespostasChart().add(chart);
        }

        public List<RespostasChartsRow> getRespostasChartsRow() {
            return respostasChartsRow;
        }

        public void setRespostasChartsRow(List<RespostasChartsRow> respostasChartsRow) {
            this.respostasChartsRow = respostasChartsRow;
        }
    }

    public static class RespostasChartsRow implements 1.5.0/docs/api/java/io/Serializable.html">Serializable
    {
        List<RespostasChart> respostasChart = new ArrayList<RespostasChart>();

        public List<RespostasChart> getRespostasChart() {
            return respostasChart;
        }

        public void setRespostasChart(List<RespostasChart> respostasChart) {
            this.respostasChart = respostasChart;
        }
    }

    public static class RespostasChart implements 1.5.0/docs/api/java/io/Serializable.html">Serializable
    {
        1.5.0/docs/api/java/lang/String.html">String tempFile;
        1.5.0/docs/api/java/lang/String.html">String pergunta;
        1.5.0/docs/api/java/lang/String.html">String numero;

        1.5.0/docs/api/java/lang/String.html">String mediaEntidadeEmAvaliacao;
        1.5.0/docs/api/java/lang/String.html">String mediaCursos;
        1.5.0/docs/api/java/lang/String.html">String mediaEscolas;

        1.5.0/docs/api/java/lang/String.html">String percentMediaEntidadeEmAvaliacao;
        1.5.0/docs/api/java/lang/String.html">String percentMediaCursos;
        1.5.0/docs/api/java/lang/String.html">String percentMediaEscolas;

        public 1.5.0/docs/api/java/lang/String.html">String getTempFile() {
            return tempFile;
        }

        public void setTempFile(1.5.0/docs/api/java/lang/String.html">String tempFile) {
            this.tempFile = tempFile;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getPergunta() {
            return pergunta;
        }

        public void setPergunta(1.5.0/docs/api/java/lang/String.html">String pergunta) {
            this.pergunta = pergunta;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getMediaCursos() {
            return mediaCursos;
        }

        public void setMediaCursos(1.5.0/docs/api/java/lang/String.html">String mediaCursos) {
            this.mediaCursos = mediaCursos;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getMediaEscolas() {
            return mediaEscolas;
        }

        public void setMediaEscolas(1.5.0/docs/api/java/lang/String.html">String mediaEscolas) {
            this.mediaEscolas = mediaEscolas;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getPercentMediaCursos() {
            return percentMediaCursos;
        }

        public void setPercentMediaCursos(1.5.0/docs/api/java/lang/String.html">String percentMediaCursos) {
            this.percentMediaCursos = percentMediaCursos;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getPercentMediaEscolas() {
            return percentMediaEscolas;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getMediaEntidadeEmAvaliacao() {
            return mediaEntidadeEmAvaliacao;
        }

        public void setMediaEntidadeEmAvaliacao(1.5.0/docs/api/java/lang/String.html">String mediaEntidadeEmAvaliacao) {
            this.mediaEntidadeEmAvaliacao = mediaEntidadeEmAvaliacao;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getPercentMediaEntidadeEmAvaliacao() {
            return percentMediaEntidadeEmAvaliacao;
        }

        public void setPercentMediaEntidadeEmAvaliacao(1.5.0/docs/api/java/lang/String.html">String percentMediaEntidadeEmAvaliacao) {
            this.percentMediaEntidadeEmAvaliacao = percentMediaEntidadeEmAvaliacao;
        }

        public void setPercentMediaEscolas(1.5.0/docs/api/java/lang/String.html">String percentMediaEscolas) {
            this.percentMediaEscolas = percentMediaEscolas;
        }

        public 1.5.0/docs/api/java/lang/String.html">String getNumero() {
            return numero;
        }

        public void setNumero(1.5.0/docs/api/java/lang/String.html">String numero) {
            this.numero = numero;
        }
    }




}