Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Joob

Pagamento Hora a Hora

Recommended Posts

Boas malta,
Tenho um pequeno problema em relação a um pagamento que deverá ser feito de hora em hora, o problema é que ele até faz de hora em hora mas faz só uns 4 pagamentos e para, não faz mais, e neste caso deveria fazer pelo respectivo período de contracto, mas de hora em hora.
                    $verifica = Investimento::where('wallet', $wallet)->first();
                    $dt = Carbon::now();
                    $dt2 = Carbon::now()->addMonths($verifica->periodo);
                    $daysForExtraCoding = $dt->diffInDaysFiltered(function(Carbon $date) {
                     return $date->diffInDays();
                     }, $dt2);
	            $divide = ($daysForExtraCoding / 7);
                    $semanas =  intval($divide);

                    $pago = BlocktrailSDK::toBtc($txData['data']['estimated_value']);

                    if ($verifica->periodo == '1') {

                        $r = ($pago / 100 * 8 / 30);
                        $porcentagem = $r;
			$valor = ($porcentagem / $semanas);
                        $pagar = Utils::Coin($valor);

                    }

Não sei se me fiz entender..

Abraço ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não seria viável criar uma cron que execute de hora em hora e verifique todas as entradas que necessitam ter seu valor alterado e faz a respectiva alteração ? Assim o Script não fica "aberto", apenas executa na hora da cron e espera a próxima cron até executar novamente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao estou conseguindo..

Penso eu que seria mais facil e mais certo fazer a contagem de hora a hora pelo codigo php ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas vai ser pelo código php, a cronjob só vai "acionar" o arquivo automaticamente sem alguém precisar executar o código, é como se você programasse um "robô" pra entrar naquela URL de hora em hora, isso você configura no cPanel, se você pesquisar na internet vai ver que é bem simples, 1 linha de comando na cron já resolve seu problema.

Vou te dar uma ideia, pelo que entendi é um sistema de estacionamento, certo ? O que tu pode fazer é o seguinte:

1) Quando o veículo der entrada, cria um registro no BD com status = 1 e quando ele sair altera status = 0 ou deleta da tabela.

2) Crie um script php em que ele vai checar todos os veículos com status = 1 e as tuas condições para alterar o valor, você pode criar uma coluna datahora na tabela de entrada de veículos e fazer algo mais ou menos assim:

$data_entrada = new DateTime( $data_entrada_do_db );
$agora = new DateTime( date('Y-m-d H:i:s') );
$intervalo_de_horas = $data_entrada->diff($agora)->h;

if($intervalo_de_horas < 1) {
   $preco = 6.00;
}elseif($intervalo_de_horas == 1){
   $preco = 10.00;
} // e vai criando todas as condições para alterar o preço


// faz update na tabela de entrada setando preco_a_pagar = $preço

4) Crie a cronjob que vai executar de hora em hora para acessar este arquivo, assim o sistema vai alterar automaticamente!

Agora eu dei mastigado e regurgitado ein hahaha, só por na prática ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.