/**
  * Realiza consulta sobre serviço infoconv
  */
 public function serviceInfoconvAction()
 {
     $criteria = array();
     try {
         if ($this->_getParam('nuCnpj')) {
             $cnpj = Zend_Filter::filterStatic($this->_getParam('nuCnpj'), 'Digits');
             $result = $this->getServiceLocator()->getService('VwPessoa')->getDataInfoconvBy($cnpj, 'cnpj');
             $result = \Core_Integration_Abstract_Soap::xmlToArray($result);
             $criteria['code'] = $result['errocode'];
             if ('failure' == $result['status']) {
                 throw new \Exception($result['response']);
             }
             $criteria['noPessoa'] = str_replace("&", "&", $result['response']['nome_empresarial']);
             $criteria['noFantasia'] = $result['response']['nome_fantasia'] ? str_replace("&", "&", $result['response']['nome_fantasia']) : '';
             $natJurInfoconv = $result['response']['natureza_juridica'];
             $naturezaJuridicaPai = trim(substr($natJurInfoconv, 0, 1) . '00');
             $naturezaJuridica = trim(substr($natJurInfoconv, 0, 3));
             $criteria['sqNaturezaJuridicaPai'] = $naturezaJuridicaPai > 0 ? $naturezaJuridicaPai : '';
             $criteria['sqNaturezaJuridica'] = $naturezaJuridica > 0 ? $naturezaJuridica : '';
         } else {
             $cpf = Zend_Filter::filterStatic($this->_getParam('nuCpf'), 'Digits');
             $result = $this->getServiceLocator()->getService('VwPessoa')->getDataInfoconvBy($cpf, 'cpf');
             $result = \Core_Integration_Abstract_Soap::xmlToArray($result);
             $criteria['code'] = $result['errocode'];
             if ('failure' == $result['status']) {
                 throw new \Exception($result['response']);
             }
             $criteria['noPessoa'] = $result['response']['nome'] ? $result['response']['nome'] : '';
             $criteria['dtNascimento'] = $result['response']['data_nascimento'] ? $result['response']['data_nascimento'] : '';
             $criteria['noMae'] = $result['response']['nome_mae'] ? trim($result['response']['nome_mae']) : '';
             $criteria['nacionalidade'] = (bool) $result['response']['estrangeiro'] ? 2 : 1;
             $criteria['sqPaisNaturalidade'] = (int) $result['response']['codigo_pais_exterior'];
             $criteria['noPaisNaturalidade'] = $result['response']['nome_pais_exterior'];
         }
         $criteria['dtIntegracaoInfoconv'] = Zend_Date::now()->toString();
         $criteria['personId'] = trim(\Core_Integration_Sica_User::getPersonId());
         $criteria['success'] = true;
     } catch (Exception $e) {
         $criteria['response'] = $e->getMessage();
         $criteria['success'] = false;
     }
     $this->_helper->json($criteria);
     die;
 }
 /**
  * Salva dados via webservice
  *
  * @param type $repository
  * @param type $method
  * @param array $data
  * @return boolean
  */
 public function saveLibCorp($repository = 'app:VwPessoaJuridica', $method, array $data)
 {
     /**
      * Informações obrigatórias para o log de auditoria do webservice.
      */
     $userCredential = \Core_Integration_Sica_User::getUserCredential();
     $entityManager = $this->getEntityManager('ws')->getRepository($repository);
     $result = $entityManager->{$method}($data, $userCredential);
     $resultXml = \Core_Integration_Abstract_Soap::xmlToArray($result);
     if (isset($resultXml['status']) && $resultXml['status'] == 'success' && $repository == 'app:VwPessoaJuridica') {
         if (!empty($resultXml['response']['pessoa_juridica']['sqPessoa']['sqPessoa'])) {
             $sqPessoa = $resultXml['response']['pessoa_juridica']['sqPessoa']['sqPessoa'];
             $resultXml['response']['pessoa_juridica']['sqPessoa'] = $sqPessoa;
         }
     } else {
         if (isset($resultXml['status']) && $resultXml['status'] == 'success' && $repository == 'app:VwDocumento') {
             $sqPessoa = $resultXml['response']['documento']['sqPessoa']['sqPessoa'];
             $resultXml['response']['documento']['sqPessoa'] = $sqPessoa;
             $resultXml['response']['documento']['sqAtributoTipoDocumento'] = $resultXml['response']['documento']['sqAtributoTipoDocumento']['sqAtributoTipoDocumento'];
         }
     }
     return $resultXml['response'];
 }
