Build de Produção
Produção
Para rodar o projeto em produção,o, são necessários dois arquivos de ambienteambiente. (.env)
projeto
A falta de um desses arquivos de ambiente por acarretar em erros inesperados de build do docker!
.env:
# 🌐 API.env.production:
# 🌐 API
API_PORT=3008
# 🛢️ MongoDB
MONGO_INITDB_ROOT_USERNAME=root
MONGO_INITDB_ROOT_PASSWORD=admin123
MONGO_INITDB_DATABASE=eclipse-db-deploy
CONNECTION_STRING=mongodb://root:admin123@eclipse-db-deploy:27017/eclipse?authSource=admin
# 🔐 Segurança
JWT_SECRET=secret
NEXTAUTH_SECRET=secret
# 🌐 CORS
CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:5173,http://localhost:80,http://localhost,http://eclipse-api,http://eclipse-api-deploy:5173
# 💻 Next.js
NEXT_PUBLIC_APP_VERSION=3.1.05.25
NEXT_PUBLIC_API_URL=http://localhost/api/v1
NEXTAUTH_URL=http://localhost
# 👮 Admin Inicial
BASE_ADMIN_PASSWORD=senha
[email protected]
# ✉️ E-mail
[email protected]
PASSWORD_USER=senha-gerada
# ⚙️ Ambiente
NODE_ENV=production
Saída Esperada:
Código: 12345, Nome: Computador, Categoria: Equipamento de Informática, Data de Aquisição: 2022-01-10, Valor: 5000.0
2. Movimentação de Bens
Outro aspecto fundamental do controle patrimonial é o registro das movimentações dos bens, como transferências entre departamentos ou unidades da empresa. O código a seguir exemplifica como isso pode ser feito:
class Movimentacao:
def __init__(self, bem, data_movimentacao, origem, destino):
self.bem = bem
self.data_movimentacao = data_movimentacao
self.origem = origem
self.destino = destino
def registrar_movimentacao(self):
return f'Movimento do bem {self.bem.nome} de {self.origem} para {self.destino} em {self.data_movimentacao}.'
# Exemplo de movimentação
mov1 = Movimentacao(bem1, "2025-03-10", "Departamento de TI", "Departamento de Marketing")
print(mov1.registrar_movimentacao())
Saída Esperada:
Movimento do bem Computador de Departamento de TI para Departamento de Marketing em 2025-03-10.
3. Relatório de Bens
A geração de relatórios é uma funcionalidade crucial para acompanhar o estado do patrimônio. Este módulo pode permitir a criação de relatórios sobre bens ativos, bens em manutenção, bens fora de uso, entre outros. Um exemplo simples de relatório seria:
class RelatorioPatrimonial:
def __init__(self, bens):
self.bens = bens
def gerar_relatorio(self):
relatorio = "Relatório de Bens Patrimoniais:\n"
for bem in self.bens:
relatorio += bem.exibir_dados() + "\n"
return relatorio
# Exemplo de geração de relatório
bens = [bem1]
relatorio = RelatorioPatrimonial(bens)
print(relatorio.gerar_relatorio())
Saída Esperada:
Relatório de Bens Patrimoniais:
Código: 12345, Nome: Computador, Categoria: Equipamento de Informática, Data de Aquisição: 2022-01-10, Valor: 5000.0
4.
Além de controlar a movimentação dos bens, é importante gerenciar as manutenções realizadas, registrando as datas e tipos de manutenção. O código abaixo exemplifica como implementar esse registro:
class Manutencao:
def __init__(self, bem, tipo_manutencao, data_manutencao):
self.bem = bem
self.tipo_manutencao = tipo_manutencao
self.data_manutencao = data_manutencao
def registrar_manutencao(self):
return f'Manutenção do bem {self.bem.nome} do tipo {self.tipo_manutencao} realizada em {self.data_manutencao}.'
# Exemplo de manutenção
manutencao1 = Manutencao(bem1, "Preventiva", "2025-02-28")
print(manutencao1.registrar_manutencao())
Saída Esperada:
Manutenção do bem Computador do tipo Preventiva realizada em 2025-02-28.
Conclusão
Este é um exemplo básico de como o software de controle patrimonial pode ser estruturado. A implementação completa envolve mais funcionalidades, como o controle de acesso dos usuários, a integração com outros sistemas e a geração de relatórios detalhados. As funcionalidades apresentadas garantem um controle eficiente dos bens patrimoniais, proporcionando à empresa um gerenciamento preciso e organizado de seus ativos.

e