Skip to main content

Gerador de mapa fiscal com base em regras fiscais

Project description

Mapa Fiscal Tributário

Descrição

O projeto Mapa Fiscal Tributário é uma solução desenvolvida para gerenciar cenários e operações fiscais, considerando diferentes contextos tributários como classe fiscal do produto, natureza da operação e estados de origem e destino. Ele foi projetado para ser altamente configurável e modular, permitindo o uso em diversos regimes tributários e perfis de contribuintes.


Principais Componentes

1. Modelos de Dados

  • MapaFiscal: Representa o mapa fiscal, com classes fiscais, cenários e operações.
  • ClasseFiscal: Detalha a classificação fiscal de produtos, como NCM, origem, segmento e alíquotas.
  • CenarioFiscal: Representa configurações específicas para operações fiscais em determinado contexto.
  • OperacaoFiscal: Define detalhes operacionais como CFOP, CST, alíquotas de ICMS, PIS, COFINS e IPI.

2. Regras Fiscais

  • RegraFiscalProcessor: Processa as regras tributárias com base no contexto fiscal e nos parâmetros fornecidos, calculando alíquotas de ICMS, PIS, COFINS e IPI.

3. Contextos Fiscais

  • ContextoFiscal: Interface base para diferentes fontes de dados fiscais.
  • JSONContexto: Implementação que carrega dados fiscais a partir de arquivos JSON.
  • ContextoFiscalFactory: Fabrica contextos fiscais dinamicamente com base em registros.

Casos de Uso

Cenário: Gerar um Mapa Fiscal com Base em um Arquivo JSON

1. Inicializar repositorio,

Registre um contexto fiscal baseado no formato JSON:

    from mapafiscal.infrastructure.persistence import JSONRepositorio
    from mapafiscal.infrastructure.admin import iniciar_repositorio

    repositorio = JSONRepositorio(".\\etc")        
    iniciar_repositorio(repositorio)   

2. Construir o Mapa Fiscal

Use o processador de regras fiscais para criar um mapa fiscal:

from mapafiscal.application.cenario_builder import CenarioBuilder

builder = CenarioBuilder(repositorio)
mapa_fiscal = builder.build_from_file("cenario_example.json")     

3. Exportar Resultado

Exporte os resultados para um arquivo Excel:

from mapafiscal.application import ExcelExporter

excel = ExcelExporter(mapa_fiscal)
excel.to_excel("output.xlsx")

Como Executar

Executar via Linha de Comando

O script 'create_env.py' permite criar o repositorio de dados via terminal:

python create_env.py -r caminho/para/repositorio

A execução também irá criar o arquivo cenario_example.json. Este arquivo pode ser utilizado para efetuar seus primeiros testes com o mapa fiscal.

O script build_cenario.py permite gerar um mapa fiscal diretamente via terminal:

python build_cenario.py --filename caminho/para/dados.json

Este comando gerará um arquivo mapafiscal.xlsx contendo os cenários processados.


Estrutura de Arquivos do Projeto

  • common.py: Contém enums e classes comuns usadas em todo o projeto.
  • model.py: Define os modelos de dados principais.
  • contexto_fiscal.py: Define a interface base e funcionalidades gerais para contextos fiscais.
  • contexto_factory.py: Permite criar contextos fiscais dinamicamente.
  • contexto_registry.py: Gerencia registros de diferentes implementações de contexto.
  • json_contexto.py: Implementação de contexto fiscal baseado em JSON.
  • mapa_fiscal_processor.py: Processa cenários e operações fiscais.
  • build_cenario.py: Script para gerar mapas fiscais via terminal.

Contribuições

Contribuições são bem-vindas! Para relatar problemas ou sugerir melhorias, crie uma issue ou envie um pull request.


Licença

Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mapafiscal-0.3.0.tar.gz (292.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mapafiscal-0.3.0-py3-none-any.whl (311.0 kB view details)

Uploaded Python 3

File details

Details for the file mapafiscal-0.3.0.tar.gz.

File metadata

  • Download URL: mapafiscal-0.3.0.tar.gz
  • Upload date:
  • Size: 292.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for mapafiscal-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a35b521774a7831f0513058be966f2831db7d6359f259054d8dd2dfcd57e3574
MD5 5735d3c6c0b5d799eb101b7fc04b63f4
BLAKE2b-256 f40feb76932be30fc9f3b4b658a3c35f6d4e216bbaf80755383e41a3efb1b2b4

See more details on using hashes here.

File details

Details for the file mapafiscal-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: mapafiscal-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 311.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for mapafiscal-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 10783ed8fff7bc995788b92f57c916cac7ff44ca5b6f9b06597bd46ee4eef879
MD5 e90f2b95a938f1d0609cc14bfa5cc4fd
BLAKE2b-256 0bc8922e168e8cea6ed3522c392f7ad6757446da2ef3c56e3e584f664411bd70

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page