Sistema de gestão de estacionamento com atendimento ao público desenvolvido em PHP com PostgreSQL. O projeto inclui funcionalidades de cadastro de clientes, veículos e usuários, além de movimentações e geração de relatórios!
O projeto "Ferrocar" é um sistema de gestão de estacionamento desenvolvido para fornecer um serviço rápido e eficiente de atendimento ao público. O sistema permite:
- Cadastro e edição de clientes, veículos e usuários.
- Realização de movimentações de entrada e saída de veículos.
- Geração e visualização de relatórios detalhados.
- Ações personalizadas como login, logout e visualização de dados com filtros.
- Requisitos
- Documentação
- Protótipo
- Prints de Tela
- Instalação
- Possíveis Erros e Soluções
- Contribuições
- PHP 8.3 ou superior
- PostgreSQL 11.4 ou superior
- Servidor web (Apache, Nginx, etc.)
Sistema
- Tela de login e cadastro de usuários: Admin e funcionários.
- Home: Opções de cadastrar clientes, veículos, ver horários e fazer movimentações.
- Visualizar e Editar: Clientes, veículos e usuários.
- Movimentação: Check-in e check-out com cálculo de valor, relatórios com possibilidade de filtrar por datas.
- Header e Footer: Personalizados
- Logout: Encerrar sessão.
Banco de dados
- Tabela de Usuários: Para login no sistema.
- Tabela de Clientes: Informações dos clientes.
- Tabela de Veículos: Informações dos veículos.
- Tabela de Movimentos: Registra a movimentação de veículos no estacionamento.
O protótipo deste projeto foi desenvolvido para fornecer uma visão geral das interfaces e funcionalidades. É importante notar que este protótipo é de baixa fidelidade e foi criado em uma época em que eu ainda não tinha experiência avançada em UX e UI Design. Ele serve como uma base inicial para o desenvolvimento e pode ser aprimorado conforme necessário.
Login e Cadastro
git clone https://github.com/laycsz/FerroCar.git- Baixe e instale o PHP e extraia para C:\php.
- Adicione C:\php ao PATH do sistema.
- Baixe e instale o PostgreSQL.
CREATE DATABASE estacionamento;CREATE TABLE clientes (
cliente_id SERIAL PRIMARY KEY,
nome VARCHAR(100),
cpf VARCHAR(15),
email VARCHAR(100),
telefone VARCHAR(15),
entrada TIME,
saida TIME
);
CREATE TABLE usuariologin (
id_login SERIAL PRIMARY KEY,
nome VARCHAR(100),
cpf VARCHAR(15),
email VARCHAR(100),
senha VARCHAR(100)
);
CREATE TABLE veiculos (
veiculo_id SERIAL PRIMARY KEY,
placas VARCHAR(8),
cor VARCHAR(100),
modelo VARCHAR(100),
categoria VARCHAR(14),
veic_clie_id VARCHAR(100)
);
CREATE TABLE movimento (
id SERIAL PRIMARY KEY,
placas VARCHAR(8),
nome VARCHAR(100),
modelo VARCHAR(100),
cor VARCHAR(100),
vaga VARCHAR(2),
categoria VARCHAR(14),
dt_entrada DATE,
hr_entrada TIME,
dt_saida DATE,
hr_saida TIME,
status BOOLEAN,
valor VARCHAR(100)
);
Edite o arquivo conexao.php com suas credenciais do banco de dados:
<?php
try {
$conn = new PDO("pgsql:host=localhost;dbname=estacionamento", "postgres", "0511");
echo "Conexao efetuada";
} catch(PDOException $e) {
echo "Erro com banco de dados: " . $e->getMessage();
}
?>Navegue até o diretório do projeto
cd FerroCarInicie o servidor PHP:
php -S localhost:8000Acesse http://localhost:8000 no navegador.
Solução:1. Certifique-se de que o PHP está instalado e adicionado ao PATH do sistema.
2. Verifique o arquivo php.ini e habilite as extensões pdo_pgsql e pgsql. Solução: 1. Abra o arquivo php.ini e descomente as linhas:
extension=pdo_pgsql
extension=pgsqlReinicie o servidor PHP.
Contribuições são bem-vindas! Por favor, envie um pull request ou abra uma issue para discutir mudanças.
- Faça um fork deste repositório.
- Crie uma branch com a nova feature: git checkout -b minha-nova-feature
- Commit suas mudanças: git commit -m 'Adicionar nova feature'
- Push para a branch: git push origin minha-nova-feature
- Envie um pull request.

