/**
  * Retorna contribuinte pela inscrição municipal
  *
  * @param $iInscricaoMunicipal
  * @return Contribuinte_Model_Contribuinte|null|object
  */
 public static function getByInscricaoMunicipal($iInscricaoMunicipal)
 {
     $oContribuinteWebService = NULL;
     if ($iInscricaoMunicipal != NULL) {
         $oContribuinteWebService = self::getDadosContribuinteEcidade($iInscricaoMunicipal);
         $iUsuarioLogadoSessao = Zend_Auth::getInstance()->getIdentity();
         $iUsuarioLogado = Administrativo_Model_Usuario::getById($iUsuarioLogadoSessao['id']);
         $oUsuarioContribuinte = Administrativo_Model_UsuarioContribuinte::getByUsuarioContribuinte($iUsuarioLogado, $iInscricaoMunicipal);
         // verifica se tá cadastrado e se tem contribuinte vinculado no nota.
         if (empty($oUsuarioContribuinte) || is_array($oUsuarioContribuinte) && count($oUsuarioContribuinte) == 1) {
             $oContribuinte = self::preencherInstanciaContribuinte($oContribuinteWebService);
             // caso não exista ela não está cadastrado no nota então ele não tem id ainda
             if (!empty($oUsuarioContribuinte)) {
                 $oContribuinte->setIdUsuarioContribuinte($oUsuarioContribuinte[0]->getId());
             }
             return $oContribuinte;
         }
     }
     return NULL;
 }
 /**
  * Retorna todas as ações do usuário para um contribuinte
  *
  * @param integer $contribuinte IM do contribuinte
  * @param string $modulo Filtro por módulo
  * @return Array
  */
 public function getAcoes($contribuinte = null, $modulo = null)
 {
     $a = array();
     foreach ($this->entity->getAcoes() as $acao) {
         $acao = new Administrativo_Model_Acao($acao);
         if ($modulo === null || strtolower($acao->getControle()->getModulo()->getNome()) === $modulo) {
             $a[] = $acao;
         }
     }
     // Se for diferente de "contador" pega as permissoes dos usuarios clientes
     if ($this->entity->getTipo() != 2) {
         $usuario_contribuinte = Administrativo_Model_UsuarioContribuinte::getByUsuarioContribuinte($this, $contribuinte);
         foreach ($usuario_contribuinte as $uc) {
             $a = array_merge($a, $uc->getAcoes($modulo));
         }
     }
     return $a;
 }