Sobre este projeto
it-programming / web-development
Aberto
Tenho um sistema que foi desenvolvido em php e mysql, porém algumas funcionalidades ainda precisam ser implementadas para que o mesmo atenda as nossas necessidades.
O sistema é voltado para a gestão de algumas associações de estudantes universitários, com foco no controle do transporte destes estudantes com a geração das cobranças. Preciso que sejam implementadas alterações conforme seguem descritas a seguir.
Envio os arquivos php, css e js que tenho além do sql da estrutura do banco de dados
são basicamente 3 telas e suas devidas funcionalidades.
Hoje o sistema possui praticamente todo o CRUD funcionando corretamente, preciso que sejam realizados os seguintes ajustes:
Alterações:
- criar o campo de "Isenção" no cadastro de usuários este campo somente deverá ser visível para acesso dos responsáveis pela associação.
Criar um acesso Super admin que será responsável pelo sistema, este usuário terá acesso a todas as funcionalidades do sistema .
- Restringir acesso de acordo com o perfil do usuário ( usuários integrantes da associação tem acesso à maioria dos cadastros EXCETO cadastro de empresas/associações(deverão acessar somente edição da associação a qual fazem parte)
- criar uma tabela de parâmetros do sistema, para uso exclusivo do Super Admin
campos:
ValorUsuario
TokenApi
Tela de Geração de Cálculo
- é uma tela que tem como objetivo realizar um 'fechamento' do mês de cada uma das rotas que a associação diponibiliza, ou seja, nesta tela, o responsável pela associação irá acessar a tela, selecionar uma rota e um mês e a partir daí o sistema deve carregar as informaçoes desta rota selecionada - buscar no banco de dados em tabelas diversas, considerando os filtros de rota e mês.
Exemplo do que deve ser apresentado ao usuário antes de disparar a ação de calcular
:
Rota XYZ
Mês: Julho de 2017
Quantidade de dias de transporte: 21
Custo do transporte: R$ 1.000,00
Quantidade total de estudantes da rota: 40
Quantidade de estudantes por dia da semana:
Segunda:40
Terça: 32
Quarta: 40
Quinta: 32
Sexta: 30
Sábado: 25
Domingo:0
Valor de Contas a pagar da rota: R$150,00
Valor de uso do sistema: R$ 200,00 (40 alunos x 5,00*)
* o valor por usuário do sistema será um parâmetro cadastrado pelo Super Admin conforme descrito anteriormente
Valor de passagens Avulsas do mês: 20,00
Com estes dados listados, o sistema deverá habilitar um botão para que o usuário clique e então dispare a geração do cálculo.
Primeira etapa do cálculo:
** Esta operação deve ser realizada internamente pelo sistema (pode ser uma função em php) que irá apenas retornar o resultado.
Somar o custo do transporte + contas a pagar da rota + valor por uso do sistema = R$1350,00(ex)
pegar o resultado da soma e dividir pelo número de dias de transporte do mês 1350/21 = 64,28 por dia. Aí pegar este valor e dividir pela quantidade de estudantes de cada dia da semana, ex:
Segunda:40 ----- 64,28/40 = 1,60
Terça: 32 ----- 64,28/32 = 2,00
Quarta: 40 ----- 64,28/40 = 1,60
Quinta: 32 ----- 64,28/32 = 2,00
Sexta: 30 ----- 64,28/30 = 2,14
Sábado: 25 ----- 64,28/25 = 2,57
Domingo:0 ----- 64,28/0 =
Com isso temos o valor de cada dia da semana de acordo com os estudantes que utilizam o transporte em cada dia, agora o sistema deverá buscar na tabela DiasMes, a quantidade de cada dia da semana no mês, ex
Julho 2017 tem:
5 Segundas_feira
4 Terças-feira
4 Quartas-feira
4 Quintas-feira
4 Sextas-feira
5 Sábados
5 Domingos
Com isso o sistema deverá realizar a multiplicação:
Segunda:40 ----- 64,28/40 = 1,60 x 5 = 8
Terça: 32 ----- 64,28/32 = 2,00 x 4
Quarta: 40 ----- 64,28/40 = 1,60 x 4 = 6,40
Quinta: 32 ----- 64,28/32 = 2,00 x 4
Sexta: 30 ----- 64,28/30 = 2,14 x 4 = 8,56
Sábado: 25 ----- 64,28/25 = 2,57 x 5
Domingo:0 ----- 64,28/0 = x 5
Com as informações de quanto custa o transporte em cada um dos dias da semana e total de cada dia da semana no mês, o sistema deve ir na tabela EmpresaUsuario e verificar quais os dias da semana que cada estudante usa o transporte para então multiplicar pelos valores de cada dia
Agora fisca fácil saber o valor que cada usuário deve pagar, por exemplo, um estudante que utiliza o transporte Segunda, quarta e sexta-feira, vai pagar R$ 22, 96 no mês (claro que estes valores são para fins de exemplo)
Parte dois do cálculo
Desconto da isenção dos integrantes da associação
Neste ponto o sistema já calculou o valor a pagar de cada estudante, porém há uma situação especial, pois os integrantes da diretoria da associação tem descontos (isenção) de acordo com o cargo que exercem na entidade, esse valor precisa agora ser descontado dos estudantes que ocupam cargos na diretoria.
Por exemplo (usando os dados acima), se este estudante fosse da diretoria e tivesse 50% de isenção, ele pagaria; 22,96- 50% = 11,48... Isso pode ocorrer para todos os cargos na diretoria, portanto precisa ser considerado e descontado do valor de cada usuário.
Porém, os valores que foram descontados de toda a diretoria, precisam ser somados, afinal, este valor deverá ser rateado entre os demais estudantes.
Isso requer uma nova execução de todo o cálculo, porém agora considerando somente os estudantes que não são da Diretoria. Ou seja, o processo do cálculo precisará ser realizado novamente somente com estes estudantes.
Depois disso, temos os valores de cada estudante, com isso basta apesentar em tela um resumo do cálculo realizado (possibilitar a exportação para arquivo xlsx).
Agora deverá ser apresentado para o usuário um botão "Realizar lançamentos", que irá inserir os dados resultantes do cálculo na tabela "Movimento" salvando dos dados identificando os usuários e os valores de cada um,
- painel de administração
Esta é a tela de entrada do sistema, nela o usuário responsável pela associação deverá ter um resumo do andamento da associação, como por exemplo:
- Rotas cadastradas (mostrar quantas rotas há cadastradas no sistema
- resumo do movimento (apresentar um total de contas a pagar, contas a receber)
- Lista dos últimos avisos cadastrados (apresentar uma lista do últimos 5 avisos cadastrados no sistema)
- Total de alunos (exibir o número total de alunos cadastrados no sistema para a associação)
Tela de lançamento do movimento
Após a geração do cálculo, o responsável irá visualizar o resumo das informações geradas e o sistema deverá habilitar o lançamento do movimento na respectiva tabela.
- O lançamento do movimento consiste em pegar os valores resultantes do cálculo gerado, buscar na tabela 'EmpresaUsuario' os dias nos quais o estudante utiliza o transporte e multiplicar os valores.
Depois disso, o sistema deverá inserir estas informações na tabela 'movimento' como 'Contas a receber', gravando a respectiva rota e os dados de cada usuário, pois em cima destas informações será gerada a cobrança.
** Envio todos os arquivos do sistema e o SQL do banco de dados.
Observar que preciso que estes ajustes sejam entregues em 5 dias.
Dúvidas ou informações podem me encaminhar via mensagens.
Att,
Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Experiência nesse tipo de projeto Sim (Eu já gerenciei esse tipo de projeto)
Funções necessárias Desenvolvedor
Prazo de Entrega: 29 de Julho de 2017
Habilidades necessárias