%s %s %s %s %s %s %s '; $query = " select id, matricula, nome, apelido, saldo_prepago, habilita_prepago from pbx_cs_usuarios where status = 'A' "; if (IsPostBack()) { $contasSel = false; if (isset($_POST['btLancamento'])) { //print_r($_POST);exit; $contas = isset($_POST['conta']) ? $_POST['conta'] : false; $contasSel = false; if ($contas !== false) { $contasSel = array(); foreach ($contas as $value) { $ramalPost = explode(";", $value); $contasSel[] = $ramalPost[0]; } } if ($contas === false) { $jsStartup[] = "alert('Para realizar esta operação é necessário selecionar pelo menos uma conta!');"; $contasSel = false; } else if (!$_POST['operacao_ramal']) { $jsStartup[] = "alert('Selecione um tipo de operação!');"; } else { $habConta = $_POST['operacao_ramal'] == 1; $valor = isset($_POST['credito_ramal']) ? $_POST['credito_ramal'] : 0.0; $valor = FormataValorBd($valor); $usuario = GetLogin(); if ((!$habConta) && ((!$valor) || ($valor <= 0) )) { $jsStartup[] = "alert('Para realizar esta operação é necessário informar um valor!');"; } else { $msg = ''; $queryRamal = 'begin'; $result = pg_query($dbcon, $queryRamal); foreach ($contas as $value) { $ramalPost = explode(";", $value); $numConta = $ramalPost[0]; $hab = $ramalPost[1]; if ($habConta) { $queryRamal = sprintf("update pbx_cs_usuarios set habilita_prepago = '%s' where matricula = '%s' \n", ($hab ? '0' : '1'), $numConta); if ($result) $result = pg_query($dbcon, $queryRamal); if (!$result) break; } else { if (!$hab) { $msg = 'Não é permitido realizar lançamentos para "Contas Desabilitadas"!'; $result = false; break; } $queryRamal = " insert into pbx_prepago_movimento (prm_ramal_conta, prm_conta_senha, trr_id, prm_valor_minuto, prm_tempo, prm_destino, prm_valor, prm_data, prm_data_lanc, prm_tipo_lancamento, prm_historico, usuario) values('$numConta', '1', '0', '0', '0', '0', '$valor', now()::date, now(), 'C', 'Inclusao de Credito', '$usuario')"; if ($result) $result = pg_query($dbcon, $queryRamal); //$queryRamal = sprintf("update pbx_cs_usuarios set saldo_prepago = (saldo_prepago + %s) where matricula = '%s'", $valor, $numConta); //if($result) $result = pg_query($dbcon, $queryRamal); if (!$result) break; } } if ($result) { $queryRamal = 'commit'; pg_query($dbcon, $queryRamal); $jsStartup[] = "alert('Operação realizada com sucesso!');"; } else { $queryRamal = 'rollback'; pg_query($dbcon, $queryRamal); $msg = $msg ? $msg : 'Não foi possível realizar a operação!'; $jsStartup[] = "alert('$msg');"; } } } } $numero_conta = strtoupper($_POST['numero_conta']); } else { $numero_conta = ''; $query .= " and 1 = 2 "; } if ($numero_conta) { if ((strpos($numero_conta, ",") !== false) || (strpos($numero_conta, ";") !== false)) { $numero_conta = str_replace(";", ",", $numero_conta); $numero_conta = str_replace("-", ",", $numero_conta); $numSel = ''; $numeros = explode(",", $numero_conta); foreach ($numeros as $numero) { $numSel .= !$numSel ? "'$numero'" : ",'$numero'"; } $query .= "and matricula in($numSel)"; } else if (strpos($numero_conta, "-") !== false) { $numSel = ''; $numeros = explode("-", $numero_conta); $query .= sprintf("and matricula >= '%s' and matricula <= '%s'", $numeros[0], $numeros[1]); } else $query .= "and matricula::text like '%$numero_conta%'"; } $query .= " order by 3"; $result = pg_query($dbcon, $query); $linhas = ''; $linhaTemp = ''; $imp = 0; while ($dados = pg_fetch_array($result)) { $matricula = $dados['matricula']; $sel = ($contasSel !== false) && (array_search($matricula, $contasSel) !== false) ? 'checked="checked"' : ""; $sel = sprintf('', $dados['id'], $dados['matricula'], $dados['habilita_prepago'], $sel); $nome = $dados['nome']; $apelido = $dados['apelido']; $saldo = FormataValor($dados['saldo_prepago']); $habConta = $dados['habilita_prepago']; $habilita = $dados['habilita_prepago'] ? 'Habilitado!' : 'Desabilitado!'; $lanc = 'Lançamentos!'; $linkLanc = "$lanc"; $linhaTemp = sprintf($linha, $sel, $matricula, $nome, $apelido, $saldo, $habilita, $linkLanc); $linhas .= $linhaTemp; $imp++; } if (!IsPostBack()) { $linhas .= 'Informe os parametros e clique em consultar!'; } else if ($imp) { $linhas .= sprintf('%s %s', $imp, ($imp > 1 ? 'Contas encontradas!' : 'Conta encotrada!')); } else { $linhas .= 'Nenhum registro encontrado!'; } $smarty->assign('numero_conta', $numero_conta); $smarty->assign('linhas', $linhas); $smarty->assign('msgErro', $msgErro); GetTemplate($smarty, $nomeTpl); ?>