forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.5 KiB
63 lines
2.5 KiB
<?php |
|
|
|
/* |
|
* Associa os valores |
|
*/ |
|
$paramValue = GetValuesIntegracaoAtv($paramMapa, $arDados); |
|
|
|
/* |
|
* Tras informações sobre o método |
|
*/ |
|
$infoMetodo = GetInfoMetodo($idMetodo); |
|
|
|
if ($infoMetodo === false) { |
|
$msg = "Nao foi possivel obter informacoes sobre o metodo!"; |
|
__logStr("GetInfoMetodo", $msg, $scrpt, true); |
|
} else { |
|
//select a.itgm_tipo, a.itgm_comando, itgm_retorno, a.opcao as opcao_metodo, a.stored_params, |
|
//c.itgp_prefix, b.itgc_host, b.itgc_port, b.itgc_database, b.itgc_user, b.itgc_password, b.itgc_timeout, b.opcao, b.acao |
|
//"1|#|uid@2|#|fone@5|123|tipo" |
|
$host = $infoMetodo['itgc_host']; |
|
$port = $infoMetodo['itgc_port']; |
|
$dataBase = $infoMetodo['itgc_database']; |
|
$user = $infoMetodo['itgc_user']; |
|
$passWord = $infoMetodo['itgc_password']; |
|
$isProcedure = $infoMetodo['itgm_tipo']; |
|
$opc = $infoMetodo['opcao']; |
|
$acao = $infoMetodo['acao']; |
|
$tipoDb = $infoMetodo['itgp_prefix']; |
|
$cmd = $infoMetodo['itgm_comando']; |
|
$params = $infoMetodo['stored_params']; |
|
$evento = $infoMetodo['evento']; |
|
$noExec = $infoMetodo['itgm_comando'] == 'NOEXEC'; |
|
|
|
$db = new dbAbstract($tipoDb, $host, $port, $dataBase, $user, $passWord); |
|
if (!$noExec && !$db->db_connect()) { |
|
$dados = sprintf("host->%s portt->%s dataBaset->%s usert->%s passWordt->%s", $host, $port, $dataBase, $user, $passWord); |
|
$msg = sprintf("Nao foi possivel conectar a base de dados!!\nErro:[%s]\nDados:[%s]", $db->db_getmessage(), $dados); |
|
__logStr("db_connect", $msg, $scrpt, true); |
|
} else if (!$noExec) { |
|
$query = GetQueryIntegracao($cmd, $params); |
|
$result = $db->db_query($query); |
|
if (!$result) { |
|
$msg = sprintf("Erro ao executar comando no banco de dados!\nQuery: %s Erro: %s", $query, $db->db_getmessage()); |
|
__logStr("db_query", $msg, $scrpt, true); |
|
} else { |
|
/* |
|
* Verifica se a consulta retornou dados |
|
*/ |
|
if (!$db->db_rows_affected($result)) { |
|
$msg = sprintf("Executou o comando mas nao afetou nenhum registro!\nQuery: %s", $query); |
|
__logStr("db_num_rows", $msg, $scrpt, true); |
|
} else { |
|
$msg = sprintf("Executou o comando com sucesso!\nQuery: %s", $query); |
|
__logStr("db_num_rows", $msg, $scrpt, false); |
|
} |
|
} |
|
} else { |
|
$msg = "NOEXEC PARA ESTE EVENTO"; |
|
__logStr("db_num_rows", $msg, $scrpt, false); |
|
} |
|
|
|
@AtualizaEvento($uid, substr($msg, 0, 1024), $evento); |
|
}
|
|
|