3 Commits

3 changed files with 117 additions and 9 deletions

0
.env Normal file
View File

76
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,76 @@
# 🚀 Guia de Desenvolvimento - Sistema de Controle de Faltas
Bem-vindos à equipe! Este projeto une nossas duas turmas em uma simulação real de mercado. Como desenvolvedores, vocês serão responsáveis por construir uma ferramenta robusta utilizando **PHP Orientado a Objetos** e **Bootstrap**.
Para que nossa colaboração funcione e o sistema rode perfeitamente no **EasyPanel**, todos devemos seguir este manual.
---
## 🌳 1. Nossas Branches (Onde o código mora)
Para manter a organização, o repositório é dividido em níveis de segurança:
* **`main` (Produção):** É o código que o cliente vê. **Ninguém** faz commit direto aqui. Apenas o Gerente move o código para cá quando tudo está testado.
* **`develop` (Integração):** É onde o trabalho de todos se encontra. Vocês abrirão seus pedidos de união (Pull Requests) para esta branch.
* **`feature/seu-nome-tarefa` (Criação):** Toda nova tarefa deve ser feita em uma branch própria criada a partir da `develop`.
---
## 💬 2. Padrão de Commits (Como você comunica seu progresso)
Mensagens de commit ruins como "ajuste" ou "testando" não serão aceitas. Usaremos o padrão **Conventional Commits**. Escreva sempre no **imperativo** (ex: "Adiciona", e não "Adicionei").
### Tipos que vocês mais usarão:
| Tipo | Quando usar? | Exemplo |
| :--- | :--- | :--- |
| **`feat`** | Quando você cria algo novo. | `feat: adiciona o formulário de login` |
| **`fix`** | Quando você resolve um erro. | `fix: corrige erro de conexão com o banco` |
| **`docs`** | Quando você altera apenas o README ou manuais. | `docs: detalha o funcionamento do banco` |
| **`style`** | Alteração visual com Bootstrap (CSS/Layout). | `style: centraliza os botões do dashboard` |
| **`refactor`** | Quando você melhora um código PHP sem mudar o que ele faz. | `refactor: simplifica o método de busca` |
---
## 🛠 3. O Fluxo de Trabalho (Passo a Passo)
Sempre que você for começar uma tarefa, siga estes passos:
1. **Atualize seu computador:**
```bash
git checkout develop
git pull origin develop
```
2. **Crie sua branch de trabalho:**
```bash
git checkout -b feature/nome-da-sua-tarefa
```
3. **Trabalhe no código:**
Faça commits pequenos e frequentes seguindo os padrões acima.
4. **Suba para o Gitea:**
```bash
git push origin feature/nome-da-sua-tarefa
```
5. **Peça a Revisão (Pull Request):**
No Gitea, abra um Pull Request para a branch `develop`. **Eu (Gerente)** revisarei seu código e, se estiver tudo certo, farei a aprovação.
---
## 📂 4. Arquitetura do Projeto (PHP OOP)
Não utilizaremos frameworks, por isso a organização das pastas é vital para o funcionamento do nosso container Docker:
* **`/config`**: Arquivos de conexão e variáveis de ambiente.
* **`/public`**: É a única pasta visível para o navegador. Contém o `index.php` e arquivos CSS/JS.
* **`/src/Controller`**: Onde ficará a lógica que decide o que mostrar.
* **`/src/Model`**: Onde as classes PHP conversam com o Banco de Dados (Use PDO!).
* **`/src/View`**: Onde o HTML com Bootstrap será escrito.
---
## ⚠️ 5. Regras de Ouro
* **Segurança:** Nunca coloque senhas no código. Se precisar de uma credencial, peça ao Gerente para configurar no EasyPanel.
* **Qualidade:** Antes de abrir um Pull Request, verifique se não esqueceu nenhum `var_dump` ou comentário desnecessário.
* **Colaboração:** Ajude seus colegas. Se o código dele estiver difícil de entender, comente no Pull Request!
---
**Bom trabalho a todos! Vamos construir um sistema incrível.**

View File

@@ -1,9 +1,41 @@
Tela de Login
Recuperação de e alteração de Senha
Cadastro de Usuários
Cadastro de Departamentos
Cadastro de Faltas
Impressão das Faltas
Cadastro de Fornecedores
Configurações do Sistema
Envio de Lista de Faltas toda noite para um email pré-cadastrado nas configurações
# 📦 Sistema de Controle de Faltas de Mercadorias
Projeto prático desenvolvido em colaboração pelas turmas de TI da **Faculdade Anhanguera**. O objetivo deste sistema é permitir que uma loja gerencie e registre a falta de produtos em seu estoque ou no recebimento de mercadorias, auxiliando o setor de compras na tomada de decisões.
---
## 🛠 Tecnologias Utilizadas
Para este projeto, adotamos uma stack que equilibra fundamentos de programação e práticas modernas de infraestrutura:
* **Backend:** PHP 8.2 (Orientação a Objetos, sem frameworks).
* **Frontend:** Bootstrap 5 (Interface responsiva).
* **Banco de Dados:** MySQL.
* **Infraestrutura:** Docker & EasyPanel.
* **Versionamento e Gestão:** Gitea.
---
## 📐 Arquitetura do Projeto
O sistema segue o padrão **MVC (Model-View-Controller)** simplificado para garantir a separação de responsabilidades e facilitar o trabalho em equipe:
- **Models:** Responsáveis pela lógica de dados e comunicação com o banco via PDO.
- **Views:** Arquivos PHP/HTML que utilizam Bootstrap para a interface com o usuário.
- **Controllers:** Gerenciam as requisições e conectam o Model à View.
---
## 📂 Estrutura de Pastas
```text
/
├── config/ # Configurações de banco de dados e constantes
├── public/ # Ponto de entrada (index.php), CSS, JS e imagens
├── src/
│ ├── Controller/ # Lógica de controle do sistema
│ ├── Model/ # Classes de entidade e manipulação de dados
│ └── View/ # Templates de exibição (Bootstrap)
├── Dockerfile # Configuração para o container no EasyPanel
└── README.md # Documentação principal