/* * Copyright (C) 2007-2007 the GSAN - Sistema Integrado de Gestão de Serviços de Saneamento * * This file is part of GSAN, an integrated service management system for Sanitation * * GSAN is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License. * * GSAN is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ /* * GSAN - Sistema Integrado de Gestão de Serviços de Saneamento * Copyright (C) <2007> * Adriano Britto Siqueira * Alexandre Santos Cabral * Ana Carolina Alves Breda * Ana Maria Andrade Cavalcante * Aryed Lins de Araújo * Bruno Leonardo Rodrigues Barros * Carlos Elmano Rodrigues Ferreira * Cláudio de Andrade Lira * Denys Guimarães Guenes Tavares * Eduardo Breckenfeld da Rosa Borges * Fabíola Gomes de Araújo * Flávio Leonardo Cavalcanti Cordeiro * Francisco do Nascimento Júnior * Homero Sampaio Cavalcanti * Ivan Sérgio da Silva Júnior * José Edmar de Siqueira * José Thiago Tenório Lopes * Kássia Regina Silvestre de Albuquerque * Leonardo Luiz Vieira da Silva * Márcio Roberto Batista da Silva * Maria de Fátima Sampaio Leite * Micaela Maria Coelho de Araújo * Nelson Mendonça de Carvalho * Newton Morais e Silva * Pedro Alexandre Santos da Silva Filho * Rafael Corrêa Lima e Silva * Rafael Francisco Pinto * Rafael Koury Monteiro * Rafael Palermo de Araújo * Raphael Veras Rossiter * Roberto Sobreira Barbalho * Rodrigo Avellar Silveira * Rosana Carvalho Barbosa * Sávio Luiz de Andrade Cavalcante * Tai Mu Shih * Thiago Augusto Souza do Nascimento * Tiago Moreno Rodrigues * Vivianne Barbosa Sousa * * Este programa é software livre; você pode redistribuí-lo e/ou * modificá-lo sob os termos de Licença Pública Geral GNU, conforme * publicada pela Free Software Foundation; versão 2 da * Licença. * Este programa é distribuído na expectativa de ser útil, mas SEM * QUALQUER GARANTIA; sem mesmo a garantia implícita de * COMERCIALIZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM * PARTICULAR. Consulte a Licença Pública Geral GNU para obter mais * detalhes. * Você deve ter recebido uma cópia da Licença Pública Geral GNU * junto com este programa; se não, escreva para Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * 02111-1307, USA. */ package gcom.micromedicao; import gcom.cadastro.cliente.Cliente; import gcom.cadastro.cliente.FiltroClienteTipo; import gcom.cadastro.empresa.Empresa; import gcom.cadastro.funcionario.Funcionario; import gcom.cadastro.unidade.UnidadeOrganizacional; import gcom.interceptor.ObjetoTransacao; import gcom.seguranca.acesso.usuario.Usuario; import gcom.util.filtro.Filtro; import gcom.util.filtro.ParametroSimples; import java.util.Date; import java.util.Set; import org.apache.commons.lang.builder.ToStringBuilder; /** @author Hibernate CodeGenerator */ public class Leiturista extends ObjetoTransacao implements Comparable{ /** * */ private static final long serialVersionUID = 1L; /** identifier field */ private Integer id; /** nullable persistent field */ private String codigoDDD; /** nullable persistent field */ private String numeroFone; /** nullable persistent field */ private Short indicadorUso; /** persistent field */ private Date ultimaAlteracao; /** persistent field */ private Cliente cliente; /** persistent field */ private Funcionario funcionario; /** persistent field */ private Set roteiroEmpresas; /** persistent field */ private Empresa empresa; /** persistent field */ private Long numeroImei; /** persistent field */ private Usuario usuario; private Short indicadorAgenteComercial; private UnidadeOrganizacional unidadeOrganizacional; private Short indicadorAtualizacaoCadastral; /** full constructor */ public Leiturista(Integer id, String codigoDDD, String numeroFone, Short indicadorUso, Date ultimaAlteracao, Cliente cliente, Funcionario funcionario, Set roteiroEmpresas, Usuario usuario, Short indicadorAgenteComercial) { this.id = id; this.codigoDDD = codigoDDD; this.numeroFone = numeroFone; this.indicadorUso = indicadorUso; this.ultimaAlteracao = ultimaAlteracao; this.cliente = cliente; this.funcionario = funcionario; this.roteiroEmpresas = roteiroEmpresas; this.usuario = usuario; this.indicadorAgenteComercial = indicadorAgenteComercial; } /** default constructor */ public Leiturista() { } /** minimal constructor */ public Leiturista(Integer id, Date ultimaAlteracao, Cliente cliente, Funcionario funcionario, Set roteiroEmpresas, Usuario usuario, Short indicadorAgenteComercial) { this.id = id; this.ultimaAlteracao = ultimaAlteracao; this.cliente = cliente; this.funcionario = funcionario; this.roteiroEmpresas = roteiroEmpresas; this.usuario = usuario; this.indicadorAgenteComercial = indicadorAgenteComercial; } public Leiturista(Integer id) { this.id = id; } public Integer getId() { return this.id; } public void setId(Integer id) { this.id = id; } public String getNumeroFone() { return this.numeroFone; } public void setNumeroFone(String numeroFone) { this.numeroFone = numeroFone; } public Short getIndicadorUso() { return this.indicadorUso; } public void setIndicadorUso(Short indicadorUso) { this.indicadorUso = indicadorUso; } public Date getUltimaAlteracao() { return this.ultimaAlteracao; } public void setUltimaAlteracao(Date ultimaAlteracao) { this.ultimaAlteracao = ultimaAlteracao; } public Cliente getCliente() { return this.cliente; } public void setCliente(Cliente cliente) { this.cliente = cliente; } public Funcionario getFuncionario() { return this.funcionario; } public void setFuncionario(Funcionario funcionario) { this.funcionario = funcionario; } public Set getRoteiroEmpresas() { return this.roteiroEmpresas; } public void setRoteiroEmpresas(Set roteiroEmpresas) { this.roteiroEmpresas = roteiroEmpresas; } public String toString() { return new ToStringBuilder(this) .append("id", getId()) .toString(); } public Empresa getEmpresa() { return empresa; } public void setEmpresa(Empresa empresa) { this.empresa = empresa; } public String getCodigoDDD() { return codigoDDD; } public void setCodigoDDD(String codigoDDD) { this.codigoDDD = codigoDDD; } /** * < > * * @return Descrição do retorno */ public String[] retornaCamposChavePrimaria() { String[] retorno = {"id"}; return retorno; } public Filtro retornaFiltro(){ FiltroClienteTipo filtroClienteTipo = new FiltroClienteTipo(); filtroClienteTipo.adicionarParametro(new ParametroSimples(FiltroClienteTipo.ID,this.getId())); filtroClienteTipo.adicionarCaminhoParaCarregamentoEntidade("esferaPoder"); return filtroClienteTipo; } public Long getNumeroImei() { return numeroImei; } public void setNumeroImei(Long numeroImei) { this.numeroImei = numeroImei; } public Usuario getUsuario() { return usuario; } public void setUsuario(Usuario usuario) { this.usuario = usuario; } public Short getIndicadorAgenteComercial() { return indicadorAgenteComercial; } public void setIndicadorAgenteComercial(Short indicadorAgenteComercial) { this.indicadorAgenteComercial = indicadorAgenteComercial; } public UnidadeOrganizacional getUnidadeOrganizacional() { return unidadeOrganizacional; } public void setUnidadeOrganizacional(UnidadeOrganizacional unidadeOrganizacional) { this.unidadeOrganizacional = unidadeOrganizacional; } public Short getIndicadorAtualizacaoCadastral() { return indicadorAtualizacaoCadastral; } public void setIndicadorAtualizacaoCadastral(Short indicadorAtualizacaoCadastral) { this.indicadorAtualizacaoCadastral = indicadorAtualizacaoCadastral; } public int compareTo(Leiturista o) { String nomeLocal =""; if ( this.getCliente() != null ) nomeLocal = this.getCliente().getNome(); else nomeLocal = this.getFuncionario().getNome(); String nomeObjeto =""; if ( o.getCliente() != null ) nomeObjeto = o.getCliente().getNome(); else nomeObjeto = o.getFuncionario().getNome(); return nomeLocal.compareTo( nomeObjeto ); } }