public function __construct($o = NULL)
 {
     parent::__construct($o);
     if (isset($o->subst_tributaria)) {
         // Adiciona atributos definidos por outros modelos
         $o->descr_subst_tributaria = Contribuinte_Model_SubstitutoTributario::getById($o->subst_tributaria);
         $o->descr_exibilidade = Contribuinte_Model_Exigeiss::getById($o->exigibilidade);
         $o->descr_incentivo_fiscal = Contribuinte_Model_IncentivoFiscal::getById($o->incentivo_fiscal);
         $o->descr_regime_tributario = Contribuinte_Model_Tributacao::getById($o->regime_tributario);
         $o->descr_tipo_classificao = Contribuinte_Model_TipoEmpresa::getById($o->tipo_classificacao);
         $o->descr_tipo_emissao = Contribuinte_Model_TipoEmissao::getById($o->tipo_emissao);
         if ($o->optante_simples == 'Sim' && $o->optante_simples_baixado == 'Sim') {
             $o->descr_optante_simples = 'Não';
         } else {
             if ($o->optante_simples == 'Sim') {
                 $o->descr_optante_simples = 'Sim';
             } else {
                 $o->descr_optante_simples = 'Não';
             }
         }
     }
 }
 /**
  * Preenche os dados do contribuinte
  * @param null $oContribuinteWebService
  *
  * @return Contribuinte_Model_Contribuinte|null
  */
 public static function preencherInstanciaContribuinte($oContribuinteWebService = NULL)
 {
     $oContribuinte = NULL;
     if (is_object($oContribuinteWebService)) {
         $oContribuinte = new Contribuinte_Model_Contribuinte();
         if (isset($oContribuinteWebService->razao_social)) {
             $oContribuinte->setRazaoSocial($oContribuinteWebService->razao_social);
         }
         if (isset($oContribuinteWebService->codigo_empresa)) {
             $oContribuinte->setInscricaoMunicipal($oContribuinteWebService->codigo_empresa);
         }
         if (isset($oContribuinteWebService->endereco)) {
             $oContribuinte->setEndereco($oContribuinteWebService->endereco);
         }
         if (isset($oContribuinteWebService->cgm)) {
             $oContribuinte->setCgm($oContribuinteWebService->cgm);
         }
         if (isset($oContribuinteWebService->tipo)) {
             $oContribuinte->setTipoPessoa($oContribuinteWebService->tipo);
         }
         if (isset($oContribuinteWebService->cnpj)) {
             $oContribuinte->setCgcCpf($oContribuinteWebService->cnpj);
         }
         if (isset($oContribuinteWebService->cgccpf)) {
             $oContribuinte->setCgcCpf($oContribuinteWebService->cgccpf);
         }
         if (isset($oContribuinteWebService->nome)) {
             $oContribuinte->setNome($oContribuinteWebService->nome);
         }
         if (isset($oContribuinteWebService->nome_fanta)) {
             $oContribuinte->setNomeFantasia($oContribuinteWebService->nome_fanta);
         }
         if (isset($oContribuinteWebService->identidade)) {
             $oContribuinte->setIdentidade($oContribuinteWebService->identidade);
         }
         if (isset($oContribuinteWebService->inscr_est)) {
             $oContribuinte->setInscricaoEstadual($oContribuinteWebService->inscr_est);
         }
         if (isset($oContribuinteWebService->tipo_lograd)) {
             $oContribuinte->setTipoLogradouro($oContribuinteWebService->tipo_lograd);
         }
         if (isset($oContribuinteWebService->lograd)) {
             $oContribuinte->setDescricaoLogradouro($oContribuinteWebService->lograd);
         }
         if (isset($oContribuinteWebService->numero)) {
             $oContribuinte->setLogradouroNumero($oContribuinteWebService->numero);
         }
         if (isset($oContribuinteWebService->complemento)) {
             $oContribuinte->setLogradouroComplemento($oContribuinteWebService->complemento);
         }
         if (isset($oContribuinteWebService->bairro)) {
             $oContribuinte->setLogradouroBairro($oContribuinteWebService->bairro);
         }
         if (isset($oContribuinteWebService->cod_ibge)) {
             $oContribuinte->setCodigoIbgeMunicipio($oContribuinteWebService->cod_ibge);
         }
         if (isset($oContribuinteWebService->munic)) {
             $oContribuinte->setDescricaoMunicipio($oContribuinteWebService->munic);
         }
         if (isset($oContribuinteWebService->uf)) {
             $oContribuinte->setEstado($oContribuinteWebService->uf);
         }
         if (isset($oContribuinteWebService->cod_pais)) {
             $oContribuinte->setCodigoPais($oContribuinteWebService->cod_pais);
         }
         if (isset($oContribuinteWebService->pais)) {
             $oContribuinte->setDescricaoPais($oContribuinteWebService->pais);
         }
         if (isset($oContribuinteWebService->cep)) {
             $oContribuinte->setCep($oContribuinteWebService->cep);
         }
         if (isset($oContribuinteWebService->telefone)) {
             $oContribuinte->setTelefone($oContribuinteWebService->telefone);
         }
         if (isset($oContribuinteWebService->fax)) {
             $oContribuinte->setFax($oContribuinteWebService->fax);
         }
         if (isset($oContribuinteWebService->celular)) {
             $oContribuinte->setCelular($oContribuinteWebService->celular);
         }
         if (isset($oContribuinteWebService->email)) {
             $oContribuinte->setEmail(strtolower($oContribuinteWebService->email));
         }
         if (isset($oContribuinteWebService->inscricao)) {
             $oContribuinte->setInscricaoMunicipal($oContribuinteWebService->inscricao);
         }
         if (isset($oContribuinteWebService->data_inscricao)) {
             $oContribuinte->setDataInscricao(new DateTime($oContribuinteWebService->data_inscricao));
         }
         if (isset($oContribuinteWebService->tipo_classificacao)) {
             $oContribuinte->setTipoClassificacao($oContribuinteWebService->tipo_classificacao);
         }
         if (isset($oContribuinteWebService->optante_simples)) {
             $oContribuinte->setOptanteSimples($oContribuinteWebService->optante_simples);
         }
         if (isset($oContribuinteWebService->optante_simples_baixado)) {
             $oContribuinte->setOptanteSimplesBaixado($oContribuinteWebService->optante_simples_baixado);
         }
         if (isset($oContribuinteWebService->tipo_emissao)) {
             $oContribuinte->setTipoEmissao($oContribuinteWebService->tipo_emissao);
         }
         if (isset($oContribuinteWebService->exigibilidade)) {
             $oContribuinte->setExigibilidade($oContribuinteWebService->exigibilidade);
         }
         if (isset($oContribuinteWebService->subst_tributaria)) {
             $oContribuinte->setSubstituicaoTributaria($oContribuinteWebService->subst_tributaria);
         }
         if (isset($oContribuinteWebService->regime_tributario)) {
             $oContribuinte->setRegimeTributario($oContribuinteWebService->regime_tributario);
         }
         if (isset($oContribuinteWebService->incentivo_fiscal)) {
             $oContribuinte->setIncentivoFiscal($oContribuinteWebService->incentivo_fiscal);
         }
         if (isset($oContribuinteWebService->subst_tributaria)) {
             $oContribuinte->setDescricaoSubstituicaoTributaria(Contribuinte_Model_SubstitutoTributario::getById($oContribuinteWebService->subst_tributaria));
             $oContribuinte->setDescricaoExigibilidade(Contribuinte_Model_Exigeiss::getById($oContribuinteWebService->exigibilidade));
             $oContribuinte->setDescricaoIncentivoFiscal(Contribuinte_Model_IncentivoFiscal::getById($oContribuinteWebService->incentivo_fiscal));
             $oContribuinte->setDescricaoRegimeTributario(Contribuinte_Model_Tributacao::getById($oContribuinteWebService->regime_tributario));
             $oContribuinte->setDescricaoTipoClassificacao(Contribuinte_Model_TipoEmpresa::getById($oContribuinteWebService->tipo_classificacao));
             $oContribuinte->setDescricaoTipoEmissao(Contribuinte_Model_TipoEmissao::getById($oContribuinteWebService->tipo_emissao));
             $oContribuinte->setDescricaoOptanteSimples('Não');
             if ($oContribuinteWebService->optante_simples == 'Sim' && $oContribuinteWebService->optante_simples_baixado == 'Sim') {
                 $oContribuinte->setDescricaoOptanteSimples('Não');
             } else {
                 if ($oContribuinteWebService->optante_simples == 'Sim') {
                     $oContribuinte->setDescricaoOptanteSimples('Sim');
                     if (isset($oContribuinteWebService->optante_simples_categoria)) {
                         $oContribuinte->setOptanteSimplesCategoria($oContribuinteWebService->optante_simples_categoria);
                     }
                 }
             }
         }
     }
     return $oContribuinte;
 }