Crie um sistema web responsivo com aplicativo mobile chamado FortPred, voltado à gestão interna de serviços de manutenção predial hospitalar prestados pela empresa Fort Pred. O objetivo é oferecer um sistema completo para controle de ordens de serviço, equipe técnica, materiais e indicadores de desempenho em múltiplos hospitais e unidades atendidas.
A Fort Pred é a responsável por executar os serviços nos hospitais. O sistema será usado apenas pela equipe interna da empresa para gerenciar todas as etapas do processo técnico e operacional.
🔧 MÓDULOS PRINCIPAIS:
🎯 OBJETIVO:
Ter um sistema profissional, seguro e eficiente para a Fort Pred gerenciar todas as manutenções prediais hospitalares que realiza, com controle total das equipes, SLAs, materiais, cronogramas preventivos e relatórios para auditoria.
O sistema não será disponibilizado ao hospital cliente, mas sim usado internamente pela Fort Pred para garantir qualidade, rastreabilidade e agilidade nos serviços prestados.
Vou criar o sistema FortPred - uma solução completa para gestão interna da empresa Fort Pred, especializada em manutenção predial hospitalar. O sistema permitirá controle total das operações em múltiplos hospitais clientes.
Criei o sistema FortPred - uma solução completa para gestão interna da empresa Fort Pred, especializada em manutenção predial hospitalar. O sistema permite controle total das operações em múltiplos hospitais clientes.
O sistema está preparado para expansão com os módulos de Preventivas & PMOC, Materiais & Estoque, Relatórios e Indicadores avançados, proporcionando controle total das operações da Fort Pred.
Sources
Para adicionar um domínio próprio à aplicação FortPred, você precisa seguir alguns passos dependendo de onde vai hospedar. Vou mostrar as principais opções:
# Instalar Vercel CLI
npm i -g vercel
# Fazer deploy
vercel
# Seguir as instruções no terminal# Adicionar domínio via CLI
vercel domains add seudominio.com.br
# Ou via dashboard Vercel:
# 1. Acesse vercel.com/dashboard
# 2. Selecione seu projeto
# 3. Vá em Settings > Domains
# 4. Adicione: fortpred.com.brNo seu provedor de domínio (Registro.br, GoDaddy, etc.), configure:
# Tipo A - Apontar para Vercel
@ → 76.76.19.19
# Tipo CNAME - Subdomínio www
www → cname.vercel-dns.com
# Ou usar CNAME para domínio principal
@ → cname.vercel-dns.com# Instalar dependências
npm install
# Build de produção
npm run build
# Iniciar aplicação
npm start# /etc/nginx/sites-available/fortpred
server {
listen 80;
server_name fortpred.com.br www.fortpred.com.br;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}# Instalar Certbot
sudo apt install certbot python3-certbot-nginx
# Gerar certificado SSL
sudo certbot --nginx -d fortpred.com.br -d www.fortpred.com.br
# Renovação automática
sudo crontab -e
# Adicionar: 0 12 * * * /usr/bin/certbot renew --quiet# 1. Deploy no AWS Amplify ou EC2
# 2. Configurar Route 53
# 3. Criar Hosted Zone para fortpred.com.br
# 4. Configurar registros A/CNAME{
"Type": "A",
"Name": "fortpred.com.br",
"AliasTarget": {
"DNSName": "seu-load-balancer.amazonaws.com",
"EvaluateTargetHealth": false
}
}# .env.production
NEXTAUTH_URL=https://fortpred.com.br
NEXTAUTH_SECRET=sua-chave-secreta-super-forte
DATABASE_URL=sua-string-conexao-banco// next.config.js
/** @type {import('next').NextConfig} */
const nextConfig = {
async headers() {
return [
{
source: '/(.*)',
headers: [
{
key: 'X-Frame-Options',
value: 'DENY',
},
{
key: 'X-Content-Type-Options',
value: 'nosniff',
},
{
key: 'Referrer-Policy',
value: 'origin-when-cross-origin',
},
],
},
]
},
}
module.exports = nextConfig# Configurar MX Records
fortpred.com.br MX 10 mail.fortpred.com.br
# Ou usar Google Workspace/Microsoft 365
fortpred.com.br MX 1 aspmx.l.google.com
fortpred.com.br MX 5 alt1.aspmx.l.google.com// lib/email.ts
import nodemailer from 'nodemailer'
const transporter = nodemailer.createTransporter({
host: 'smtp.fortpred.com.br',
port: 587,
secure: false,
auth: {
user: 'sistema@fortpred.com.br',
pass: process.env.EMAIL_PASSWORD,
},
})
export async function sendNotification(to: string, subject: string, html: string) {
await transporter.sendMail({
from: 'FortPred Sistema <sistema@fortpred.com.br>',
to,
subject,
html,
})
}// app/layout.tsx
import { GoogleAnalytics } from '@next/third-parties/google'
export default function RootLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="pt-BR">
<body>
{children}
<GoogleAnalytics gaId="G-XXXXXXXXXX" />
</body>
</html>
)
}# Usar serviços como:
# - UptimeRobot
# - Pingdom
# - StatusCake
# Monitorar:
# - https://fortpred.com.br
# - https://api.fortpred.com.br/healthPara a Fort Pred, recomendo:
fortpred.com.br ou sistema.fortpred.com.br@fortpred.com.brQuer que eu ajude com alguma configuração específica?