assign($key, str_replace('.', ',', $dadosAltera[$key])); } $acaoForm = 'Alterar'; $tipoOpera = $dadosAltera['prc_tipo_opera']; $tipoOpera = ""; } else if (isset($_POST['btGravar'])) { foreach ($fields as $key) { $dadosForm[$key] = $_POST[$key]; } /* * Excecoes e formatacoes */ $dadosForm['prc_vigencia'] = FormatDtMssql($_POST['prc_vigencia']); $dadosForm['prc_franquia'] = soNumero($_POST['prc_franquia']); $dadosForm['prc_franquia_preco'] = FormataValorBd($_POST['prc_franquia_preco']); $dadosForm['prc_preco_vc1'] = FormataValorBd($_POST['prc_preco_vc1']); $dadosForm['prc_preco_vc2'] = FormataValorBd($_POST['prc_preco_vc2']); $dadosForm['prc_preco_vc3'] = FormataValorBd($_POST['prc_preco_vc3']); $dadosForm['prc_preco_vc4'] = FormataValorBd($_POST['prc_preco_vc4']); $dadosForm['prc_preco_vc5'] = FormataValorBd($_POST['prc_preco_vc5']); $dadosForm['prc_preco_vc6'] = FormataValorBd($_POST['prc_preco_vc6']); /* * Variaveis recebidas por get */ $dadosForm['contr_dia_fechamento'] = $contr_dia_fechamento; $prc_tipo_opera = isset($_POST['tipo_opera']) ? $_POST['tipo_opera'] : $_POST['prc_tipo_opera']; //->Operadora contrato 1 -> Outras operadoras $prc_vigenci = $dadosForm['prc_vigenci']; $query = sprintf("select count(*) from pbx_tarif_contrato_preco where contr_id = '%s' and prc_vigencia = '%s' and prc_tipo_opera = '%s'", $contr_id, $dadosForm['prc_vigencia'], $dadosForm['prc_tipo_opera']); //echo $query . "\n\n"; if ($contr_id && RegistroInc($dbcon, $query)) { $query = " update pbx_tarif_contrato_preco set prc_tipo = {prc_tipo}, prc_franquia = {prc_franquia}, prc_franquia_preco = {prc_franquia_preco}, prc_preco_vc1 = {prc_preco_vc1}, prc_preco_vc2 = {prc_preco_vc2}, prc_preco_vc3 = {prc_preco_vc3}, prc_preco_vc4 = {prc_preco_vc4}, prc_franquia_movel = {prc_franquia_movel}, prc_preco_vc1_cad = {prc_preco_vc1_cad}, prc_preco_vc2_cad = {prc_preco_vc2_cad}, prc_preco_vc3_cad = {prc_preco_vc3_cad}, prc_preco_vc4_cad = {prc_preco_vc4_cad}, prc_preco_vc1_ext = {prc_preco_vc1_ext}, prc_preco_vc2_ext = {prc_preco_vc2_ext}, prc_preco_vc3_ext = {prc_preco_vc3_ext}, prc_preco_vc4_ext = {prc_preco_vc4_ext}, contr_dia_fechamento = {contr_dia_fechamento}, prc_preco_vc5 = {prc_preco_vc5}, prc_preco_vc6 = {prc_preco_vc6}, prc_preco_vc5_cad = {prc_preco_vc5_cad}, prc_preco_vc6_cad = {prc_preco_vc6_cad}, prc_preco_vc5_ext = {prc_preco_vc5_ext}, prc_preco_vc6_ext = {prc_preco_vc6_ext} where contr_id = {contr_id} and prc_vigencia = {prc_vigencia} and prc_tipo_opera = {prc_tipo_opera}"; } else { $query = "insert into pbx_tarif_contrato_preco (contr_id, prc_vigencia, prc_tipo_opera, prc_tipo, prc_franquia, prc_franquia_movel, prc_franquia_preco, prc_preco_vc1, prc_preco_vc2, prc_preco_vc3, prc_preco_vc4, prc_preco_vc1_cad, prc_preco_vc2_cad, prc_preco_vc3_cad, prc_preco_vc4_cad, prc_preco_vc1_ext, prc_preco_vc2_ext, prc_preco_vc3_ext, prc_preco_vc4_ext, contr_dia_fechamento, prc_preco_vc5, prc_preco_vc6, prc_preco_vc5_cad, prc_preco_vc6_cad, prc_preco_vc5_ext, prc_preco_vc6_ext) values({contr_id},{prc_vigencia},{prc_tipo_opera},{prc_tipo},{prc_franquia},{prc_franquia_movel},{prc_franquia_preco},{prc_preco_vc1},{prc_preco_vc2},{prc_preco_vc3},{prc_preco_vc4},{prc_preco_vc1_cad},{prc_preco_vc2_cad},{prc_preco_vc3_cad},{prc_preco_vc4_cad},{prc_preco_vc1_ext},{prc_preco_vc2_ext},{prc_preco_vc3_ext},{prc_preco_vc4_ext}, {contr_dia_fechamento}, {prc_preco_vc5}, {prc_preco_vc6}, {prc_preco_vc5_cad}, {prc_preco_vc6_cad}, {prc_preco_vc5_ext}, {prc_preco_vc6_ext})"; } foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } $result = pg_query($dbcon, 'begin'); //echo $query; exit; if ($result) $result = pg_query($dbcon, $query); $query = " update pbx_tarif_contrato_preco set prc_franquia = {prc_franquia}, prc_franquia_preco = {prc_franquia_preco}, prc_franquia_movel = {prc_franquia_movel}, prc_tipo = {prc_tipo} where contr_id = {contr_id} "; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); $dadosForm['contr_tipo_franquia'] = $contr_tipo_franquia; $dadosForm['contr_dia_fechamento'] = $contr_dia_fechamento; if ($result) $result = AtualizaFranquia($dbcon, $dadosForm); if ($result) { @pg_query($dbcon, 'commit'); foreach ($fields as $key) { $smarty->assign($key, $_POST[$key]); } } else { @pg_query($dbcon, 'rollback'); foreach ($fields as $key) { if (!array_key_exists($key, $fieldsKey)) $smarty->assign($key, ''); } $jsStartup[] = "alert('Não foi possível realizar a operação!');"; } } $linha = "%s%s%s%s%s%s%s%s%s%s%s%s"; $query = "select prc_id, contr_id, prc_vigencia, prc_tipo_opera, prc_tipo, prc_franquia, prc_franquia_movel, prc_franquia_preco, prc_preco_vc1, prc_preco_vc2, prc_preco_vc3, prc_preco_vc4, prc_preco_vc5, prc_preco_vc6 from pbx_tarif_contrato_preco where contr_id = '$contr_id'"; $result = pg_query($dbcon, $query); $linhas = ''; while ($dados = pg_fetch_array($result)) { $prc_id = $dados['prc_id']; //$contr_id = $dados['contr_id']; $prc_vigenci = FormataDBDataHora($dados['prc_vigencia']); $prc_tipo_opera = $dados['prc_tipo_opera'] == '0' ? 'Atual' : 'Outras'; $prc_tipo = $dados['prc_tipo'] == '1' ? 'Minuto' : 'Chamada'; $prc_franquia = $dados['prc_franquia']; $prc_franquia_movel = $dados['prc_franquia_movel']; $prc_franquia_preco = $dados['prc_franquia_preco']; $prc_preco_vc1 = $dados['prc_preco_vc1']; $prc_preco_vc2 = $dados['prc_preco_vc2']; $prc_preco_vc3 = $dados['prc_preco_vc3']; $prc_preco_vc4 = $dados['prc_preco_vc4']; $prc_preco_vc5 = $dados['prc_preco_vc5']; $prc_preco_vc6 = $dados['prc_preco_vc5']; $link = sprintf("%s", $prc_id, $contr_id, $contr_descricao, $oper_id, $oper_nome, $contr_tipo_franquia, $contr_dia_fechamento, $prc_vigenci); $linhas .= sprintf($linha, $link, $prc_tipo, $prc_franquia, $prc_franquia_movel, $prc_franquia_preco, $prc_preco_vc1, $prc_preco_vc2, $prc_preco_vc5, $prc_preco_vc3, $prc_preco_vc4, $prc_preco_vc6, $prc_tipo_opera); } if (empty($linhas)) $linhas = sprintf("%s", "Nenhum registro encontrado!"); $tipoCobranca = GetTipoCobranca(isset($_POST['prec_tipo']) ? $_POST['prec_tipo'] : 1); /* * Scripts clientes. */ $jsJQuery[] = "\$('#dataIni').keypress(function(){formataDataHora(this);});"; $smarty->assign('tituloCadastro', 'Cadastro de Preços'); $smarty->assign('linhas', $linhas); $smarty->assign('contr_id', $contr_id); $smarty->assign('contr_descricao', $contr_descricao); $smarty->assign('oper_id', $oper_id); $smarty->assign('oper_nome', $oper_nome); $smarty->assign('tipoCobranca', $tipoCobranca); $smarty->assign('acaoForm', isset($acaoForm) ? $acaoForm : 'Incluir'); $smarty->assign('tipoOpera', $tipoOpera); $smarty->assign('contr_tipo_franquia', $contr_tipo_franquia); $smarty->assign('contr_dia_fechamento', $contr_dia_fechamento); GetTemplate($smarty, $nomeTpl); function AtualizaFranquia($dbcon, $dadosForm) { $result = 1; $tff_mes = explode('-', $dadosForm['prc_vigencia']); $diaFechamento = GetFechamentoContrato($tff_mes[0], $tff_mes[1], $dadosForm['contr_dia_fechamento']); $dadosForm['tff_mes'] = $tff_mes[1]; $dadosForm['tfm_user'] = GetMatricula(); $tipoFranquia = $dadosForm['contr_tipo_franquia']; $query = "select tff_franquia, tff_franquia_movel from pbx_tarif_franquia where contr_id = {contr_id} and tff_mes = {tff_mes} "; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } $result = pg_query($dbcon, $query); if (!$result) return false; if (pg_num_rows($result)) { $dadosForm['tfm_tipo_franquia'] = $tipoFranquia; $dados = pg_fetch_array($result); if ($tipoFranquia == 0) { $query = "update pbx_tarif_franquia set tff_franquia = '0', tff_saldo = '0', tff_franquia_movel = '0', tff_saldo_movel = '0' where contr_id = {contr_id} and tff_mes = {tff_mes}"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } $result = pg_query($dbcon, $query); if (IsAdmin()) echo $query; if (!$result) return false; } else { if (($tipoFranquia == 1) || ($tipoFranquia == 2)) $atualizaFranquia = ($dados['tff_franquia'] != $dadosForm['prc_franquia']); else if ($tipoFranquia == 3) $atualizaFranquia = ($dados['tff_franquia_movel'] != $dadosForm['prc_franquia_movel']); else if ($tipoFranquia == 4) $atualizaFranquia = ($dados['tff_franquia'] != $dadosForm['prc_franquia']) || ($dados['tff_franquia_movel'] != $dadosForm['prc_franquia_movel']); if ($atualizaFranquia) { $result = pg_query($dbcon, 'begin'); //Esta modalidades nao usam movel if (($tipoFranquia == 1) || ($tipoFranquia == 2) || ($tipoFranquia == 3)) $dadosForm['prc_franquia_movel'] = 0; $query = "update pbx_tarif_franquia set tff_franquia = ({prc_franquia} * 60), tff_franquia_movel = ({prc_franquia_movel} * 60), contr_dia_fechamento = {contr_dia_fechamento} where contr_id = {contr_id} and tff_mes = {tff_mes}\n"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); //if(IsAdmin()) echo $query; if ($result) { $result = pg_query($dbcon, 'commit'); } else { $result = false; @pg_query($dbcon, 'rollback'); } } } } if ($result) return true; else return false; } function AtualizaFranquiaOld($dbcon, $dadosForm) { $result = 1; $tff_mes = explode('-', $dadosForm['prc_vigencia']); $diaFechamento = GetFechamentoContrato($tff_mes[0], $tff_mes[1], $dadosForm['contr_dia_fechamento']); $dadosForm['tff_mes'] = $tff_mes[1]; $dadosForm['tfm_user'] = GetMatricula(); $tipoFranquia = $dadosForm['contr_tipo_franquia']; $query = "select tff_franquia, tff_franquia_movel from pbx_tarif_franquia where contr_id = {contr_id} and tff_mes = {tff_mes} "; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } $result = pg_query($dbcon, $query); if (!$result) return false; if (pg_num_rows($result)) { $dadosForm['tfm_tipo_franquia'] = $tipoFranquia; $dados = pg_fetch_array($result); if ($tipoFranquia == 0) { $query = "update pbx_tarif_franquia set tff_franquia = '0', tff_saldo = '0', tff_franquia_movel = '0', tff_saldo_movel = '0' where contr_id = {contr_id} and tff_mes = {tff_mes}"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } $result = pg_query($dbcon, $query); if (IsAdmin()) echo $query; if (!$result) return false; } else { if (($tipoFranquia == 1) || ($tipoFranquia == 2)) $atualizaFranquia = ($dados['tff_franquia'] != $dadosForm['prc_franquia']); else if ($tipoFranquia == 3) $atualizaFranquia = ($dados['tff_franquia_movel'] != $dadosForm['prc_franquia_movel']); else if ($tipoFranquia == 4) $atualizaFranquia = ($dados['tff_franquia'] != $dadosForm['prc_franquia']) || ($dados['tff_franquia_movel'] != $dadosForm['prc_franquia_movel']); if ($atualizaFranquia) { $result = pg_query($dbcon, 'begin'); //Esta modalidades nao usam movel if (($tipoFranquia == 1) || ($tipoFranquia == 2) || ($tipoFranquia == 3)) $dadosForm['prc_franquia_movel'] = 0; $query = "update pbx_tarif_franquia set tff_franquia = ({prc_franquia} * 60), tff_franquia_movel = ({prc_franquia_movel} * 60), contr_dia_fechamento = {contr_dia_fechamento} where contr_id = {contr_id} and tff_mes = {tff_mes}\n"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); //if(IsAdmin()) echo $query; $limit = ($tipoFranquia == 4) ? 2 : 1; $dadosCampoFranquia = ($tipoFranquia == 3) ? 'tff_franquia_movel' : 'tff_franquia'; $formCampoFranquia = ($tipoFranquia == 3) ? 'prc_franquia_movel' : 'prc_franquia'; $tmf_tipo_saldo = ($tipoFranquia == 3) ? 'M' : 'F'; for ($i = 1; $i <= $limit; $i++) { if ($dados[$dadosCampoFranquia] > $dadosForm[$formCampoFranquia]) { $dadosForm['tfm_lanc'] = $dadosForm[$formCampoFranquia] - $dados[$dadosCampoFranquia]; $dadosForm['tfm_tipo_lanc'] = 'D'; $dadosForm['tfm_motivo'] = 'Reducao na franquia inserida no cadastro de preco'; } else { $dadosForm['tfm_lanc'] = $dadosForm[$formCampoFranquia] - $dados[$dadosCampoFranquia]; echo sprintf("CampoForm: %s CampoDados: %s ValorForm: %s valorDados: %s Saldo: %s", $formCampoFranquia, $dadosCampoFranquia, $dadosForm[$formCampoFranquia], $dados[$dadosCampoFranquia], $dadosForm['tfm_lanc']); $dadosForm['tfm_tipo_lanc'] = 'C'; $dadosForm['tfm_motivo'] = 'Incremento na franquia inserida no cadastro de preco'; } $query = " insert into pbx_tarif_franquia_movimento ( prc_id, contr_id, tfm_mes, uniqueid, tfm_data, tfm_lanc, tfm_tipo_lanc, tfm_motivo, tfm_user, tfm_tipo_franquia, tmf_tipo_saldo) values( 0, {contr_id}, {tff_mes}, 0, now(), ({tfm_lanc} * 60), {tfm_tipo_lanc}, {tfm_motivo}, {tfm_user}, {contr_tipo_franquia}, '$tmf_tipo_saldo' )\n"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); if (IsAdmin()) echo $query; if (($tipoFranquia != 4)) break; $dadosCampoFranquia = 'tff_franquia_movel'; $formCampoFranquia = 'prc_franquia_movel'; $tmf_tipo_saldo = 'M'; } if ($result) { pg_query($dbcon, 'commit'); } else { pg_query($dbcon, 'rollback'); } } } } else { if ($tipoFranquia == 0) return true; $result = pg_query($dbcon, 'begin'); /* $query = "insert into pbx_tarif_franquia ( contr_id, tff_mes, tff_data, tff_franquia, tff_saldo, tff_franquia_movel, tff_saldo_movel) values({contr_id},{tff_mes},now(),{prc_franquia} * 60,'0',{prc_franquia_movel} * 60,'0')"; foreach ($dadosForm as $key => $value){ $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if($result) $result = pg_query($dbcon, $query); //if(IsAdmin()) echo $query; */ if (($tipoFranquia == 3) || ($tipoFranquia == 4)) { $dadosForm['tfm_lanc'] = $dadosForm['prc_franquia_movel']; $dadosForm['tfm_tipo_lanc'] = 'C'; $dadosForm['tfm_motivo'] = 'franquia inserida no cadastro de preco'; $query = " insert into pbx_tarif_franquia_movimento ( prc_id, contr_id, tfm_mes, uniqueid, tfm_data, tfm_lanc, tfm_tipo_lanc, tfm_motivo, tfm_user, tfm_tipo_franquia, tmf_tipo_saldo) values( 0, {contr_id}, {tff_mes}, 0, now(), ({tfm_lanc} * 60), {tfm_tipo_lanc}, {tfm_motivo}, {tfm_user}, {contr_tipo_franquia}, 'M' )"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); if (IsAdmin()) echo $query; } $dadosForm['tfm_lanc'] = $dadosForm['prc_franquia']; $dadosForm['tfm_tipo_lanc'] = 'C'; $dadosForm['tfm_motivo'] = 'Reducao na franquia inserida no cadastro de preco'; $query = " insert into pbx_tarif_franquia_movimento ( prc_id, contr_id, tfm_mes, uniqueid, tfm_data, tfm_lanc, tfm_tipo_lanc, tfm_motivo, tfm_user, tfm_tipo_franquia, tmf_tipo_saldo) values( 0, {contr_id}, {tff_mes}, 0, now(), ({tfm_lanc} * 60), {tfm_tipo_lanc}, {tfm_motivo}, {tfm_user}, {contr_tipo_franquia}, 'F' )"; foreach ($dadosForm as $key => $value) { $query = str_replace(sprintf('{%s}', $key), QuotedStr($value), $query); } if ($result) $result = pg_query($dbcon, $query); //if(IsAdmin()) echo $query; if ($result) $result = pg_query($dbcon, 'commit'); else @pg_query($dbcon, 'rollback'); } if ($result) return true; else return false; } ?>