Durante a semana passada me deparei com um problema. Precisava calcular horas extras para o pessoal do trabalho, porém as horas extras são diferenciadas entre dias normais, domingos e feriados. Resolvi o primero problema fácil fácil, o cálculo da hora extra:
Em horário de trabalho normal, a hora custa X, hora extra em dia normal custa X + 50% de X, em um domingo ou feriado a hora extra custa X + 100% de X. Até aí bem fácil, o problema foi: como saber pela data se ela é feriado? Pensei em deixar o pessoal escolher, mas o chefe não quis assim, seria bem mais fácil pra mim rsrsrsrsrs mas enfim chefe é chefe. então liguei para um amigo alguns anos mais experiente que eu e o truque é esse:
Em horário de trabalho normal, a hora custa X, hora extra em dia normal custa X + 50% de X, em um domingo ou feriado a hora extra custa X + 100% de X. Até aí bem fácil, o problema foi: como saber pela data se ela é feriado? Pensei em deixar o pessoal escolher, mas o chefe não quis assim, seria bem mais fácil pra mim rsrsrsrsrs mas enfim chefe é chefe. então liguei para um amigo alguns anos mais experiente que eu e o truque é esse:
Multiplica-se o mês por 30 e soma-se com o número de dias. Hã? como assim? Pra que?
* no caso da seleção acima, gera o número de série (11*30) + 2 = 332
ahhhhhh aí vc cria uma tabela no banco de dados assim oh:
Daí vc faz uma leitura nessa tabela, se o número de série da data selecionada pelo funcionário bater com algum número de série da tabela acima, o funcionário trabalhou em um feriado!
Quando eu tiver mais um tempinho, posto o código comentado tb.
Espero ter ajudado vcs assim como meu amigo me ajudou!
Bjks e vida longa e próspera!
Nenhum comentário:
Postar um comentário