Analisando propostas

Programa de Gerenciamento de Consultório Odontológico (Funcionalidades em Ionic 5)

Publicado em 25 de Maio de 2020 dias na TI e Programação

Sobre este projeto

Aberto

Olá! Estamos em fase avançada de desenvolvimento de software multiplataforma para gerenciamento de consultório odontológico em nuvem. Entretanto, precisamos de um freelancer para desenvolver algumas funcionalidades básicas e comuns para muitos programas, podendo utilizar APIs.

Basicamente precisamos das funcionalidades de Impressão de documentos, editar imagens,  inserção de fotos e linha do tempo.

Framework: IONIC 5;
Linguagem: Angular, Typescript e HTML5;
Banco de Dados (se precisar): Google Firebase;

===================

especificações

1. Impressão

•    Criação de uma funcionalidade que identifique da onde a impressão está sendo solicitada (ex.: Smartphone ou PC);
•    Criação de uma funcionalidade que permita ao usuário escolher a impressora a partir da qual deseja imprimir (ou usar a impressora definida como padrão no sistema);
•    Criação de uma funcionalidade que imprima um conteúdo HTML enviado por parâmetro;

2. Editor de Imagens

•    Criação de uma galeria que exiba imagens que foram carregadas para uma pasta do storage do Firebase;
•    Essa galeria seria um mosaico com todas as imagens existentes na pasta do storage (porém em tamanho reduzido) exibidas lado-a-lado até o fim da tela, o que faria com que as imagens restantes fossem para a linha seguinte, repetindo o processo até que a última imagem fosse exibida;
•    Uma vez selecionada a imagem, a mesma deve ser aberta em tamanho natural (de preferência, mas não imprescindível, numa nova janela);
•    Deve ser possível, ao menos, aumentar/diminuir a imagem (dar zoom) e girar a mesma;
•    Ao fechar a imagem, deve-se exibir novamente as imagens da galeria;

3. Foto

•    Criação de uma funcionalidade que carregue imagens para uma pasta de um storage do Firebase;
•    Criação de uma funcionalidade que verifique se o aplicativo está rodando num smartphone Android (isso é necessário pois o aplicativo roda tanto no PC quanto no Android);
•    Criação de uma funcionalidade que, caso o aplicativo estiver rodando no Android, ele tire foto através da câmera do smartphone e a grave numa pasta de um storage do Firebase;
•    Criação de uma funcionalidade, que é chamada somente quando se está criando um avatar, na qual, após tirar a foto, o aplicativo exiba uma "área de corte" que corta a foto na área escolhida antes de enviar a foto para a pasta do storage do Firebase;

4.

Linha do Tempo

Todas as consultas e operações realizadas com o paciente são armazenadas como uma espécie de histórico do paciente que se chama: evolução do paciente.  Se ele marca uma consulta e/ou quando ele termina um tratamento, etc, é inserido um registro nessa "evolução".  Essas informações são armazenadas na nuvem e normalmente possuem, no mínimo, a data da evolução e um título da mesma.



É Necessário que esses eventos sejam exibidos em uma "linha do tempo" vertical, sendo que os eventos mais recentes fiquem para cima e os mais antigos fiquem para baixo.
Ela linha deve ser dividida por ano e por mês e deve exibir a descrição e a data da evolução (tal como exibido no anexo):

•    Criação de uma funcionalidade que exiba os documentos de uma coleção do Firebase;
•    A coleção deverá se chamar "evolucao" e o documento deverá ter, no mínimo, os seguintes campos:
o    dt_evolucao: armazena a data da evolução
o    ds_evolucao: armazena a descrição da evolução
OBS: O desenvolvedor pode acrescentar outros campos a esse documento caso julgue necessário (não é necessário fazer a tela de cadastro da evolução, basta que hajam registros cadastrados numa coleção do Firebase!);
•    A linha do tempo deve ser exibida de forma vertical e deve ser dividida por ano e por mês;
•    Para cada documento da coleção do Firebase deve-se mostrar um "cartão" ligado a linha do tempo conforme mostrado na imagem acima;
•    Desejável (mas não imprescindível) que essa linha do tempo seja construída de forma animada;

Perguntas e Respostas

Pode-se usar algum API ¹ no desenvolvimento?
Sim, pode.  Porém ao usar um API o desenvolvedor deve especificar o seguinte:
- Nome e versão do API usado;
- Página com a documentação do api;
obs: as informações acima podem ser comentadas no cabeçalho do próprio código da funcionalidade.


¹: API significa "Application Programming Interface" ou "Interface de Programação de Aplicativos".

Resultados Esperados

•    Que o desenvolvedor atenda os requisitos funcionais/técnicos descritos na funcionalidade;
•    Que nos seja enviado o código fonte usado no desenvolvimento da funcionalidade. E que todo o código seja comentado, detalhando seu funcionamento, bem como seus parâmetros;
•    Que nos seja enviado um executável para Android gerado a partir do código fonte enviado (salvo especificado o contrário);

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Alteração média
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor

Prazo de Entrega: 09 de Junho de 2020

Habilidades necessárias

Outro projetos publicados por R. M.