[AsteriskBrasil] Script - Tarifação Billing
Leonardo
leosud em gmail.com
Quarta Julho 1 16:49:53 BRT 2009
Caros Gurus,
Gostaria de compartlhar com vcs um script de tarifação bem simples em php
que faz a tarifação por tempo que calcula da seguinte forma 1º minuto cheio
depois de 6/6`s da mesma forma que a maioria das operadoras cobram como eu
precisei e deu um trampo pra montar a função acredito que alguem mais vai
precisar segue abaixo;
<?
$var_tempo_total = $_POST['txtTempo'];
if($_POST['txtTarifa']){
$var_tarifa = str_replace(",",".",$_POST['txtTarifa']);
}
$var_primeiro_minuto = $var_tempo_total-60;
if ($var_primeiro_minuto <= 0){ // se o tempo do primeiro minuto for menor
que 1 seta o tempo igaul a 1
$var_tempoTotal = number_format(1);
}
else{
$var_tempoTotal = number_format(1); // seta o tempo total igaul a 1
$var_restante_tempo_total = $var_primeiro_minuto / 60; // divide a
quantidade de segundos por 60 para ter a quantidade de minutos
$var_restante_tempo = explode(".", $var_restante_tempo_total); // quebra o
resultado da divisão em 2 aprtes por .
$var_restante_tempo_int = $var_restante_tempo[0]; //pega só o valor inteiro
da divisão
$var_tempoTotal += $var_restante_tempo_int; // soma o tempo total
previamente setado como 1 + o valor inteiro da divisão
$var_resto_divisao = $var_primeiro_minuto % 60; // pega o valor do resto da
divisão
$var_fracao_minuto = number_format($var_resto_divisao / 6); // divide o
valor do resto da divisão por 6, e transforma em numero inteiro
if ($var_fracao_minuto> 0){ // se o valor do resto da divisão por 6 for
maior que 0, concatena o tempo total com ponto e valor da fracao de minuto
$var_tempoTotal .= "." . $var_fracao_minuto;
}
}
$var_ValorTotal = $var_tempoTotal * $var_tarifa; // efetua o calculo do
tempo X o valor da tarifa
echo ("Tempo digitado = ".$var_tempo_total).'<br />';
echo ("Efetua a conta de <font color='red'>tempo digitado - 60 </font> =
".$var_primeiro_minuto).'<br />';
echo ("Mostra o valor inteiro da divisão de " . $var_primeiro_minuto
. "/60 = ".$var_restante_tempo[0]).'<br />';
echo ("Efetua a conta para ver qual é o resto da divisão =
".$var_resto_divisao).'<br />';
echo ("Efetua a conta para ver quantos décimos de minutos temos com o
resto da divisão= ".$var_fracao_minuto).'<br />';
echo ("Valor da Tarifa = ".$var_tarifa).'<br />';
echo ("Tempo Total = ".$var_tempoTotal).'<br />';
echo ("Valor Total = ".$var_ValorTotal).'<br />';
?>
<p> </p>
<table width="300" border="1" bordercolor="#630000" cellpadding="3"
cellspacing="0">
<tr>
<td>
<font size="2" face="verdana,arial,georgia" color="#630000">Digite a
quantidade de segundos !</font>
<form action="<? echo $_SERVER['PHP_SELF'] ?>" method="post">
<p>Segundos
<input type="text" size="20" name="txtTempo">
<br>
<br>
Tarifa
<input type="text" size="20" name="txtTarifa">
<br>
<br>
* lembrando que o modo da tarifação é 1º
minuto cheio e depois a cada 6 segundos</p>
<p>60/6</p>
<p>
<input type="submit" value="Enviar Tempo">
</p>
</form> </td></tr>
</table>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20090701/da53f955/attachment.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil