Subversion Repositories bacoAlunos

Compare Revisions

Ignore whitespace Rev 1563 → Rev 1564

/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/QuestionariosReport.java
File deleted
/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/utils/ChartBuilderUtil.java
21,7 → 21,7
import org.jfree.ui.HorizontalAlignment;
import org.jfree.ui.TextAnchor;
import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.services.questionarios.QuestionariosReport;
import pt.estgp.estgweb.services.questionarios.pedagogico.QuestionariosReport;
import pt.estgp.estgweb.services.questionarios.pedagogico.DocenteReport;
import pt.estgp.estgweb.services.questionarios.pedagogico.QuestionariosAlunosReport;
 
563,6 → 563,18
return 100.0 * ((double)((double)parcela/(double)total));
}
 
public static double getPercentagem(double parcela, int total)
{
if(total == 0)
return 0;
return 100.0 * ((double)(parcela/(double)total));
}
 
public static String getPercentagemPrint2Slots(double parcela, int total)
{
double percent = getPercentagem(parcela,total);
return df2.format(percent);
}
public static String getPercentagemPrint2Slots(int parcela, int total)
{
double percent = getPercentagem(parcela,total);
/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/pedagogico/QuestionariosReport.java
New file
0,0 → 1,346
package pt.estgp.estgweb.services.questionarios.pedagogico;
 
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.queries.PerguntasGrupoQueryDao;
import pt.estgp.estgweb.services.questionarios.utils.ChartBuilderUtil;
import pt.estgp.estgweb.services.questionarios.utils.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.HashMap;
 
/**
* Created by jorgemachado on 07/11/16.
*/
public class QuestionariosReport implements Serializable
{
 
public String color1Hex = ChartBuilderUtil.COLOR_1_HEX;
public String color2Hex = ChartBuilderUtil.COLOR_2_HEX;
public String color3Hex = ChartBuilderUtil.COLOR_3_HEX;
public String color4Hex = ChartBuilderUtil.COLOR_4_HEX;
public String color5Hex = ChartBuilderUtil.COLOR_5_HEX;
 
 
/**
* CARACTERIZACAO DA AMOSTRA
*/
public int questionariosReqRespondidos;
public int questionariosReqNaoRespondidos;
public int questionariosReqTotal;
 
public int questionariosReqRespondidosPercentagem;
 
public int inquiridosTotal;
public int inquiridosNaoResponderam;
public int inquiridosComResposta;
 
 
//Genero
public int masculinoComResposta;
public int femininoComResposta;
 
public int masculinoComRespostaPercent;
public int femininoComRespostaPercent;
 
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 String pathGraficoTaxaRespostaQuestionarios;
 
 
//TABELAS
public DataTable tabelaIdades;
public DataTable tabelaDistritos;
 
 
//MEDIAS GLOBAIS
//Preenchidas no UnidadeQueryDao
HashMap<String,PerguntasGrupoQueryDao.MediaGlobalCursoPergunta> mediasCursoPergunta = new HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoPergunta>();
HashMap<String,PerguntasGrupoQueryDao.MediaGlobalEscolaPergunta> mediasEscolaPergunta = new HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaPergunta>();
HashMap<String,PerguntasGrupoQueryDao.MediaGlobalCursoGrupo> mediasCursoGrupo = new HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoGrupo>();
HashMap<String,PerguntasGrupoQueryDao.MediaGlobalEscolaGrupo> mediasEscolaGrupo = new HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaGrupo>();
 
public HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoPergunta> getMediasCursoPergunta() {
return mediasCursoPergunta;
}
 
public void setMediasCursoPergunta(HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoPergunta> mediasCursoPergunta) {
this.mediasCursoPergunta = mediasCursoPergunta;
}
 
public HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaPergunta> getMediasEscolaPergunta() {
return mediasEscolaPergunta;
}
 
public void setMediasEscolaPergunta(HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaPergunta> mediasEscolaPergunta) {
this.mediasEscolaPergunta = mediasEscolaPergunta;
}
 
public HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoGrupo> getMediasCursoGrupo() {
return mediasCursoGrupo;
}
 
public void setMediasCursoGrupo(HashMap<String, PerguntasGrupoQueryDao.MediaGlobalCursoGrupo> mediasCursoGrupo) {
this.mediasCursoGrupo = mediasCursoGrupo;
}
 
public HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaGrupo> getMediasEscolaGrupo() {
return mediasEscolaGrupo;
}
 
public void setMediasEscolaGrupo(HashMap<String, PerguntasGrupoQueryDao.MediaGlobalEscolaGrupo> mediasEscolaGrupo) {
this.mediasEscolaGrupo = mediasEscolaGrupo;
}
 
public String getColor1Hex() {
return color1Hex;
}
 
public void setColor1Hex(String color1Hex) {
this.color1Hex = color1Hex;
}
 
public String getColor2Hex() {
return color2Hex;
}
 
public void setColor2Hex(String color2Hex) {
this.color2Hex = color2Hex;
}
 
public String getColor3Hex() {
return color3Hex;
}
 
public void setColor3Hex(String color3Hex) {
this.color3Hex = color3Hex;
}
 
public String getColor4Hex() {
return color4Hex;
}
 
public void setColor4Hex(String color4Hex) {
this.color4Hex = color4Hex;
}
 
public String getColor5Hex() {
return color5Hex;
}
 
public void setColor5Hex(String color5Hex) {
this.color5Hex = color5Hex;
}
 
public int getInquiridosTotal() {
return inquiridosTotal;
}
 
public void setInquiridosTotal(int inquiridosTotal) {
this.inquiridosTotal = inquiridosTotal;
}
 
public int getInquiridosNaoResponderam() {
return inquiridosNaoResponderam;
}
 
public void setInquiridosNaoResponderam(int inquiridosNaoResponderam) {
this.inquiridosNaoResponderam = inquiridosNaoResponderam;
}
 
public int getInquiridosComResposta() {
return inquiridosComResposta;
}
 
public void setInquiridosComResposta(int inquiridosComResposta) {
this.inquiridosComResposta = inquiridosComResposta;
}
 
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 String getPathGraficoTaxaRespostaQuestionarios() {
return pathGraficoTaxaRespostaQuestionarios;
}
 
public void setPathGraficoTaxaRespostaQuestionarios(String pathGraficoTaxaRespostaQuestionarios) {
this.pathGraficoTaxaRespostaQuestionarios = pathGraficoTaxaRespostaQuestionarios;
}
 
 
 
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 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 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 Document serialize() throws DocumentException, TransformerException, IOException
{
ByteArrayOutputStream out = new ByteArrayOutputStream();
Serializer serializer = new Persister();
try {
serializer.write(this,out);
} catch (Exception e) {
e.printStackTrace();
}
return Dom4jUtil.toW3c(Dom4jUtil.parse(out.toString()));
}
 
}
/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/pedagogico/docenteReport.fo.xsl
935,14 → 935,14
 
<fo:block-container padding="0" margin-left="15px" margin="0" margin-bottom="5px">
<fo:block text-align="center" margin="0" font-size="10" font-weight="normal" >
<xsl:apply-templates select="docenteGroup/respostasTable" mode="DataTable">
<xsl:apply-templates select="unidadeStatsGrupoDocente/respostasTable" mode="DataTable">
<xsl:with-param name="firstColPercentSize">40%</xsl:with-param>
<xsl:with-param name="backgroundHeader" select="$BLUE_COLOR_SUB_SECTION"/>
</xsl:apply-templates>
</fo:block>
 
<fo:block padding="0" margin="0" margin-top="5px">
<xsl:apply-templates select="docenteGroup/mediasGrupo" mode="mediasGrupo">
<xsl:apply-templates select="unidadeStatsGrupoDocente/mediasGrupo" mode="mediasGrupo">
<xsl:with-param name="objetoAvaliacao">do docente</xsl:with-param>
<xsl:with-param name="backgroundHeader" select="$BLUE_COLOR_SUB_SECTION"/>
<xsl:with-param name="smileHeight">15</xsl:with-param>
961,14 → 961,14
 
<fo:block-container padding="0" margin-left="15px" margin="0" margin-bottom="5px">
<fo:block text-align="center" margin="0" font-size="10" font-weight="normal" >
<xsl:apply-templates select="unidadeGroup/respostasTable" mode="DataTable">
<xsl:apply-templates select="unidadeStatsGrupoUnidade/respostasTable" mode="DataTable">
<xsl:with-param name="firstColPercentSize">40%</xsl:with-param>
<xsl:with-param name="backgroundHeader" select="$GREEN_COLOR_SUB_SECTION"/>
</xsl:apply-templates>
</fo:block>
 
<fo:block padding="0" margin="0" margin-top="5px">
<xsl:apply-templates select="unidadeGroup/mediasGrupo" mode="mediasGrupo">
<xsl:apply-templates select="unidadeStatsGrupoUnidade/mediasGrupo" mode="mediasGrupo">
<xsl:with-param name="objetoAvaliacao">do docente</xsl:with-param>
<xsl:with-param name="backgroundHeader" select="$GREEN_COLOR_SUB_SECTION"/>
<xsl:with-param name="smileHeight">15</xsl:with-param>
/branches/v3/impl/src/java/pt/estgp/estgweb/services/questionarios/pedagogico/DocenteReport.java
1,5 → 1,7
package pt.estgp.estgweb.services.questionarios.pedagogico;
 
import pt.estgp.estgweb.services.questionarios.pedagogico.queries.PerguntasGrupoQueryDao;
import pt.estgp.estgweb.services.questionarios.utils.MediasGrupo;
import pt.estgp.estgweb.services.questionarios.utils.PerguntaStats;
import pt.estgp.estgweb.services.questionarios.utils.RespostasAgregadasGrupo;
import pt.estgp.estgweb.services.questionarios.utils.UnidadeStats;
20,10 → 22,11
ArrayList<String> semestres;
ArrayList<String> degrees;
 
public RespostasAgregadasGrupo respostasAgregadasGrupoDocente = new RespostasAgregadasGrupo();
public RespostasAgregadasGrupo respostasAgregadasGrupoUnidade = new RespostasAgregadasGrupo();
//Respostas Agregadas com medias de Grupo
public RespostasAgregadasGrupo respostasAgregadasGrupoDocente = new RespostasAgregadasGrupo(PerguntasGrupoQueryDao.GRUPO_DOCENTE_CODE_PERGUNTAS);
public RespostasAgregadasGrupo respostasAgregadasGrupoUnidade = new RespostasAgregadasGrupo(PerguntasGrupoQueryDao.GRUPO_UNIDADE_CODE_PERGUNTAS);
 
 
//Respostas por unidade com medias de Grupo
public ArrayList<UnidadeStats> unidadesStats = new ArrayList<UnidadeStats>();
 
 
34,7 → 37,45
public int unidadesNosCursos;
public int unidadesNasEscolas;
 
public MediasGrupo findMediasGrupoDocenteRespostasAgregadas()
{
return respostasAgregadasGrupoDocente.getMediasGrupo();
}
 
public MediasGrupo findMediasGrupoUnidadeRespostasAgregadas()
{
return respostasAgregadasGrupoUnidade.getMediasGrupo();
}
 
public MediasGrupo findMediasGrupoDocenteNaUnidade(String codigoUnidade, String codigoCurso, String semestre)
{
for(UnidadeStats unidadeStats :unidadesStats)
{
if( unidadeStats.getCodigoUnidade().equals(codigoUnidade) &&
unidadeStats.getCodigoCurso().equals(codigoCurso) &&
unidadeStats.getSemestre().equals(semestre))
{
return unidadeStats.getUnidadeStatsGrupoDocente().getMediasGrupo();
}
}
return null;
}
 
public MediasGrupo findMediasGrupoUnidadeNaUnidade(String codigoUnidade, String codigoCurso, String semestre)
{
for(UnidadeStats unidadeStats :unidadesStats)
{
if( unidadeStats.getCodigoUnidade().equals(codigoUnidade) &&
unidadeStats.getCodigoCurso().equals(codigoCurso) &&
unidadeStats.getSemestre().equals(semestre))
{
return unidadeStats.getUnidadeStatsGrupoUnidade().getMediasGrupo();
}
}
return null;
}
 
 
public RespostasAgregadasGrupo getRespostasAgregadasGrupoDocente() {
return respostasAgregadasGrupoDocente;
}