private function _validateCredential($userCredential = NULL) { BusinessException::throwsExceptionIfParamIsNull(!empty($userCredential), "As credencias são de preenchimento obrigatório."); BusinessException::throwsExceptionIfParamIsNull(isset($userCredential['sqUsuario']) || !empty($userCredential['sqUsuario']), "O campo sqUsuário é de preenchimento obrigatório."); BusinessException::throwsExceptionIfParamIsNull(isset($userCredential['sgSistema']) || !empty($userCredential['sgSistema']), "O campo sgSistema é de preenchimento obrigatório."); BusinessException::throwsExceptionIfParamIsNull(isset($userCredential['inPerfilExterno']), "O campo inPerfilExterno é de preenchimento obrigatório."); }
private function _validatePessoa(PessoaValueObject $voPessoa) { try { BusinessException::throwsExceptionIfParamIsNull(trim($voPessoa->getNoPessoa()), self::NAME_REQUIRED); } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage(), $mExcp->getCode()); } }
/** * libCorpInfoconvByCpf * @param type $params * @param type $userCredential * @return json */ function libCorpInfoconvByCpf($ctInfoconvByCPF, $userCredential) { $xmlResult = '<result><status>%s</status><errocode>%s</errocode><response>%s</response></result>'; try { Registry::factory()->setCredential($userCredential); $nuDoc = isset($ctInfoconvByCPF['doc']) ? $ctInfoconvByCPF['doc'] : NULL; $nuCpf = isset($ctInfoconvByCPF['cpf']) ? $ctInfoconvByCPF['cpf'] : $nuDoc; BusinessException::throwsExceptionIfParamIsNull(!empty($nuCpf), "O campo CPF é de preenchimento obrigatório."); $voInfoconv = ConfirmDocValueObject::factory()->setDoc($nuCpf); $result = ConfirmDocBusiness::factory(NULL, 'libcorp')->sourceCpf($voInfoconv); foreach ($result as $key => $value) { unset($result[$key]); $newKey = preg_replace('/\\s/i', '_', strtolower($key)); $result[$newKey] = $value; } return sprintf($xmlResult, 'success', '00000', Registry::factory()->arrayToXml($result)); } catch (\Exception $excp) { return sprintf($xmlResult, 'failure', $excp->getCode(), $excp->getMessage()); } }
/** * @example PessoaFisicaBusiness::updatePessoaFisica * @code * <?php * # cria filtro usado pelo Pessoa Fisica * $pessoaVO = ValueObjectAbstract::factory('fullnamespace'); * $pessoaFisicaVO = ValueObjectAbstract::factory('fullnamespace'); * # outra forma de utilizar * # $pessoaVO = PessoaValueObject::factory(); * # $pessoaFisicaVO = PessoaFisicaValueObject::factory(); * $pessoaFisicaVO->setNuCpf('12345678909'); * * # efetua pesquisa * $pessoaBusiness = PessoaFisicaBusiness::factory(); * $pessoaBusiness->updatePessoaFisica($pessoaVO, $pessoaFisicaVO); * ?> * @endcode * * @param PessoaValueObject $voPessoa * @param PessoaFisicaValueObject $voPessoaFisica * @throws BusinessException */ public function updatePessoaFisica(PessoaValueObject $voPessoa, PessoaFisicaValueObject $voPessoaFisica) { try { $voPessoaFisicaClone = clone $voPessoaFisica; # retira a máscara do CPF $voPessoaFisica->setNuCpf(preg_replace("/\\D+/", "", $voPessoaFisica->getNuCpf())); # efetua validação $this->_validatePessoaFisica($voPessoa, $voPessoaFisica); $sqPessoa = $voPessoa->getSqPessoa(); BusinessException::throwsExceptionIfParamIsNull($sqPessoa, self::REQUIRED_SQ_PESSOA); $voTmp = PessoaBusiness::factory(NULL, 'libcorp')->find($voPessoa->getSqPessoa()); $voPessoa->copySaveObjectData($voTmp); PessoaBusiness::factory(NULL, 'libcorp')->update($voPessoa); # Salva PessoaFisica $voPessoaTmp = self::factory(NULL, 'libcorp')->find($voPessoa->getSqPessoa()); $voPessoaFisica->copySaveObjectData($voPessoaTmp); # anula nacionalidade if (0 === $voPessoaFisicaClone->getSqNacionalidade()) { $voPessoaFisica->setSqNacionalidade(NULL); } # anula naturalidade if (0 === $voPessoaFisicaClone->getSqNaturalidade()) { $voPessoaFisica->setSqNaturalidade(NULL); } $this->getModelPersist('libcorp')->update($voPessoaFisica); return $voPessoaFisica; } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage(), $mExcp->getCode()); } }
/** * Fabrica de Model. * * Opcionalmente pode ser informado a entrada de configuracao de persistencia * util quando deseja trocar de conexao no mei do UC * @example BusinessAbstract::getModel * @code * <?php * ... * $business->getModel('default'); * ... * ?> * @endcode * @return ModelAbstract * @throws BusinessException * */ public function getModel($dsName = NULL) { if (NULL == $this->_model) { $namespace = $this->getClassName(); $namespace = $this->erReplace(array('business' => 'model', 'Business$' => 'Model'), $namespace); # lanca exception se a classe ainda nao tiver sido criada BusinessException::throwsExceptionIfParamIsNull(ModelAbstract::exists($namespace), self::MUST_CREATE_MODEL . " '{$namespace}'"); # delega a fabrica de ModelAbstract que crie um model $this->_model = $namespace::factory($namespace, $dsName); # a persist depende diretamente do valueObject para montagem das consultas basicas e operacoes # simples de escrita: update, delete. assim, se o model existir seu ValueObject correspondente # tambem devera existir; $this->registerAnnotation($namespace); } return $this->_model; }
/** * Efetua a validação * @param IntegracaoPessoaInfoconvValueObject $voIntegracaoPessoaInfoconv * @throws BusinessException */ private function _validateIntegracaoPessoaInfoconv(IntegracaoPessoaInfoconvValueObject $voIntegracaoPessoaInfoconv) { try { if (trim($voIntegracaoPessoaInfoconv->getSqPessoa())) { BusinessException::throwsExceptionIfParamIsNull(trim($voIntegracaoPessoaInfoconv->getSqPessoa()), self::REQUIRED_SQ_PESSOA); } if ($voIntegracaoPessoaInfoconv->getDtIntegracao()) { # Efetua sanitizacao de datas $dateFromVo = $voIntegracaoPessoaInfoconv->getDtIntegracao(); $voIntegracaoPessoaInfoconv->setDtIntegracao(Date::factory($dateFromVo, 'd/m/Y')->output()); // $voIntegracaoPessoaInfoconv->setTxJustificativa(""); } else { if (trim($voIntegracaoPessoaInfoconv->getTxJustificativa())) { $voIntegracaoPessoaInfoconv->setDtIntegracao(null); } } } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage(), $mExcp->getCode()); } }
/** * Atualiza os dados de Pessoa Juridica * * @example PessoaJuridicaBusiness::updatePessoaJuridica * @code * <?php * $pessoaVO = ValueObjectAbstract::factory('fullnamespace'); * $pessoaJuridicaVO = ValueObjectAbstract::factory('fullnamespace'); * # outra forma de utilizar * # $pessoaVO = PessoaValueObject::factory(); * # $pessoaJuridicaVO = PessoaJuridicaValueObject::factory(); * $pessoaJuridicaVO->setNuCnpj('12345678901234'); * * # efetua pesquisa * $pessoaJuridicaBusiness = PessoaJuridicaBusiness::factory(); * $pessoaJuridicaBusiness->updatePessoaJuridica($pessoaVO, $pessoaJuridicaVO); * ?> * @endcode * * @param PessoaValueObject $voPessoa * @param PessoaJuridicaValueObject $voPessoaJuridica * @throws BusinessException */ public function updatePessoaJuridica(PessoaValueObject $voPessoa, PessoaJuridicaValueObject $voPessoaJuridica) { try { # efetua validação $this->_validatePessoaJuridica($voPessoa, $voPessoaJuridica); $sqPessoa = $voPessoa->getSqPessoa(); BusinessException::throwsExceptionIfParamIsNull($sqPessoa, self::MISSING_KEY); # atualiza a pessoa Juridica $voPessoa->setSqTipoPessoa(self::TIPO_PESSOA_JURIDICA); PessoaBusiness::factory(NULL, 'libcorp')->update($voPessoa); # retira a máscara do CNPJ $voPessoaJuridica->setNuCnpj(preg_replace("/\\D+/", "", $voPessoaJuridica->getNuCnpj())); # Salva PessoaJuridica $voPessoaJuridica->setSqPessoa($sqPessoa); $this->getModelPersist('libcorp')->update($voPessoaJuridica); return $voPessoaJuridica; } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage(), $mExcp->getCode()); } }
/** * Atualiza os Dados Bancarios * * @example DadoBancarioBusiness::updateDadosBancarios * @code * <?php * # cria filtro usado por agencia * $dadosBancariosVO = ValueObjectAbstract::factory('fullnamespace'); * # outra forma de utilizar * # $dadosBancariosVO = AgenciaValueObject::factory(); * $dadosBancariosVO->setSqDadoBancario(1); * * # efetua atualizacao * $dadosBancariosBusiness = DadoBancarioBusiness::factory(); * $dadosBancariosBusiness->updateDadosBancarios($dadosBancariosVO); * ?> * @endcode * * @param DadoBancarioValueObject $voDadoBancario * @return DadoBancarioValueObject * @throws BusinessException */ public function updateDadoBancario(DadoBancarioValueObject $voDadoBancario) { try { $voTmp = self::factory(NULL, 'libcorp')->find($voDadoBancario->getSqDadoBancario()); BusinessException::throwsExceptionIfParamIsNull($voTmp->getSqDadoBancario(), 'O identificador do dado bancário não foi informado'); $voDadoBancario->copySaveObjectData($voTmp); $this->getModelPersist('libcorp')->update($voDadoBancario); return $voDadoBancario; } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage(), $mExcp->getCode()); } }
/** * Atualiza os dados de Telefone * * @example TelefoneBusiness::updateTelefone * @code * <?php * # cria filtro usado por agencia * $voTelefone = ValueObjectAbstract::factory('fullnamespace'); * # outra forma de utilizar * # $voTelefone = TelefoneValueObject::factory(); * $voTelefone->setSqTelefone(1); * * # efetua exclusao * $telefoneBusiness = TelefoneBusiness::factory(); * $telefoneBusiness->updateTelefone($voTelefone); * ?> * @endcode * * @param TelefoneValueObject $voTelefone * @return TelefoneValueObject * @throws BusinessException */ public function updateTelefone(TelefoneValueObject $voTelefone) { try { $voTmp = TelefoneBusiness::factory(NULL, 'libcorp')->find($voTelefone->getSqTelefone()); BusinessException::throwsExceptionIfParamIsNull($voTmp->getSqTelefone(), self::IDENTIFIER_NOT_FOUND); $voTelefone->copySaveObjectData($voTmp); $this->getModelPersist('libcorp')->update($voTelefone); return $voTelefone; } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage()); } }
/** * @example CadastroSemCPFBusiness::update * @code * <?php * # cria filtro usado pelo Pessoa Fisica * $cadastroVO = ValueObjectAbstract::factory('fullnamespace'); * # outra forma de utilizar * # $cadastroVO = CadastroSemCPFValueObject::factory(); * $cadastorVO->setSqPessoa(1); * * # efetua alteracao dos dados * $cadastroSemCPFBusiness = CadastroSemCPFBusiness::factory(); * $cadastrpBusiness->update($cadastroVO); * ?> * @endcode * * @param CadastroSemCPFValueObject $voCadastroSemCPF * @throws BusinessException */ public function update(CadastroSemCPFValueObject $voCadastroSemCPF) { try { $this->_validateCadastro($voCadastroSemCPF); $voTmp = self::factory(NULL, 'libcorp')->find($voCadastroSemCPF->getSqCadastroSemCPF()); BusinessException::throwsExceptionIfParamIsNull($voTmp->getSqCadastroSemCPF() && $voCadastroSemCPF->getSqPessoa(), 'Na atualização é obrigatório informar o ID da Pessoa a ser alterada'); $voCadastroSemCPF->copySaveObjectData($voTmp); $this->getModelPersist('libcorp')->update($voCadastroSemCPF); return $voCadastroSemCPF; } catch (ModelException $mExcp) { throw new BusinessException($mExcp->getMessage()); } }