Banco de dados do sistema de gestão de férias de funcionários

158 0

O banco de dados é muito simples, pois o sistema apenas fará a gestão das férias dos funcionários, e se for necessário faremos o upgrade para agregar mais funções. A versão do banco de dados inicialmente disponibilizada contém apenas 5 tabelas. O que pretendo fazer neste artigo é analisar a estrutura deste banco de dados e passar então para o sistema do Xoops fazendo as devidas alterações.

Duas tabelas já não são mais necessárias na nova estrutura do banco de dados do nosso sistema open-source, a dos funcionários e as dos usuários que administram o sistema. Como o Xoops já tem uma tabela destinada a usuários do site, então podemos usar esta tabela para armazenar tanto os funcionários do site como os administradores do sistema. Vamos então analisar a estrutura necessária para esta tabela, vendo a definição da tabela de funcionários.

Tabela Empregado

 

ID- Inteiro ,auto incrementável, Chave primária

Nome- O nome do funcionários

SetorID- Valor inteiro que indica o id do setor a que o funcionário pertence na empresa

funcao-Função do funcionário na empresa

Data de entrada- A data que o funcionário começou a trabalhar na empresa. É muito importante em alguns cálculos

Agora façamos uma relação desta tabela com a dos usuários do sistema de gerenciamento de conteúdos que usaremos, o Xoops. Teremos que aproveitar os campos irrelevantes do sistema para que os campos necessários sejam integrados. Analisando os campos disponíveis no módulo smartprofile, podemos facilmente adaptar a nossa estrutura de acordo com a tabela de usuários do site. Por exemplo, poderemos usar o campo ocupação para indicar a função do funcionário, os campos id e nome serão id do usuário e o nome real respectivamente e a data de entrada será a data de cadastro no site. Também podemos alterar o campo tema para que possa armazenar o id do setor ao qual o funcionário pertence. Note que estou usando campos que considero irrelevantes para o sistema.

Agora precisamos criar as outras tabelas. Ao todo o nosso sistema terá três tabelas, uma para armazenar os setores da empresa, uma para as faltas cometidas pelos funcionários e outra para os pedidos de férias.

Abaixo estão todos os campos das tabelas que iremos criar:

Tabela setor

id-Chave primária

nome- nome do setor

Tabela faltas

id- Chave primaria

eid- id do empregado que cometeu a falta

data-Data em que a falta foi cometida

justif – Este campo indicará se a falta foi justificada ou não. Só para ter uma idéia, uma falta justificada não interfere em nada no sistema, mas uma falta não justificada resultará num desconto de um dia no período de férias.

Tabela Periodo

id- Chave primaria

eid-id do funcionário que requisitou as férias

dinicio- Data de início das férias

Dfim – Data de fim de férias solicitado

dfimc- Data do fim das férias após os descontos das faltas e da disponibilidades

status- Este campo indicará se o pedido foi confirmado ou não, no caso do sistema possibilitar que os funcionários façam os pedidos pessoalmente.

Um detalhe com esta última tabela é que a tabela não só irá armazenar os pedidos de férias mas também os pedidos de dispensa. Acho que não haverá nenhum problema em juntar estes dois tipos de pedidos(Se houver mudamos mais tarde).

Nota que apesar de eu já ter criado alguns projetos profissionais, o objetivo deste projeto não é só mostrar, mas também aprender e aprender muito, com a troca de idéias tanto aqui nos comentários dos artigos, no fórum, por email ou então no meu msn, que pode ser encontrado na página de contatos do Techmoz ou no meu perfil.

Para terminar dizer que no próximo artigo sobre o projecto trarei mais um arquivo para download, que irá incluir também o arquivo sql desta base de dados que estávamos a definir neste artigo.

(Visited 24 times, 1 visits today)