package gcom.relatorio.atendimentopublico.ordemservico;
import gcom.atendimentopublico.ordemservico.bean.OSTipoPavimentoHelper;
import gcom.relatorio.RelatorioBean;
import gcom.util.Util;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
/**
* <p>
*
* Title: GCOM
* </p>
* <p>
*
* Description: Sistema de Gest�o Comercial
* </p>
* <p>
*
* Copyright: Copyright (c) 2004
* </p>
* <p>
*
* Company: COMPESA - Companhia Pernambucana de Saneamento
* </p>
*
* @author Yara Taciane
* @created 28 de fevereiro de 2008
* @version 1.0
*/
public class RelatorioRelacaoServicosAcompanhamentoRepavimentacaoBean implements RelatorioBean {
private JRBeanCollectionDataSource arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao;
private ArrayList arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean;
private String numeroOS;
private String matricula;
private String endereco;
private String dataEncerramento;
private String tipoPvtoRua;
private BigDecimal metragem;
private String dataConclusao;
private String tipoPvtoRuaRetorno;
private BigDecimal metragemRetorno;
private String dataAceite;
private String dataRetorno;
private String indicadorAceite;
private String indicadorAceiteComPercentualConvergencia;
private String motivo;
private String dataRejeicao;
private String situacaoRetorno;
private String motivoRejeicao;
private Boolean indicadorPrimeiraOcorrenciaConcluida;
private Boolean indicadorPrimeiraOcorrenciaPendente;
private Boolean indicadorPrimeiraOcorrenciaRejeitada;
private Boolean indicadorUltimaOcorrenciaRejeitada;
private String observacao;
private JRBeanCollectionDataSource arrayJRSubValoresPorTipoPavimento;
public RelatorioRelacaoServicosAcompanhamentoRepavimentacaoBean(
String numeroOS, String matricula, String endereco, String dataEncerramento,
String tipoPvtoRua, BigDecimal metragem, String dataConclusao, String tipoPvtoRuaRetorno,
BigDecimal metragemRetorno, Collection colecaoTipoPavimentoRua,Collection colecaoTipoPavimentoRuaRet) {
super();
this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean = new ArrayList();
this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean.addAll(
this.gerarSubRelatorio(colecaoTipoPavimentoRua,colecaoTipoPavimentoRuaRet));
this.arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao =
new JRBeanCollectionDataSource(this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean);
this.numeroOS = numeroOS;
this.matricula = matricula;
this.endereco = endereco;
this.dataEncerramento = dataEncerramento;
this.tipoPvtoRua = tipoPvtoRua;
this.metragem = metragem;
this.dataConclusao = dataConclusao;
this.tipoPvtoRuaRetorno = tipoPvtoRuaRetorno;
this.metragemRetorno = metragemRetorno;
}
public RelatorioRelacaoServicosAcompanhamentoRepavimentacaoBean(
String numeroOS, String matricula, String endereco, String dataEncerramento,
String tipoPvtoRua, BigDecimal metragem, String dataConclusao, String tipoPvtoRuaRetorno,
BigDecimal metragemRetorno, Collection colecaoTipoPavimentoRua,Collection colecaoTipoPavimentoRuaRet,
String motivo) {
super();
this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean = new ArrayList();
this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean.addAll(
this.gerarSubRelatorio(colecaoTipoPavimentoRua,colecaoTipoPavimentoRuaRet));
this.arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao =
new JRBeanCollectionDataSource(this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean);
this.numeroOS = numeroOS;
this.matricula = matricula;
this.endereco = endereco;
this.dataEncerramento = dataEncerramento;
this.tipoPvtoRua = tipoPvtoRua;
this.metragem = metragem;
this.dataConclusao = dataConclusao;
this.tipoPvtoRuaRetorno = tipoPvtoRuaRetorno;
this.metragemRetorno = metragemRetorno;
this.motivo = motivo;
}
private Collection gerarSubRelatorio(Collection colecaoTipoPavimentoRua,Collection colecaoTipoPavimentoRuaRet){
//Metodo que ordena a colecao somando todos os valores por tipo de pavimento.
Collection colecaoSubRelatorio = new ArrayList();
if(colecaoTipoPavimentoRua != null && !colecaoTipoPavimentoRua.isEmpty()){
String tipoPavimento = "INDICADO";
Iterator iterator = colecaoTipoPavimentoRua.iterator();
boolean primeiraVez = true;
while (iterator.hasNext()) {
if(!primeiraVez){
tipoPavimento = "";
}
String descricao = "";
String valor = "";
OSTipoPavimentoHelper oSTipoPavimentoHelper1 = (OSTipoPavimentoHelper) iterator.next();
descricao = oSTipoPavimentoHelper1.getDescricao();
valor= Util.formatarMoedaReal(oSTipoPavimentoHelper1.getSomatorioArea());
//
Object relatorio = null;
relatorio = new RelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean(
tipoPavimento,
descricao,
valor);
colecaoSubRelatorio.add(relatorio);
primeiraVez= false;
}
}
if(colecaoTipoPavimentoRuaRet != null && !colecaoTipoPavimentoRuaRet.isEmpty()){
String tipoPavimento = "RETORNO";
Iterator iteratorRet = colecaoTipoPavimentoRuaRet.iterator();
boolean primeiraVez = true;
while (iteratorRet.hasNext()) {
if(!primeiraVez){
tipoPavimento = "";
}
String descricao = "";
String valor = "";
OSTipoPavimentoHelper oSTipoPavimentoHelper1 = (OSTipoPavimentoHelper) iteratorRet.next();
descricao = oSTipoPavimentoHelper1.getDescricao();
valor = Util.formatarMoedaReal(oSTipoPavimentoHelper1.getSomatorioArea());
Object relatorio = null;
relatorio = new RelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean(
tipoPavimento,
descricao,
valor);
colecaoSubRelatorio.add(relatorio);
primeiraVez= false;
}
}
return colecaoSubRelatorio;
}
/**
* @return Retorna o campo dataConclusao.
*/
public String getDataConclusao() {
return dataConclusao;
}
/**
* @param dataConclusao O dataConclusao a ser setado.
*/
public void setDataConclusao(String dataConclusao) {
this.dataConclusao = dataConclusao;
}
/**
* @return Retorna o campo dataEncerramento.
*/
public String getDataEncerramento() {
return dataEncerramento;
}
/**
* @param dataEncerramento O dataEncerramento a ser setado.
*/
public void setDataEncerramento(String dataEncerramento) {
this.dataEncerramento = dataEncerramento;
}
/**
* @return Retorna o campo endereco.
*/
public String getEndereco() {
return endereco;
}
/**
* @param endereco O endereco a ser setado.
*/
public void setEndereco(String endereco) {
this.endereco = endereco;
}
/**
* @return Retorna o campo matricula.
*/
public String getMatricula() {
return matricula;
}
/**
* @param matricula O matricula a ser setado.
*/
public void setMatricula(String matricula) {
this.matricula = matricula;
}
/**
* @return Retorna o campo metragem.
*/
public BigDecimal getMetragem() {
return metragem;
}
/**
* @param metragem O metragem a ser setado.
*/
public void setMetragem(BigDecimal metragem) {
this.metragem = metragem;
}
/**
* @return Retorna o campo metragemRetorno.
*/
public BigDecimal getMetragemRetorno() {
return metragemRetorno;
}
/**
* @param metragemRetorno O metragemRetorno a ser setado.
*/
public void setMetragemRetorno(BigDecimal metragemRetorno) {
this.metragemRetorno = metragemRetorno;
}
/**
* @return Retorna o campo numeroOS.
*/
public String getNumeroOS() {
return numeroOS;
}
/**
* @param numeroOS O numeroOS a ser setado.
*/
public void setNumeroOS(String numeroOS) {
this.numeroOS = numeroOS;
}
/**
* @return Retorna o campo tipoPvtoRua.
*/
public String getTipoPvtoRua() {
return tipoPvtoRua;
}
/**
* @param tipoPvtoRua O tipoPvtoRua a ser setado.
*/
public void setTipoPvtoRua(String tipoPvtoRua) {
this.tipoPvtoRua = tipoPvtoRua;
}
/**
* @return Retorna o campo tipoPvtoRuaRetorno.
*/
public String getTipoPvtoRuaRetorno() {
return tipoPvtoRuaRetorno;
}
/**
* @param tipoPvtoRuaRetorno O tipoPvtoRuaRetorno a ser setado.
*/
public void setTipoPvtoRuaRetorno(String tipoPvtoRuaRetorno) {
this.tipoPvtoRuaRetorno = tipoPvtoRuaRetorno;
}
/**
* @return Retorna o campo arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao.
*/
public JRBeanCollectionDataSource getArrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao() {
return arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao;
}
/**
* @param arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao O arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao a ser setado.
*/
public void setArrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao(
JRBeanCollectionDataSource arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao) {
this.arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao = arrayJRSubRelatorioRelacaoServicosAcompanhamentoRepavimentacao;
}
/**
* @return Retorna o campo arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean.
*/
public ArrayList getArrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean() {
return arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean;
}
/**
* @param arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean O arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean a ser setado.
*/
public void setArrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean(
ArrayList arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean) {
this.arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean = arrayRelatorioRelacaoServicosAcompanhamentoRepavimentacaoSubBean;
}
public String getDataAceite() {
return dataAceite;
}
public void setDataAceite(String dataAceite) {
this.dataAceite = dataAceite;
}
public String getDataRetorno() {
return dataRetorno;
}
public void setDataRetorno(String dataRetorno) {
this.dataRetorno = dataRetorno;
}
public String getIndicadorAceite() {
return indicadorAceite;
}
public void setIndicadorAceite(String indicadorAceite) {
this.indicadorAceite = indicadorAceite;
}
/**
* @return Returns the indicadorAceiteComPercentualConvergencia.
*/
public String getIndicadorAceiteComPercentualConvergencia() {
return indicadorAceiteComPercentualConvergencia;
}
/**
* @param indicadorAceiteComPercentualConvergencia The indicadorAceiteComPercentualConvergencia to set.
*/
public void setIndicadorAceiteComPercentualConvergencia(
String indicadorAceiteComPercentualConvergencia) {
this.indicadorAceiteComPercentualConvergencia = indicadorAceiteComPercentualConvergencia;
}
/**
* @return Returns the motivo.
*/
public String getMotivo() {
return motivo;
}
/**
* @param motivo The motivo to set.
*/
public void setMotivo(String motivo) {
this.motivo = motivo;
}
public JRBeanCollectionDataSource getArrayJRSubValoresPorTipoPavimento() {
return arrayJRSubValoresPorTipoPavimento;
}
public void setArrayJRSubValoresPorTipoPavimento(
JRBeanCollectionDataSource arrayJRSubValoresPorTipoPavimento) {
this.arrayJRSubValoresPorTipoPavimento = arrayJRSubValoresPorTipoPavimento;
}
public String getDataRejeicao() {
return dataRejeicao;
}
public void setDataRejeicao(String dataRejeicao) {
this.dataRejeicao = dataRejeicao;
}
public String getSituacaoRetorno() {
return situacaoRetorno;
}
public void setSituacaoRetorno(String situacaoRetorno) {
this.situacaoRetorno = situacaoRetorno;
}
public Boolean getIndicadorPrimeiraOcorrenciaConcluida() {
return indicadorPrimeiraOcorrenciaConcluida;
}
public void setIndicadorPrimeiraOcorrenciaConcluida(
Boolean indicadorPrimeiraOcorrenciaConcluida) {
this.indicadorPrimeiraOcorrenciaConcluida = indicadorPrimeiraOcorrenciaConcluida;
}
public Boolean getIndicadorPrimeiraOcorrenciaPendente() {
return indicadorPrimeiraOcorrenciaPendente;
}
public void setIndicadorPrimeiraOcorrenciaPendente(
Boolean indicadorPrimeiraOcorrenciaPendente) {
this.indicadorPrimeiraOcorrenciaPendente = indicadorPrimeiraOcorrenciaPendente;
}
public Boolean getIndicadorPrimeiraOcorrenciaRejeitada() {
return indicadorPrimeiraOcorrenciaRejeitada;
}
public void setIndicadorPrimeiraOcorrenciaRejeitada(
Boolean indicadorPrimeiraOcorrenciaRejeitada) {
this.indicadorPrimeiraOcorrenciaRejeitada = indicadorPrimeiraOcorrenciaRejeitada;
}
public String getMotivoRejeicao() {
return motivoRejeicao;
}
public void setMotivoRejeicao(String motivoRejeicao) {
this.motivoRejeicao = motivoRejeicao;
}
public Boolean getIndicadorUltimaOcorrenciaRejeitada() {
return indicadorUltimaOcorrenciaRejeitada;
}
public void setIndicadorUltimaOcorrenciaRejeitada(
Boolean indicadorUltimaOcorrenciaRejeitada) {
this.indicadorUltimaOcorrenciaRejeitada = indicadorUltimaOcorrenciaRejeitada;
}
public String getObservacao() {
return observacao;
}
public void setObservacao(String observacao) {
this.observacao = observacao;
}
}