Estrutura padrão de módulo


Na plataforma Badiu.Net, os módulos devem ser criados dentro do diretório BADIUNET_DIR_INSTALL/Badiu, seguindo a estrutura recomendada baseada no padrão do Symfony adaptado ao sitema Badiu. 

1. Organização Geral dos Módulos

Os módulos são organizados em subpastas que representam diferentes categorias. Cada categoria de módulo possui uma pasta específica. Por exemplo:

  • Categoria Local: módulos de personalização ou customização.
  • Categoria System: módulos nativos do sistema.
  • Categoria Admin: módulos nativos de administração do sistema.

Essa organização facilita a manutenção, identificação e evolução dos módulos conforme sua natureza.

2. Estrutura Interna de um Módulo

Dentro da categoria apropriada, cada módulo deve seguir a estrutura abaixo:

BADIUNET_DIR_INSTALL/Badiu/Categoria/NomeDoModuloBundle/
├── BadiuCategoriaNomeDoModuloBundle.php
├── Entity/
├── Model/
├── View/
└── Resources/
    ├── config/
    │   ├── services.yml
    │   ├── routing.yml
    │   └── config.yml
    └── translations/
        └── messages.pt.yml

Abaixo, a função de cada item da estrutura:

Item Descrição
BadiuCategoriaNomeDoModuloBundle.php Classe principal do bundle. O nome deve ser composto com base na categoria e no nome do módulo. Esse nome é utilizado como namespace e identificador no Symfony.
Entity/ Define as entidades utilizadas com Doctrine ORM.
Model/ Contém regras de negócio e serviços do módulo.
View/ Arquivos de template e visualização.
Resources/config/services.yml Registra os serviços que serão carregados pelo Symfony.
Resources/config/routing.yml Define as rotas acessíveis do módulo.
Resources/config/config.yml Configurações específicas do módulo.
Resources/translations/messages.pt.yml Traduções das mensagens exibidas na interface do usuário.