コード例 #1
0
 public static function sendDataToUpdate()
 {
     $destinatarios[] = array("nome" => "Filipe Coelho", "email" => "*****@*****.**");
     // Atualiza a lista de telefones do colaborador
     if (isset($_POST['cooperator']['telefones'])) {
         $telefoneDao = new TelefoneDao();
         foreach ($_POST['cooperator']['telefones'] as $key => $telefone) {
             if (isset($telefone['flg_removido']) && $telefone['flg_removido'] === "true") {
                 if (!$telefoneDao->deleteTelefone($telefone['cod_telefone'])) {
                     Flight::halt(500, 'Erro ao excluir o telefone [(' . $telefone['num_ddd'] . ') ' . $telefone['num_telefone'] . ']');
                     die;
                 }
             } else {
                 if (isset($telefone['cod_telefone'])) {
                     $telefoneTO = new TelefoneTO();
                     $telefoneTO->cod_telefone = $telefone['cod_telefone'];
                     $telefoneTO->num_ddd = $telefone['num_ddd'];
                     $telefoneTO->num_telefone = $telefone['num_telefone'];
                     $telefoneTO->cod_tipo_telefone = $telefone['cod_tipo_telefone'];
                     if (!$telefoneDao->updateTelefone($telefoneTO)) {
                         Flight::halt(500, 'Erro ao atualizar o telefone [(' . $telefoneTO->num_ddd . ') ' . $telefoneTO->num_telefone . ']');
                         die;
                     }
                 } else {
                     if (isset($_POST['cooperator']['cod_colaborador'])) {
                         $telefoneTO = new TelefoneTO();
                         $telefoneTO->cod_colaborador = $_POST['cooperator']['cod_colaborador'];
                         $telefoneTO->num_ddd = $telefone['num_ddd'];
                         $telefoneTO->num_telefone = $telefone['num_telefone'];
                         $telefoneTO->cod_tipo_telefone = $telefone['tipoTelefone']['cod_tipo_telefone'];
                         if (!$telefoneDao->saveTelefone($telefoneTO)) {
                             Flight::halt(500, 'Erro ao salvar o telefone [(' . $telefoneTO->num_ddd . ') ' . $telefoneTO->num_telefone . ']');
                             die;
                         }
                     }
                 }
             }
         }
     }
     // Atualiza a lista de e-mails do colaborador
     if (isset($_POST['cooperator']['emails'])) {
         $emailDao = new EmailDao();
         foreach ($_POST['cooperator']['emails'] as $key => $email) {
             if (isset($email['flg_removido']) && $email['flg_removido'] === "true") {
                 if (!$emailDao->deleteEmail($email['cod_email'])) {
                     Flight::halt(500, 'Erro ao excluir o email [' . $emailTO->end_email . ']');
                     die;
                 }
             } else {
                 if (isset($email['cod_email'])) {
                     $emailTO = new EmailTO();
                     $emailTO->cod_email = $email['cod_email'];
                     $emailTO->end_email = $email['end_email'];
                     if (!$emailDao->updateEmail($emailTO)) {
                         Flight::halt(500, 'Erro ao atualizar o email [' . $emailTO->end_email . ']');
                         die;
                     }
                 } else {
                     if (isset($_POST['cooperator']['cod_colaborador'])) {
                         $emailTO = new EmailTO();
                         $emailTO->cod_colaborador = $_POST['cooperator']['cod_colaborador'];
                         $emailTO->end_email = $email['end_email'];
                         if (!$emailDao->saveEmail($emailTO)) {
                             Flight::halt(500, 'Erro ao salvar o email [' . $emailTO->end_email . ']');
                             die;
                         }
                     }
                 }
             }
         }
     }
     if (sendMail('[SIG BackOffice] Solicitação de Alteração de Dados', 'conferencia_dados.php', $destinatarios, $_POST)) {
         Flight::halt(200, 'Dados enviado com sucesso!<br/>Alterações como E-mail e Telefone serão atualizadas no próximo login.');
     } else {
         Flight::halt(500, 'Ocorreu algum erro ao tentar enviar o e-mail!<br/>Tente novamente.');
     }
 }
