Skip to content

Repository files navigation

🚀 GWS - Gerenciamento de Whaticket Servers

Sistema completo de gerenciamento centralizado para múltiplos servidores Whaticket.

Laravel Vue PostgreSQL Docker

📋 Stack Tecnológica

  • Backend: Laravel 11 + PHP 8.2
  • Frontend: Vue 3 + Vite + Tailwind CSS
  • Banco de Dados: PostgreSQL 16
  • Deploy: Docker Compose

⚡ Instalação Rápida

# 1. Clonar repositório
git clone https://github.com/SEU-USUARIO/gws-complete.git
cd gws-complete

# 2. Configurar variáveis (opcional)
cp .env.example .env

# 3. Iniciar com Docker
docker compose build
docker compose up -d

# 4. Aguardar PostgreSQL (15-20 segundos)
sleep 20

# 5. Executar migrations e seeders
docker compose exec backend php artisan migrate --seed

# 6. Acessar sistema
# Frontend: http://localhost:5173
# Backend: http://localhost:8000

🔑 Credenciais Padrão

⚠️ IMPORTANTE: Altere a senha após o primeiro login!

📊 Funcionalidades

Dashboard - Estatísticas em tempo real ✅ Servidores - Gerenciamento de servidores Whaticket ✅ Empresas - Cadastro de clientes/empresas ✅ Planos - Planos de serviço com limites configuráveis ✅ Usuários - Sistema de usuários com permissões ✅ Grupos - Grupos de acesso granulares ✅ Conexões - Monitoramento de conexões WhatsApp ✅ Relatórios - Geração de relatórios PDF e CSV

🏗️ Arquitetura

gws-complete/
├── backend/              # Laravel 11 API
│   ├── app/
│   │   ├── Models/           # 7 Models
│   │   └── Http/
│   │       └── Controllers/  # 9 Controllers
│   ├── database/
│   │   ├── migrations/       # 8 Migrations
│   │   └── seeders/
│   └── routes/api.php
│
├── frontend/             # Vue 3 SPA
│   ├── src/
│   │   ├── views/            # 9 Views
│   │   ├── components/
│   │   ├── stores/           # Pinia
│   │   ├── services/
│   │   └── router/
│   └── package.json
│
├── docker/               # Docker configs
│   ├── php/Dockerfile
│   └── nginx/default.conf
│
└── docker-compose.yml

🔐 Sistema de Permissões

Cada grupo possui permissões granulares:

  • view - Visualizar módulo
  • create - Criar registros
  • edit - Editar registros
  • delete - Excluir registros

Módulos disponíveis:

  • Dashboard, Servidores, Empresas, Planos
  • Usuários, Grupos, Conexões, Relatórios

🐳 Comandos Docker

# Ver status
docker compose ps

# Ver logs
docker compose logs -f

# Parar sistema
docker compose down

# Reiniciar
docker compose restart

# Acessar container backend
docker compose exec backend bash

# Acessar PostgreSQL
docker compose exec postgres psql -U gws_user -d gws

🔧 Comandos Laravel

# Migrations
docker compose exec backend php artisan migrate

# Seeders
docker compose exec backend php artisan db:seed

# Limpar cache
docker compose exec backend php artisan cache:clear

# Criar novo usuário admin
docker compose exec backend php artisan tinker
>>> User::create([...]); 

🗄️ Backup e Restore

# Backup banco de dados
docker compose exec postgres pg_dump -U gws_user gws > backup-$(date +%Y%m%d).sql

# Restore banco de dados
docker compose exec -T postgres psql -U gws_user gws < backup.sql

📝 Variáveis de Ambiente

Arquivo .env na raiz:

# PostgreSQL
DB_DATABASE=gws
DB_USERNAME=gws_user
DB_PASSWORD=gws_password

# Portas
BACKEND_PORT=8000
FRONTEND_PORT=5173

🌐 Portas Utilizadas

  • 5173 - Frontend Vue (desenvolvimento)
  • 8000 - Backend Laravel (via Nginx)
  • 5432 - PostgreSQL

🔄 Atualização

git pull origin main
docker compose down
docker compose build --no-cache
docker compose up -d
docker compose exec backend php artisan migrate

🐛 Troubleshooting

PostgreSQL não inicia

docker compose logs postgres
docker compose restart postgres

Frontend não compila

docker compose exec frontend rm -rf node_modules
docker compose exec frontend npm install

Erro de permissões Laravel

docker compose exec backend chmod -R 775 storage bootstrap/cache
docker compose exec backend chown -R www-data:www-data storage bootstrap/cache

📚 Documentação Adicional

  • Models: backend/app/Models/
  • Controllers: backend/app/Http/Controllers/
  • Views Vue: frontend/src/views/
  • API Routes: backend/routes/api.php

🤝 Contribuindo

  1. Fork o projeto
  2. Crie uma branch (git checkout -b feature/NovaFuncionalidade)
  3. Commit suas mudanças (git commit -m 'Adiciona nova funcionalidade')
  4. Push para a branch (git push origin feature/NovaFuncionalidade)
  5. Abra um Pull Request

📄 Licença

Este projeto é proprietário. Todos os direitos reservados.

📧 Contato

Para suporte ou dúvidas, abra uma issue no GitHub.


Desenvolvido com ❤️ para gerenciamento profissional de servidores Whaticket

About

Sistema completo de gerenciamento de servidores Whaticket

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages