function testeReadByCriteria() { $criteria = array(); $criteria[UsuarioRastreadorCriteria::USUARIO_FK_EQ] = 7; $entityArray = ServiceLocator::getUsuarioRastreadorService()->readByCriteria($criteria); foreach ($entityArray as $entity) { echo $entity . "<br>"; } }
function desvincularUsuarioRastreador() { $usuario = ServiceLocator::getUsuarioService()->readById(3); if ($usuario != null) { foreach ($usuario->getRastreadorArray() as $rastreador) { $criteria = array(); $criteria[UsuarioRastreadorCriteria::USUARIO_FK_EQ] = $usuario->getId(); $criteria[UsuarioRastreadorCriteria::RASTREADOR_FK_EQ] = $rastreador->getId(); $usuarioRastreadorArray = ServiceLocator::getUsuarioRastreadorService()->readByCriteria($criteria); foreach ($usuarioRastreadorArray as $usuarioRastreador) { echo ServiceLocator::getUsuarioRastreadorService()->delete($usuarioRastreador->getId()); } } } }
private function tratarRecebimentoConfigInicialRastreador($valores, $clienteWS) { $this->printar("CONFIGURACAO INICIAL RASTREADOR\n", false, false); $clienteWSDestino = null; $resposta = array(); $resposta[] = TipoComunicacao::CONFIG_INICIAL_RASTREADOR; switch ($clienteWS->getTipoCliente()) { case TipoCliente::USUARIO: $serialRastreador = $valores[1]; $tokenRastreador = $valores[2]; $criteria = array(); $criteria[RastreadorCriteria::SERIAL_EQ] = $serialRastreador; $criteria[RastreadorCriteria::TOKEN_EQ] = $tokenRastreador; $rastreador = ServiceLocator::getRastreadorService()->readByCriteria($criteria)[0]; if ($rastreador != null) { $clienteWSRas = $this->clienteWSController->buscarCliente(TipoCliente::RASTREADOR, $rastreador->getId()); if ($clienteWSRas != null) { // VERIFICA SE USUÁRIO JÁ ESTÁ VINCULADO AO RASTREADOR if ($this->verificarAcessoDeUsuarioAoRastreador($clienteWS->getCadastro(), $clienteWSRas->getCadastro()) != true) { // VERIFICA SE RASTREADOR NÃO POSSUI NENHUM USUÁRIO VINCULADO if (count($rastreador->getUsuarioArray()) == 0) { // MENSAGEM DE CONFIGURAÇÃO INICIAL PARA RASTREADOR $clienteWSDestino = $clienteWSRas; $resposta[] = $rastreador->getId(); $resposta[] = $rastreador->getSerial(); $resposta[] = $rastreador->getToken(); $clienteWS->setTipoComunicacaoAtual(TipoComunicacao::CONFIG_INICIAL_RASTREADOR); $clienteWS->setSocketPar($clienteWSRas->getSocket()); $clienteWSRas->setTipoComunicacaoAtual(TipoComunicacao::CONFIG_INICIAL_RASTREADOR); $clienteWSRas->setSocketPar($clienteWS->getSocket()); } else { // TENTA VINCULAR USUÁRIO A RASTREADOR $usuarioRastreador = new UsuarioRastreador(); $usuarioRastreador->setUsuario($clienteWS->getCadastro()); $usuarioRastreador->setRastreador($clienteWSRas->getCadastro()); if (ServiceLocator::getUsuarioRastreadorService()->create($usuarioRastreador) == true) { // MENSAGEM DE SUCESSO PARA USUÁRIO (OK) $clienteWSDestino = $clienteWS; $resposta[] = $clienteWS->getId(); $resposta[] = 1; $clienteWS->atualizarCadastro(); $clienteWSRas->atualizarCadastro(); } else { // MENSAGEM DE ERRO PARA USUÁRIO (VICULAÇÃO USUÁRIO/RASTREADOR FALHOU) $clienteWSDestino = $clienteWS; $resposta[] = $clienteWSRas->getId(); $resposta[] = 22; } } } else { // MENSAGEM DE SUCESSO PARA USUÁRIO (RASTREAOR JÁ VINCULADO A USUÁRIO) $clienteWSDestino = $clienteWS; $resposta[] = $rastreador->getId(); $resposta[] = 2; } } else { // MENSAGEM DE ERRO PARA USUÁRIO (RASTREADOR DESCONECTADO) $clienteWSDestino = $clienteWS; $resposta[] = $rastreador->getId(); $resposta[] = 21; } } else { // MENSAGEM DE ERRO PARA USUÁRIO (SERIAL E/OU TOKEN NÃO EXISTE) $clienteWSDestino = $clienteWS; $resposta[] = 0; $resposta[] = 20; } break; case TipoCliente::RASTREADOR: $resultado = $valores[1]; if ($clienteWS->getTipoComunicacaoAtual() == TipoComunicacao::CONFIG_INICIAL_RASTREADOR && $clienteWS->getSocketPar() != null) { $clienteWSUsu = $this->clienteWSController->buscarClientePorSocket($clienteWS->getSocketPar()); if ($clienteWSUsu != null) { if ($resultado == 1) { // TENTA VINCULAR USUÁRIO A RASTREADOR $usuarioRastreador = new UsuarioRastreador(); $usuarioRastreador->setUsuario($clienteWSUsu->getCadastro()); $usuarioRastreador->setRastreador($clienteWS->getCadastro()); if (ServiceLocator::getUsuarioRastreadorService()->create($usuarioRastreador) == true) { $clienteWS->atualizarCadastro(); $clienteWSUsu->atualizarCadastro(); // MENSAGEM DE SUCESSO PARA USUÁRIO (OK) $clienteWSDestino = $clienteWSUsu; $resposta[] = $clienteWS->getId(); $resposta[] = 1; } else { // MENSAGEM DE ERRO PARA USUÁRIO (VICULAÇÃO USUÁRIO/RASTREADOR FALHOU) $clienteWSDestino = $clienteWSUsu; $resposta[] = $clienteWS->getId(); $resposta[] = 22; } } $clienteWSUsu->setTipoComunicacaoAtual(null); $clienteWSUsu->setSocketPar(null); } } $clienteWS->setTipoComunicacaoAtual(null); $clienteWS->setSocketPar(null); break; } if ($clienteWSDestino != null && count($resposta) > 0) { $this->enviarValoresParaClienteWS($resposta, $clienteWSDestino); } }