Analisando propostas

Programador web

Publicado em 25 de Julho de 2018 dias na TI e Programação

Sobre este projeto

Aberto

Resumo:
O sistema será utilizado por usuários que desejam aprender idiomas através de um método continuo de repetição de frases. O sistema terá um grande volume de frases composta por texto curto, áudio em mp3, categoria e nível (1, 2, 3, 4, 5...100). A funcionalidade principal é o usuário treinar as frases utilizam um método de repetição, ao iniciar esse treino a ferramenta carrega dois textos e dois áudios, um texto é o que está no seu idioma materno e o outro no idioma que deseja aprender, o áudio do primeiro texto é tocado automaticamente e após um segundo o outro áudio é tocado e o sistema aguarda por mais 1 segundo e inicia o processo novamente com um novo texto.

Cadastro de usuário:
O usuário irá digitar o seu e-mail e vai digitar uma senha em dois campos diferentes (a senha deve coincidir), o sistema vai enviar um e-mail de confirmação para o usuário, quando o usuário confirmar o e-mail o mesmo poderá logar no sistema.

Recuperação de senha:
Qualquer usuário do sistema poderá recuperar a senha, a plataforma enviará um e-mail para o usuário, quando clicar no link do e-mail o site solicitará que o usuário digite uma nova senha em dois campos distintos (a senha deve coincidir).

Cadastro de usuário administrador:
Um usuário administrador pode cadastrar um outro usuário como administrador, ele deve pesquisar um dos usuários cadastrados e alterar o perfil para administrador.

Cadastro de frases:
Os administradores podem cadastrar novas frases no sistema, cada frase obrigatoriamente deve conter:
•    Um texto limitado a 200 caracteres;
•    Um nível que pode ser de 1 até 100;
•    Um áudio em mp3;
•    Um idioma;

Edição de frases:
Os administradores devem possuir um painel que possam pesquisar qualquer frase que esteja cadastrada e editar completamente a mesma, editar o texto, editar o áudio ou o nível;

Associando frases:
Os administradores devem possuir um painel onde é possível associar a diversos tipos de frases, por exemplo:
O administrador filtra um idioma e pesquisa por uma frase, marca um check box em uma frase, depois ele filtra um outro idioma e pesquisa por uma segunda frase e marcar um check box nesta frase, ele pode repetir esse processo em diversas frases e depois ele click em um botão associar.

Desassociando frases:
Os administradores devem possuir um painel onde podem desassociar frases, por exemplo:
O administrador pesquisa uma frase e seleciona mostrar todas as associações desta frase, o sistema deve listar todas as solicitações e o usuário pode selecionar qualquer frase e desassocia-la.

Cadastro de idiomas:
Os administradores podem cadastrar novos idiomas no sistema, esses idiomas são compostos apenas de um texto e uma imagem 64x64.
Página de Planos:
O sistema deve possuir uma página onde é possível disponibilizar 3 tipos de planos, a descrição e valor destes planos pode ser configurada por algum administrador do sistema, podendo ser editada a qualquer momento.
Feedback:
Quando o usuário estiver realizando o treinamento, o mesmo pode selecionar ícone para reportar um problema com a frase que está na tela, o sistema deve apresentar uma caixa que o usuário possa escrever o problema e registrar no sistema para que os administradores possam avaliar posteriormente.
Após reportar o problema o usuário pode continuar o seu treinamento normalmente. Tanto a descrição do usuário quanto frase que foi reportado o problema deve ser registrado no banco de dados.
Os administradores devem ter uma tela que pode ser visualizado essas ocorrências, no formato de uma fila, os administradores podem alterar o status destas ocorrências de pendente para tratamento ou finalizado.


Requisitos:
•    Deve haver um log para toda a alteração realizada no sistema, demonstrando o usuário, a descrição da alteração e data e hora;
•    O sistema somente deverá utilizar delete virtual, nunca excluindo dado algum da base de dados;
•    O sistema deve ser compatível com a plataforma Azure da Microsoft;
•    O sistema deve estar preparado para pagamento via PayPal, sistema deve reprocessar o pagamento a cada 30 dias.
•    A senha dos usuários sempre dever ser criptografadas;
•    Um usuário pode em qualquer momento querer resetar o seu progresso no sistema para algum idioma, o seja o usuário seleciona que deseja resetar o seu progresso seleciona um idioma e após confirmar o seu histórico de progresso é deletado virtualmente;
•    As frases devem ser carregadas totalmente aleatoriamente de acordo com o idioma que está estudando.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Criar um novo site personalizado
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Não se aplica
Disponibilidade requerida Conforme necessário
Integrações de API Cloud Storage (Dropbox, Google Drive, etc), Payment Processor (Paypal, Stripe, etc)
Funções necessárias Designer, Desenvolvedor

Prazo de Entrega: Não estabelecido

Habilidades necessárias