Code Monkey home page Code Monkey logo

ponto's Introduction

Ponto

Sistema baseado em web, com o objetivo de monitorar a presença e pontualidade dos funcionários iGet.

Funcionalidades

  • Inclusão, exclusão e modificação de Funcionário
  • Ponto de entrada
  • Ponto de saída
  • Justificativa de falta
  • Relatório de ponto mensal por Funcionário com percentual de presença, dias de faltas e justificativas.
  • Painel de estatísticas para o Funcionário (semelhante ao seu relatório)

Funcionário

O funcionário deve ter os seguintes atributos:

  • Nome
  • Sobrenome
  • Horário de entrada e saída por dia da semana [FOREIGN TABLE]
  • Email [UNIQUE]
  • Senha

De forma que sua tabela users contenha as seguintes colunas:

  • id (No formato gerado pelo laravel)
  • name VARCHAR(255)
  • surname VARCHAR(255)
  • email VARCHAR(255) UNIQUE
  • password VARCHAR(255)
  • remember_token VARCHAR(100) NULL
  • Timestamps Laravel

Os horários de entrada e saída por dia, devem ser armazenados numa tabela relacional users_times contendo as seguintes colunas:

  • id (No formato gerado pelo laravel)
  • user_id (No formato da users.id)
  • weekday TINYINT (0=>Domingo, 6=>Sábado)
  • time_in TIME
  • time_out TIME

Esta tabela deve conter um indice UNIQUE(user_id, weekday) para impedir entradas duplicadas.

Ponto

Ao fazer login, o sistema deve verificar se o Funcionário está entrando para fazer ponto de entrada ou de saída e já exibir o botão correto no centro da tela principal, que deve conter também suas estatísticas.

Atenção! O botão de ponto só deve aparecer caso este seja um dia de trabalho do funcionário.

As "batidas de ponto" devem ser armazenadas na tabela relacional timetables:

  • id
  • user_id
  • date DATE
  • time_in TIME NULL
  • time_out TIME NULL
  • justification VARCHAR(255) NULL

Esta tabela deve conter um indice UNIQUE(user_id, date) para impedir entradas duplicadas. As colunas time_in e time_out podem ser nulas pois esta mesma tabela servirá para justificar faltas, atrasos e saídas antecipadas.

Diretivas de desenvolvimento

  • O sistema deve ser baseado em Laravel 4.2
  • Todo o seu desenvolvimento deve ser versionado no GitHub
  • Sua interface deve seguir o Google Material Design e utilizar o Twitter Bootstrap 3

ponto's People

Contributors

iget-esoares avatar iget-master avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.