コード例 #2
0
 public static function requestUpdateFornecedor()
 {
     try {
         $dados = $_POST;
         $id_empreendimento = $dados['id_empreendimento'];
         $PrestaShopDao = new PrestaShopDao($dados['id_empreendimento']);
         $ReferenciaIntegracaoDao = new ReferenciaIntegracaoDao();
         $ReferenciaFornecedorTO = new ReferenciaIntegracaoTO();
         $ReferenciaFornecedorTO->sistema_integrado = 'PrestaShop';
         $ReferenciaFornecedorTO->tabela = 'tbl_fornecedores';
         $ReferenciaFornecedorTO->id_item_referencia = $dados['fornecedor']['id'];
         $ReferenciaFornecedorTO->tipo = 'fornecedor';
         $ReferenciaFornecedorTO->id_empreendimento = $id_empreendimento;
         $referenciaFornecedor = $ReferenciaIntegracaoDao->refExists($ReferenciaFornecedorTO, true);
         if (!$referenciaFornecedor) {
             self::requestSaveFornecedor();
             return;
             //throw new Exception('Não existe uma referencia para o fornecedor #'.$dados['fornecedor']['id'], 1);
         }
         $ReferenciaEstadoTO = new ReferenciaIntegracaoTO();
         $ReferenciaEstadoTO->sistema_integrado = 'PrestaShop';
         $ReferenciaEstadoTO->tabela = 'tb_estados';
         $ReferenciaEstadoTO->id_item_referencia = $dados['address']['id_state'];
         $ReferenciaEstadoTO->tipo = 'estado';
         $referenciaEstado = $ReferenciaIntegracaoDao->refExists($ReferenciaEstadoTO, true);
         if (!$referenciaEstado) {
             throw new Exception('Não existe uma referencia para o estado #' . $dados['id_state'], 1);
         }
         $ReferenciaBrasilTO = new ReferenciaIntegracaoTO();
         $ReferenciaBrasilTO->sistema_integrado = 'PrestaShop';
         $ReferenciaBrasilTO->tipo = 'brasil';
         $referenciaBrasil = $ReferenciaIntegracaoDao->refExists($ReferenciaBrasilTO);
         if (!$referenciaBrasil) {
             throw new Exception('Não existe uma referencia para o Pais Brasil', 1);
         }
         $FornecedorTO = new stdClass();
         $FornecedorDao = new FornecedorDao();
         $FornecedorTO->id = $referenciaFornecedor['id_item'];
         $FornecedorTO->nome_fornecedor = $dados['fornecedor']['name'];
         $FornecedorTO->id_empreendimento = $id_empreendimento;
         $FornecedorTO->num_cep = $dados['address']['postcode'];
         $FornecedorTO->nme_endereco = $dados['address']['address'];
         $FornecedorTO->nme_bairro = $dados['address']['address2'];
         $FornecedorTO->cod_estado = $referenciaEstado['id_item'];
         if (!$FornecedorDao->updateFornecedor($FornecedorTO)) {
             throw new Exception('Erro ao cadastrar o fornecedor', 1);
         }
         $ReferenciaIntegracaoTO = new ReferenciaIntegracaoTO();
         $ReferenciaIntegracaoTO->sistema_integrado = 'PrestaShop';
         $ReferenciaIntegracaoTO->tabela = 'tbl_fornecedores';
         $ReferenciaIntegracaoTO->id_item = $referenciaFornecedor['id_item'];
         $ReferenciaIntegracaoTO->id_item_referencia = $dados['fornecedor']['id'];
         $ReferenciaIntegracaoTO->tipo = 'fornecedor';
         $ReferenciaIntegracaoTO->id_empreendimento = $id_empreendimento;
         if (isset($dados['address']['phone'])) {
             $ReferenciaTelefoneTO = new ReferenciaIntegracaoTO();
             $ReferenciaTelefoneTO->sistema_integrado = 'PrestaShop';
             $ReferenciaTelefoneTO->tabela = 'tbl_telefone';
             $ReferenciaTelefoneTO->id_item_referencia = $dados['fornecedor']['id'];
             $ReferenciaTelefoneTO->tipo = 'telefone_fornecedor';
             $ReferenciaTelefoneTO->id_empreendimento = $id_empreendimento;
             $referenciaTelefone = $ReferenciaIntegracaoDao->refExists($ReferenciaTelefoneTO, true);
             $TelefoneDao = new TelefoneDao();
             $telefones[0] = array('num_telefone' => $dados['address']['phone'], 'tbl_referencia' => 'tbl_fornecedores');
             if ($referenciaTelefone) {
                 $telefones[0]['id'] = $referenciaTelefone['id_item'];
                 if (!$TelefoneDao->updateTelefones($telefones, $referenciaFornecedor['id_item'])) {
                     throw new Exception('erro ao atualizar telefones do fornecedor', 1);
                 }
             } else {
                 $TelefoneTO = new TelefoneTO();
                 $TelefoneTO->tbl_referencia = 'tbl_fornecedores';
                 $TelefoneTO->id_referencia = $referenciaFornecedor['id_item'];
                 $TelefoneTO->num_telefone = $dados['address']['phone'];
                 $id_telefone = $TelefoneDao->saveTelefone($TelefoneTO);
                 if (!$id_telefone) {
                     throw new Exception('erro ao inserir telefone do fornecedor', 1);
                 }
                 $ReferenciaTelefoneTO->id_item = $id_telefone;
                 if (!$ReferenciaIntegracaoDao->save($ReferenciaTelefoneTO)) {
                     throw new Exception('erro ao inserir referencia', 1);
                 }
             }
         }
     } catch (Exception $e) {
         $log = new KLogger("logs/logErrorPrestaShop.txt", KLogger::DEBUG);
         $log->LogError($e->getMessage() . '- file:' . $e->getFile() . ' - line:' . $e->getLine());
         $log->LogDebug(json_encode($_POST));
         $log->LogJunp();
         Flight::halt(500, $e->getMessage() . '- file:' . $e->getFile() . ' - line:' . $e->getLine());
     }
 }