示例#3
0
 public function saveWs($repository, $method, $data, $dadosLogger = null)
 {
     if ($method == 'libCorpDeleteDocumento') {
         $arrDoc['sqDocumento'] = $dadosLogger->getSqDocumento();
         $arrDoc['sqAtributoDocumento'] = $dadosLogger->getSqAtributoTipoDocumento()->getSqAtributoTipoDocumento();
         $arrDoc['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrDoc['txValor'] = $dadosLogger->getTxValor();
         $arrDocumento['documento'] = $arrDoc;
     }
     /**
      * Informações obrigatórias para o log de auditoria do webservice.
      */
     $userCredential = \Core_Integration_Sica_User::getUserCredential();
     $entityManager = $this->getEntityManager('ws')->getRepository($repository);
     $result = $entityManager->{$method}($data, $userCredential);
     $resultXml = \Core_Integration_Abstract_Soap::xmlToArray($result);
     if (isset($resultXml['status']) && $resultXml['status'] == 'success') {
         if ($method != 'libCorpDeleteDocumento') {
             $resultXml['response']['documento']['sqPessoa'] = $resultXml['response']['documento']['sqPessoa']['sqPessoa'];
             $resultXml['response']['documento']['sqAtributoTipoDocumento'] = $resultXml['response']['documento']['sqAtributoTipoDocumento']['sqAtributoTipoDocumento'];
         }
         return $resultXml['response'];
     }
 }
 public function getSoapXmlResult($result)
 {
     return \Core_Integration_Abstract_Soap::xmlToArray($result);
 }
示例#5
0
 /**
  * Salva dados via webservice
  * @param type $repository
  * @param type $method
  * @param array $data
  * @return boolean
  */
 public function saveLibCorp($repository = 'app:VwPessoaFisica', $method, array $data)
 {
     if ($repository == 'app:VwTelefone' && $method == 'libCorpDeleteTelefone') {
         $dadosLogger = $this->_getRepository('app:VwTelefone')->find($data['sqTelefone']);
         $arrTel['sqTelefone'] = $dadosLogger->getSqTelefone();
         $arrTel['sqTipoTelefone'] = $dadosLogger->getSqTipoTelefone()->getSqTipoTelefone();
         $arrTel['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrTel['nuDdd'] = $dadosLogger->getNuDdd();
         $arrTel['nuTelefone'] = $dadosLogger->getNuTelefone();
         $arrTelefone['telefone'] = $arrTel;
     }
     if ($repository == 'app:VwEmail' && $method == 'libCorpDeleteEmail') {
         $dadosLogger = $this->_getRepository()->find($data['sqEmail']);
         $dadosLogger = $this->_getRepository('app:VwEmail')->find($data['sqEmail']);
         $arrMail['sqEmail'] = $dadosLogger->getSqEmail();
         $arrMail['sqTipoEmail'] = $dadosLogger->getSqTipoEmail()->getSqTipoEmail();
         $arrMail['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrMail['txEmail'] = $dadosLogger->getTxEmail();
         $arrEmail['email'] = $arrMail;
     }
     /**
      * Informações obrigatórias para o log de auditoria do webservice.
      */
     $userCredential = \Core_Integration_Sica_User::getUserCredential();
     $entityManager = $this->getEntityManager('ws')->getRepository($repository);
     $result = $entityManager->{$method}($data, $userCredential);
     $resultXml = \Core_Integration_Abstract_Soap::xmlToArray($result);
     if (isset($resultXml['status']) && $resultXml['status'] == 'success') {
         if ($repository == 'app:VwPessoaFisica') {
             return $resultXml['response']['pessoa_fisica']['sqPessoa']['sqPessoa'];
         }
         if ($repository == 'app:VwPessoaJuridica') {
             return $resultXml['response']['pessoa_juridica']['sqPessoa']['sqPessoa'];
         }
         return TRUE;
     } else {
         return FALSE;
     }
 }
示例#6
0
 /**
  * Salva dados via webservice
  * @param type $repository
  * @param type $method
  * @param array $data
  * @return boolean
  */
 public function saveLibCorp($repository = 'app:PessoaFisica', $method, array $data, $dadosLogger = NULL)
 {
     $data = $this->stripslashes_array($data);
     if ($repository == 'app:Documento' && $method == 'libCorpDeleteDocumento') {
         $arrDoc['sqDocumento'] = $dadosLogger->getSqDocumento();
         $arrDoc['sqAtributoTipoDocumento'] = $dadosLogger->getSqAtributoTipoDocumento()->getSqAtributoTipoDocumento();
         $arrDoc['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrDoc['txValor'] = $dadosLogger->getTxValor();
         $arrDocumento['documento'] = $arrDoc;
     }
     if ($repository == 'app:Endereco' && $method == 'libCorpDeleteEndereco') {
         $dadosLogger = $this->_getRepository('app:Endereco')->find($data['sqEndereco']);
         $arrDadoEnd['sqEndereco'] = $dadosLogger->getSqEndereco();
         $arrDadoEnd['sqMunicipio'] = $dadosLogger->getSqMunicipio()->getSqMunicipio();
         $arrDadoEnd['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrDadoEnd['sqTipoEndereco'] = $dadosLogger->getSqTipoEndereco()->getSqTipoEndereco();
         $arrDadoEnd['noBairro'] = $dadosLogger->getNoBairro();
         $arrDadoEnd['txEndereco'] = $dadosLogger->getTxEndereco();
         $arrDadoEnd['txComplemento'] = $dadosLogger->getTxComplemento();
         $arrDadoEnd['nuEndereco'] = $dadosLogger->getNuEndereco();
         $arrDadoEnd['inCorrespondencia'] = $dadosLogger->getInCorrespondencia();
         $arrDadoEnd['sqCep'] = $dadosLogger->getSqCep();
         $arrDadoEndereco['endereco'] = $arrDadoEnd;
     }
     if ($repository == 'app:Telefone' && $method == 'libCorpDeleteTelefone') {
         $dadosLogger = $this->_getRepository('app:Telefone')->find($data['sqTelefone']);
         $arrTel['sqTelefone'] = $dadosLogger->getSqTelefone();
         $arrTel['sqTipoTelefone'] = $dadosLogger->getSqTipoTelefone()->getSqTipoTelefone();
         $arrTel['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrTel['nuDdd'] = $dadosLogger->getNuDdd();
         $arrTel['nuTelefone'] = $dadosLogger->getNuTelefone();
         $arrTelefone['telefone'] = $arrTel;
     }
     if ($repository == 'app:Email' && $method == 'libCorpDeleteEmail') {
         $dadosLogger = $this->_getRepository('app:Email')->find($data['sqEmail']);
         $arrMail['sqEmail'] = $dadosLogger->getSqEmail();
         $arrMail['sqTipoEmail'] = $dadosLogger->getSqTipoEmail()->getSqTipoEmail();
         $arrMail['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrMail['txEmail'] = $dadosLogger->getTxEmail();
         $arrEmail['email'] = $arrMail;
     }
     if ($repository == 'app:DadoBancario' && $method == 'libCorpDeleteDadoBancario') {
         $dadosLogger = $this->_getRepository('app:DadoBancario')->find($data['sqDadoBancario']);
         $arrDadoBanc['sqDadoBancario'] = $dadosLogger->getSqDadoBancario();
         $arrDadoBanc['sqAgencia'] = $dadosLogger->getSqAgencia()->getSqAgencia();
         $arrDadoBanc['sqPessoa'] = $dadosLogger->getSqPessoa()->getSqPessoa();
         $arrDadoBanc['sqTipoDadoBancario'] = $dadosLogger->getSqTipoDadoBancario()->getSqTipoDadoBancario();
         $arrDadoBanc['nuConta'] = $dadosLogger->getNuConta();
         $arrDadoBanc['nuContaDv'] = $dadosLogger->getNuContaDv();
         $arrDadoBanc['coOperacao'] = $dadosLogger->getCoOperacao();
         $arrDadoBancario['dado_bancario'] = $arrDadoBanc;
     }
     /**
      * Informações obrigatórias para o log de auditoria do webservice.
      */
     $userCredential = \Core_Integration_Sica_User::getUserCredential();
     $entityManager = $this->getEntityManager('ws')->getRepository($repository);
     $result = $entityManager->{$method}($data, $userCredential);
     $resultXml = \Core_Integration_Abstract_Soap::xmlToArray($result);
     if (isset($resultXml['status']) && $resultXml['status'] == 'success') {
         if ($repository == 'app:PessoaFisica') {
             return $resultXml['response']['pessoa_fisica']['sqPessoa']['sqPessoa'];
         }
         if ($repository == 'app:PessoaJuridica') {
             return $resultXml['response']['pessoa_juridica']['sqPessoa']['sqPessoa'];
         }
         if ($repository == 'app:PessoaVinculo') {
             return $resultXml['response']['pessoa_vinculo']['sqPessoa']['sqPessoa'];
         }
         if ($repository == 'app:Pessoa') {
             $sqPessoa = null;
             if (!empty($resultXml['response']['pessoa'])) {
                 $sqPessoa = $resultXml['response']['pessoa']['sqPessoa'];
             } else {
                 if (!empty($resultXml['response']['pessoa_fisica'])) {
                     $sqPessoa = $resultXml['response']['pessoa_fisica']['sqPessoa']['sqPessoa'];
                 } elseif ($resultXml['response']['pessoa_juridica']) {
                     $sqPessoa = $resultXml['response']['pessoa_juridica']['sqPessoa']['sqPessoa'];
                 }
             }
             return $sqPessoa;
         }
         return TRUE;
     } else {
         return FALSE;
     }
 }
示例#7
0
 public function getConfiguracao($noConstante)
 {
     $noConstante = strtoupper($noConstante);
     $result = parent::getConfiguracao($noConstante);
     return $this->xmlToArray($result);
 }
 /**
  * Realiza consulta sobre serviço infoconv
  */
 public function serviceInfoconvAction()
 {
     $criteria = array();
     try {
         if ($this->_getParam('nuCnpj')) {
             $cnpj = Zend_Filter::filterStatic($this->_getParam('nuCnpj'), 'Digits');
             $result = $this->getServiceLocator()->getService('Pessoa')->getDataInfoconvBy($cnpj, 'cnpj');
             $result = \Core_Integration_Abstract_Soap::xmlToArray($result);
             $criteria['code'] = $result['errocode'];
             if ('failure' == $result['status']) {
                 throw new \Exception($result['response']);
             }
             $criteria['noPessoa'] = $result['response']['nome_empresarial'];
             $criteria['noFantasia'] = $result['response']['nome_fantasia'] ? $result['response']['nome_fantasia'] : '';
             $criteria['inTipoEstabelecimento'] = $result['response']['estabelecimento'] == 1 ? '1' : '0';
             $natJurInfoconv = $result['response']['natureza_juridica'];
             $naturezaJuridicaPai = trim(substr($natJurInfoconv, 0, 1) . '00');
             $naturezaJuridica = trim(substr($natJurInfoconv, 0, 3));
             $criteria['sqNaturezaJuridicaPai'] = $naturezaJuridicaPai > 0 ? $naturezaJuridicaPai : '';
             $criteria['sqNaturezaJuridica'] = $naturezaJuridica > 0 ? $naturezaJuridica : '';
             $criteria['txEmail'] = $result['response']['email'];
             $address['txEndereco'] = $result['response']['logradouro'];
             $address['nuEndereco'] = $result['response']['numero_logradouro'];
             $address['txComplemento'] = $result['response']['complemento'];
             $address['sqCep'] = $result['response']['cep'];
             $address['noBairro'] = $result['response']['bairro'];
             $address['sqMunicipio'] = $result['response']['codigo_municipio'];
             $address['sqEstado'] = $result['response']['uf'];
             if ($result['response']['telefone1']) {
                 $phone['nuDdd'] = $result['response']['dd_d1'];
                 $phone['nuTelefone'] = str_replace(array(' ', '-'), '', $result['response']['telefone1']);
             } else {
                 $phone['nuDdd'] = $result['response']['dd_d2'];
                 $phone['nuTelefone'] = str_replace(array(' ', '-'), '', $result['response']['telefone2']);
             }
             $criteria['address'] = $address;
             $criteria['phone'] = $phone;
         } else {
             $cpf = Zend_Filter::filterStatic($this->_getParam('nuCpf'), 'Digits');
             $result = $this->getServiceLocator()->getService('Pessoa')->getDataInfoconvBy($cpf, 'cpf');
             $result = \Core_Integration_Abstract_Soap::xmlToArray($result);
             $criteria['code'] = $result['errocode'];
             if ('failure' == $result['status']) {
                 throw new \Exception($result['response']);
             }
             $criteria['noPessoa'] = $result['response']['nome'] ? $result['response']['nome'] : '';
             $criteria['sgSexo'] = $result['response']['sexo'] == 'MASCULINO' ? 'M' : 'F';
             $criteria['dtNascimento'] = $result['response']['data_nascimento'] ? $result['response']['data_nascimento'] : '';
             $criteria['noMae'] = $result['response']['nome_mae'] ? trim($result['response']['nome_mae']) : '';
             $criteria['nacionalidade'] = (bool) $result['response']['estrangeiro'] ? 2 : 1;
             $criteria['sqPaisNaturalidade'] = (int) $result['response']['codigo_pais_exterior'];
             $criteria['noPaisNaturalidade'] = $result['response']['nome_pais_exterior'];
             $criteria['txEndereco'] = $result['response']['logradouro'];
             $criteria['nuEndereco'] = $result['response']['numero_logradouro'];
             $criteria['txComplemento'] = $result['response']['complemento'];
             $criteria['sqCep'] = $result['response']['cep'];
             $criteria['noBairro'] = $result['response']['bairro'];
             $criteria['sqMunicipioEndereco'] = $result['response']['codigo_municipio'];
             $criteria['sqEstadoEndereco'] = $result['response']['uf'];
             $criteria['ddd'] = $result['response']['ddd'];
             $criteria['nuTelefone'] = str_replace(array(' ', '-'), '', $result['response']['telefone']);
         }
         $criteria['dtIntegracaoInfoconv'] = Zend_Date::now()->toString();
         $personId = trim(\Core_Integration_Sica_User::getPersonId());
         $criteria['personId'] = $personId;
         $criteria['success'] = true;
     } catch (Exception $e) {
         $criteria['response'] = $e->getMessage();
         $criteria['success'] = false;
     }
     $this->_helper->json($criteria);
     die;
 }