Olá!
Estava desenvolvendo um sistema para gerar boletos e me deparei com o seguinte problema: gerar o boleto com vencimento somente para dias úteis. É claro que, se o vencimento do boleto estivesse caindo em um sábado, por exemplo, bancos e lotérica aceitariam o pagamento em uma segunda-feira. Porém, para o tipo de negócio que estou desenvolvendo o sistema, que é um sistema de venda de ingressos, o cliente tem de pagar o ingresso com uma certa antecedência da data do evento. Por isso, precisa-se calcular fatores como: dias para pagamento do boleto e dias para confirmar o pagamento (geralmente é 48 horas, 2 dias).
Então, para que eu possa ver em qual data cairia o pagamento do boleto, resolvi trabalhar em um método/função. Sabendo em qual data seria o limite para o pagamento, adicionando dois dias para a confirmação de pagamento, poderia comparar com a data do evento. Se a data do evento for maior que a data limite para o pagamento mais dois dias, o boleto poderá ser gerado para essa data. Caso contrário, somente o pagamento por Cartão de Crédito seria permitido.
Método/Função 1 – Pega o dia da semana
Esse método não foi desenvolvido por mim. Foi criado pelo Felipe Marques. O usei, porém, para poder pegar o dia da semana de determinada data em Português.
Função 2 – Retorna uma data em dia útil de acordo com a data de geração da venda
Esse método não foi desenvolvido por mim. Foi criado pelo Felipe Marques. O usei, porém, para poder pegar o dia da semana de determinada data em Português.
Exemplo: Digamos que a venda de um ingresso para o dia 25/11/2014 (terça-feira) em uma quinta-feira ($data = 20/11/2014). Se definirmos como 3 dias o prazo para pagamento do produto (DIAS_PGTO), o pagamento poderá ser realizado até o dia 23 de novembro (Domingo). Porém, nesse dia, por não ser dia útil, não é possível pagar o boleto. O pagamento seria realizado no próximo dia útil – segunda-feira (24/11/2014). Como o prazo para confirmar o pagamento é de até 48 horas, o prazo extrapolaria a data do evento para qual o ingresso seria vendido (dia 25). Com esse método, podemos fazer a verificação (a verificação se uma data é menor que a outra não está explícita na função) e impedir tal venda por boleto. Não sei se fui bem claro, mas espero que tenham entendido. Obrigado!
fala William, meu nome não é Felipe Caio… é Felipe Marques .. hehehe… o email felipecaioba@gmail.com é a junção do meu nome com o balneário Caiobá – Matinhos – PR. Obrigado pela menção ao meu post!
Olá Filipe, eu que agradeço pela função! Vou corrigir.
Bom dia William e Felipe,
Preciso calcular os dias úteis do mês atual até o dia 25 e ainda somar com os dias úteis a partir do dia 26 do mês passado, exemplo: a comissão de técnicos é calculada entre 26/11/2015 à 25/12/2015 e assim por diante.
Podem me ajudar, não consigo criar essa função, vocês sabem como fazer?
Obrigado
Olá Júnior, vou dar uma estudada. Obrigado!
Obrigado, William.