pmm/xarife

Gerador de módulos de órgão para o sistema de almoxarifado da Prefeitura de Mossoró

Maintainers

Package info

github.com/josenildotiago/xarife

pkg:composer/pmm/xarife

Statistics

Installs: 4

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.3 2026-02-27 01:55 UTC

This package is auto-updated.

Last update: 2026-04-27 02:17:56 UTC


README

Gerador de módulos de órgão para o sistema de almoxarifado da Prefeitura de Mossoró.

Latest Version PHP Laravel

O que é

O Xarife é um pacote Laravel que automatiza a criação de toda a estrutura necessária para integrar um novo órgão (secretaria, autarquia etc.) ao sistema de almoxarifado. Com um único comando, ele gera e registra automaticamente:

  • Controller do órgão
  • ProductService e ItemService específicos
  • Arquivo de rotas do órgão
  • Entrada no web.php
  • Entradas nas factories de serviços (ItemServiceFactory e ProductServiceFactory)
  • Navegação lateral em navigation.ts

Requisitos

Dependência Versão
PHP ^8.3
Laravel ^12.0

Instalação

composer require pmm/xarife

O pacote é descoberto automaticamente pelo Laravel via package auto-discovery.

Uso

php artisan make:orgao {sigla}

Exemplo:

php artisan make:orgao segov

O que é gerado

Arquivo Caminho
Controller app/Http/Controllers/Segov/SegovController.php
ProductService app/Services/Product/SegovProductService.php
ItemService app/Services/Item/SegovItemService.php
Rotas routes/segov.php

Além disso, os seguintes arquivos existentes são atualizados automaticamente:

  • routes/web.php — adiciona require __DIR__.'/segov.php';
  • app/Services/Item/ItemServiceFactory.php — registra 'segov' => SegovItemService::class
  • app/Services/Product/ProductServiceFactory.php — registra 'segov' => SegovProductService::class
  • resources/js/hooks/navigation.ts — adiciona rotas e itens de navegação do órgão

Próximos passos após executar o comando

  1. npm run build
  2. php artisan optimize:clear
  3. php artisan wayfinder:generate
  4. Revise routes/{sigla}.php com as rotas específicas do órgão
  5. Implemente os métodos faltantes em {Classe}Controllerlote, reports, listUser, editUser, updateUser, destroyUser

Publicando os stubs

Para personalizar os templates gerados pelo pacote, publique os stubs no projeto:

php artisan vendor:publish --tag=xarife-stubs

Os arquivos serão copiados para stubs/xarife/. O comando make:orgao dará preferência a esses stubs locais, permitindo que você ajuste os templates sem alterar o pacote.

Stubs disponíveis

Stub Descrição
controller.stub Template do controller do órgão
product-service.stub Template do ProductService
item-service.stub Template do ItemService
routes.stub Template do arquivo de rotas

Os placeholders {CLASSE}, {SIGLA} e {UPPER} são substituídos automaticamente durante a geração.

Estrutura do pacote

xarife/
├── src/
│   ├── Commands/
│   │   └── MakeOrgao.php          # Comando Artisan principal
│   └── XarifeServiceProvider.php  # Service provider do pacote
├── stubs/
│   ├── controller.stub
│   ├── item-service.stub
│   ├── product-service.stub
│   └── routes.stub
└── composer.json

Licença

MIT © Prefeitura Municipal de Mossoró