/** * Retorna a instancia do contribuinte atraves do Cnpj/cpf * * @param string $sCpfCnpj * @return bool|Contribuinte_Model_ContribuinteEventual|object * @throws Exception */ public static function getByCpfCnpj($sCpfCnpj) { $oContribuinte = Administrativo_Model_UsuarioContribuinte::getByAttribute('cnpj_cpf', $sCpfCnpj); // Se retornar mais de um contribuinte pega o primeiro da lista if (is_array($oContribuinte)) { $oContribuinte = reset($oContribuinte); } if ($oContribuinte->getUsuario()->getCnpj() == '') { throw new Exception('Contribuinte eventual não possui CPF / CNPJ.'); } $oCgm = self::getByCpfCnpjWebService($sCpfCnpj); if (!empty($oCgm)) { $oContribuinteEventual = Contribuinte_Model_ContribuinteEventual::preencherInstanciaContribuinte($oCgm); $oContribuinteEventual->setIdUsuarioContribuinte($oContribuinte->getId()); return $oContribuinteEventual; } return FALSE; }