Realizado

Apontamento e controle de horas de um projeto pelo colaborador

Publicado em 10 de Agosto de 2020 dias na TI e Programação

Sobre este projeto

Aberto

Descrição Geral do App de apontamento de horas

Desenvolvimento de um projeto mobile para apontamento de horas por OS (ordem de Serviço), onde o funcionário poderá lançar horas para um determinada OS que ele esteja trabalhando.
Serão apenas 3 perfiz, o de colaborador, o de gestor e o administrativo (Usuários).
Quando o Administrador baixa o aplicativo, ele deverá cadastrar:
Empresa:
Nome do Administrador:
Telefone do Administrador:  (deverá confirmar através de SMS)
Após cadastrar-se, o Administrador deverá convidar novos colaboradores para fazer parte do grupo de trabalho, selecionando através de sua agenda e enviando o convite (através de uma url) por sms ou whatsapp.
O Administrador definirá nesse convite se o usuário convidado, será gestor, colaborador ou também administrador.
Os usuários que receberem o convite, deverão instalar o App e preencherem seus dados como Nome e Telefone. Deverá existir um botão para edição de cadastro.

O Administrador deverá dispor de uma tela para cadastramento dos colaboradores e programação das OSs diretamente no App, que deverá ter os seguintes campos:
Cadastro de Colaborador:
Nome do Colaborador: Nome e Sobrenome do Colaborador
Função: Descrição da função exercida pelo colaborador, se este será colaborador, Gestou ou até mesmo outro Administrador do Sistema.
Telefone: Número de telefone com + pp xx 123456789

