PHPackages                             bildvitta/sp-vendas - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. bildvitta/sp-vendas

ActiveLibrary[API Development](/categories/api)

bildvitta/sp-vendas
===================

Pacote Laravel para sincronização e importação de dados do SP via RabbitMQ.

v0.2.0(3w ago)03.7k↓52.1%MITPHPPHP ^8.1CI passing

Since Aug 30Pushed 3w ago12 watchersCompare

[ Source](https://github.com/bildvitta/sp-vendas)[ Packagist](https://packagist.org/packages/bildvitta/sp-vendas)[ RSS](/packages/bildvitta-sp-vendas/feed)WikiDiscussions develop Synced today

READMEChangelog (10)Dependencies (27)Versions (18)Used By (0)

SP Vendas
=========

[](#sp-vendas)

Pacote Laravel privado para sincronização e manutenção dos dados de vendas do ecossistema SP. Ele é consumido por projetos Laravel via Composer com repositório VCS.

Visão geral
-----------

[](#visão-geral)

- Pacote privado: `appnave/nave-vendas-sp`
- Namespace principal: `BildVitta\SpVendas`
- Fornece:
    - configuração publicada em `config/sp-vendas.php`
    - migrations do módulo
    - models e factories
    - comando de instalação do pacote
    - importação inicial de vendas
    - worker para consumo de mensagens via RabbitMQ

Requisitos
----------

[](#requisitos)

- PHP `^8.0` ou `^8.1`
- Laravel `8`, `9`, `10`, `11` ou `12`
- Composer
- Banco de dados configurado no projeto cliente
- RabbitMQ configurado para o worker de vendas
- Dependências privadas do ecossistema, quando não estiverem disponíveis no Packagist:
    - `bildvitta/iss-sdk`
    - `bildvitta/sp-crm`
    - `bildvitta/sp-hub`
    - `bildvitta/sp-produto`

Acesso Privado
--------------

[](#acesso-privado)

No projeto cliente, adicione o repositório VCS do pacote em `composer.json`:

```
{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/appnave/nave-vendas-sp"
    }
  ]
}
```

Se as dependências privadas também não estiverem no Packagist, adicione os repositórios delas no mesmo arquivo.

Instalação:

```
composer require appnave/nave-vendas-sp
```

Autenticação local do Composer com GitHub:

```
composer config -g github-oauth.github.com
```

GitHub Actions:

```
env:
  COMPOSER_AUTH: >-
    {"github-oauth":{"github.com":"${{ secrets.COMPOSER_TOKEN }}"}}
```

Se o pacote cliente também precisar acessar repositórios privados da organização, use um token com permissão de leitura nesses repositórios.

Instalação Local
----------------

[](#instalação-local)

Após adicionar o repositório e instalar o pacote no projeto cliente:

```
php artisan sp-vendas:install
```

O comando:

- publica a configuração do pacote
- publica as migrations
- executa as migrations
- publica e executa o seeder, quando confirmado

Configuração
------------

[](#configuração)

O pacote lê estas variáveis de ambiente:

```
MS_SP_VENDAS_TABLE_PREFIX=vendas_

VENDAS_DB_HOST=127.0.0.1
VENDAS_DB_PORT=3306
VENDAS_DB_DATABASE=forge
VENDAS_DB_USERNAME=forge
VENDAS_DB_PASSWORD=

RABBITMQ_HOST=
RABBITMQ_PORT=5672
RABBITMQ_USER=
RABBITMQ_PASSWORD=
RABBITMQ_VIRTUALHOST=/
RABBITMQ_EXCHANGE_SALES=sales
RABBITMQ_QUEUE_SALES=sales.crm
```

Observações:

- O prefixo padrão das tabelas é `vendas_`
- O pacote depende dos pacotes `sp-hub`, `sp-crm` e `sp-produto` já configurados no projeto cliente
- As tabelas do módulo usam o prefixo definido em `MS_SP_VENDAS_TABLE_PREFIX`

Comandos Úteis
--------------

[](#comandos-úteis)

```
php artisan sp-vendas:install
php artisan dataimport:vendas_sales
php artisan rabbitmqworker:sales
php artisan db:seed --class=SpVendasSeeder
```

### Importação Inicial

[](#importação-inicial)

Use a importação inicial após configurar a conexão com o banco das vendas e garantir que as dependências do ecossistema já estejam instaladas:

```
php artisan dataimport:vendas_sales
```

Opções disponíveis:

```
php artisan dataimport:vendas_sales --select=500 --offset=0 --tables=sales,sale_accessories,sale_periodicities
```

### Worker RabbitMQ

[](#worker-rabbitmq)

Depois de configurar as credenciais do RabbitMQ, rode o worker:

```
php artisan rabbitmqworker:sales
```

Informações Adicionais
----------------------

[](#informações-adicionais)

- As migrations do pacote são registradas automaticamente pelo provider
- O pacote publica um seeder chamado `SpVendasSeeder`
- O worker processa mensagens do tipo `sales.created` e `sales.updated`
- O relacionamento entre os modelos do pacote depende dos modelos/configurações dos pacotes `sp-hub`, `sp-crm` e `sp-produto`

###  Health Score

49

—

FairBetter than 94% of packages

Maintenance95

Actively maintained with recent releases

Popularity20

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~138 days

Recently: every ~168 days

Total

11

Last Release

22d ago

PHP version history (3 changes)v0.0.1PHP ^8.0|^8.1

v0.1.4PHP ^8.0|^8.1|^8.2|^8.3

v0.2.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/57ede45a8ce528ade98fadbb32397afb6c0234f9d05caae7ac207d3b4d026af1?d=identicon)[hynzhw](/maintainers/hynzhw)

![](https://www.gravatar.com/avatar/e32e39fb848943b1a94bb2c167a2bda11eb45814ba34d539e6b1685a5de6e272?d=identicon)[michaelnakamura](/maintainers/michaelnakamura)

![](https://www.gravatar.com/avatar/ab5f117bbac50e0314758bcc25c9052dc4546568082eff672b65b128be0e2d98?d=identicon)[fabiomartins](/maintainers/fabiomartins)

![](https://www.gravatar.com/avatar/3ce1635f07565fb1531991b47d86c407b9b30955eb1871dad4ed33810aaffe88?d=identicon)[leandrohago](/maintainers/leandrohago)

---

Top Contributors

[![zerossB](https://avatars.githubusercontent.com/u/8009480?v=4)](https://github.com/zerossB "zerossB (14 commits)")[![michaelnakamura](https://avatars.githubusercontent.com/u/10209108?v=4)](https://github.com/michaelnakamura "michaelnakamura (12 commits)")[![paulodavanco](https://avatars.githubusercontent.com/u/11135122?v=4)](https://github.com/paulodavanco "paulodavanco (12 commits)")[![fabiomartins1](https://avatars.githubusercontent.com/u/50298479?v=4)](https://github.com/fabiomartins1 "fabiomartins1 (2 commits)")

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/bildvitta-sp-vendas/health.svg)

```
[![Health](https://phpackages.com/badges/bildvitta-sp-vendas/health.svg)](https://phpackages.com/packages/bildvitta-sp-vendas)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5021.9k](/packages/simplestats-io-laravel-client)[defstudio/telegraph

A laravel facade to interact with Telegram Bots

816333.3k3](/packages/defstudio-telegraph)[spatie/laravel-health

Monitor the health of a Laravel application

87512.0M165](/packages/spatie-laravel-health)[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M194](/packages/laravel-ai)[api-platform/laravel

API Platform support for Laravel

58171.4k14](/packages/api-platform-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