cadastro de oss:
nº da os – numero da ordem de serviço
cliente - nome do cliente onde será prestado o serviço
descrição – descrição da os  (200 caracteres)
gestor – deverá aparecer uma lista de todos os nomes de gestores do cadastro de colaboradores com um checkbox ou rádio na frente de cada um deles, a fim de permitir sua inclusão na lista de gestores desta os e que farão autorizações dos colaboradores dela.
Local do Serviço – Coordenadas GPS (Este campo poderá estar em branco).
Se estiver em Branco, não haverá controle de coordenadas por “cerca eletrônica”. Independentemente deste campo estar preenchido, os dados de GPS no momento de apontamento de um Start ou Stop, deverão ser coletados e registrados junto ao apontamento. Na impossibilidade de coletar essa informação (GPS), e o campo de Local do Serviço estiver preenchido, o sistema deverá criar uma chamada de confirmação do Gestor, e deverá ser ignorado se estiver em branco.
Será apontada apenas uma coordenada definida pelo google maps (Ex: https://goo.gl/maps/g2rx2pgA8n5YvwDo8 ).
Colaboradores – Deverá aparecer uma lista de todos os nomes do Cadastro de todos os colaboradores com um checkbox ou rádio na frente de cada um deles, a fim de permitir sua inclusão na Lista dos que terão acesso a esta OS e que farão apontamentos nela.
Permissão – Se OS está habilitada/desabilitada para apontamentos de horas.
Se estiver desabilitada, os apontamentos não serão aceitos e uma mensagem (OS Fechada) deverá aparecer ao usuário que tentar lançar horas nela. Os usuários que estiverem com cronometro aberto quando da desabilitação, continuarão trabalhando normalmente até seu fechamento (dar o Stop), mas não conseguirão abrir novo lançamento (dar novo Start).
Autorização – Colocar um Combo para seleção Automático/Manual.
Na forma condição Automática, o Gestor não precisará confirmar, mas na forma Manual precisará dar OK em cada apontamento feito pelos colaboradores. No caso de um colaborador apontar fora da área de “cerca eletrônica” definida pelo “Local de Serviço”, o Gestor deverá confirmar o apontamento. A Cerca Eletrônica terá um Km de raio do endereço apontado.

O Administrador deverá poder gerar relatórios de Horas aprovadas e os enviar via e-mail ou whatsapp com as seguintes informações:
Relatório por os e período de __/__/____ a __/__/_____
os: xxxxxx – cliente:                                                                      data:
descrição da os
função              nome do colaborador                                  total de horas
              nome do colaborador                                  total de horas
              nome do colaborador                                  total de horas
função              nome do colaborador                                  total de horas
              nome do colaborador                                  total de horas

relatório por os , colaborador e período de __/__/____ a __/__/_____
os: xxxxxx – cliente:                                                                      data:
descrição da os
colaborador:                função:      total:
data            início        fim          total
xx/xx/xx      xx:xx    xx:xx    xx,xx
xx/xx/xx      xx:xx    xx:xx    xx,xx
xx/xx/xx      xx:xx    xx:xx    xx,xx
        total de horas:  xx,xx
relatório por colaborador e período de __/__/____ a __/__/_____
colaborador:                função:      total:
data        os      cliente    início        fim          total
xx/xx/xx      xxxxx-x     aaaaaaaaaaaa    xx:xx    xx:xx    xx,xx
xx/xx/xx      xxxxx-x     aaaaaaaaaaaa     xx:xx    xx:xx    xx,xx
xx/xx/xx      xxxxx-x    aaaaaaaaaaaa     xx:xx    xx:xx    xx,xx
            total de horas:  xx,xx

os usuários cadastrados, quando entrarem no aplicativo, terão que selecionar num combo (que mostrará todas as oss disponíveis “para ele”), a os em que vai trabalhar naquele momento, e através de um único botão (push boton) na tela, dar start/stop da atividade. Se Ele estiver em On (ou seja em atividade), não poderá trocar de OS. Para trocar de OS, deverá dar Stop e só então ter acesso ao combo de seleção de OSs.
Em um mesmo dia, o colaborador poderá trabalhar em mais de uma OS, mas nunca simultaneamente.
A atividade exercida pelo colaborador poderá virar a meia noite. Neste caso, o SISTEMA deverá encerrar (dar stop) automaticamente naquele apontamento às 23:59 e reabrí-lo (dar o start) automaticamente no minuto 00:00 do dia seguinte, até que o colaborador encerre seu trabalho com o comando Stop.
Sempre que isto acontecer, o Gestor deverá ter conhecimento e aprovar os lançamentos.
No momento de cada lançamento (start/stop), será capturado a última posição valida via GPS e enviada ao servidor, vinculado ao apontamento ao colaborador.
Caso o usuário esteja fora de área ou sem internet, as informações de Start/Stop deverão ser armazenadas no aparelho e, assim que restabelecida a conexão, enviadas ao servidor. 
Caso o colaborador não possa realizar o apontamento na hora exata, ele deverá ter a opção de fazer o lançamento manual para no máximo no dia seguinte, sendo esta opção ter a necessidade da aprovação desse lançamento pelo seu(s) gestor(es) ou administrador(es).
O perfil gestor deverá ter condições de alterar e aprovar os lançamentos dos colaboradores dentro de uma janela de no máximo dois dias, mas somente um Administrador poderá (além das funções do Gestor), alterar o número da OS de um lançamento, desde que este não ultrapasse sete dias de seu lançamento.

O perfil Administrativo poderá exercer também todas as atividades dos Gestores, inclusive aprovar os lançamentos manuais feitos pelos colaboradores.
O acesso/cadastro ao aplicativo se dará pelo número do celular do usuário, sendo que no primeiro acesso é enviado um SMS para verificar o vínculo do número convidado ao aparelho.
Deverá constar em sua proposta, o registro e a instalação do aplicativo nas lojas virtuais do Google e da Apple Store.

O aplicativo deverá ser desenvolvido em React Native ou Flutter, e testados em IOs e Android.
O JOB para sincronismo deverá ser um script em NodeJS, rodando no servidor Linux.
O suporte deverá ser fornecido tanto no período de desenvolvimento e testes quanto no período de operação real do sistema.

O fornecedor deverá definir um valor de hora/homem para apoiar o cliente no pós venda, caso seja necessário realizar modificações no sistema.

Categoria TI e Programação
Subcategoria Programação de Apps para Android, iOS e outros
Qual é o alcance do projeto? Alteração média
Isso é um projeto ou uma posição de trabalho? Um projeto
Disponibilidade requerida Conforme necessário
Eu preciso Criar um app

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por C. G.