Documentation
¶
Index ¶
- Variables
- func NewFREParser(cabeçalho []string) *parserFRE
- func Unmarshal(data string)
- type Arquivo
- type CVM
- type CVMImporter
- type ContabilServices
- func (c *ContabilServices) BuscaEmpresas(nome string) ([]rapina.Empresa, error)
- func (c *ContabilServices) DadosTrimestrais(cnpj string, consolidado bool) ([]rapina.InformeTrimestral, error)
- func (c *ContabilServices) Empresas() ([]rapina.Empresa, error)
- func (c *ContabilServices) Import(ano int, trimestral bool) error
- type Contas
- type DFPParser
- type DFPRecord
- type FRERecord
- type JSONTrimestral
- type LocalInfra
- type Modelo
- type Option
- type Sqlite
- func (s *Sqlite) BuscaEmpresas(ctx context.Context, nome string) ([]rapina.Empresa, error)
- func (s *Sqlite) Empresas(ctx context.Context) ([]rapina.Empresa, error)
- func (s *Sqlite) Save(ctx context.Context, dfp *dominio.DemonstracaoFinanceira) error
- func (s *Sqlite) SaveFRE(ctx context.Context, fre *dominio.FreDistribCapital) error
- func (s *Sqlite) Trimestral(ctx context.Context, cnpj string, consolidado bool) ([]rapina.InformeTrimestral, error)
- type TrimestralItem
Constants ¶
This section is empty.
Variables ¶
var ( ErrFaltaItem = errors.New("itens faltando") ErrDataInválida = errors.New("data inválida") )
var ( ErrArquivoInválido = errors.New("arquivo inválido") ErrDFPInválida = errors.New("DFP inválida") ErrSemDados = errors.New("sem dados") ErrAnoInválidoFn = func(ano int) error { return fmt.Errorf("ano inválido: %d", ano) } )
var ErrRepositórioInválido = errors.New("repositório inválido")
Functions ¶
func NewFREParser ¶
func NewFREParser(cabeçalho []string) *parserFRE
Types ¶
type CVM ¶
type CVM interface {
Import(ctx context.Context, ano int, trimestral bool) <-chan dominio.ImportResult
}
func NewDFPImporter ¶
type CVMImporter ¶
type CVMImporter struct {
// contains filtered or unexported fields
}
CVMImporter é um importador genérico de dados da CVM.
func (*CVMImporter) Import ¶
func (c *CVMImporter) Import(ctx context.Context, ano int, trimestral bool) <-chan dominio.ImportResult
Import baixa o arquivo de dados de todas as empresas de um determinado ano do site da CVM.
type ContabilServices ¶
type ContabilServices struct {
// contains filtered or unexported fields
}
ContabilServices contém os serviços que implementam a interface CVM de importação de dados da CVM.
func NewService ¶
func (*ContabilServices) BuscaEmpresas ¶
func (c *ContabilServices) BuscaEmpresas(nome string) ([]rapina.Empresa, error)
func (*ContabilServices) DadosTrimestrais ¶
func (c *ContabilServices) DadosTrimestrais(cnpj string, consolidado bool) ([]rapina.InformeTrimestral, error)
type DFPRecord ¶
type DFPRecord struct {
CNPJ string
Nome string // Nome da empresa
Ano string
Versão string
Código string
Descr string
GrupoDFP string
DataIniExerc string // AAAA-MM-DD
DataFimExerc string // AAAA-MM-DD
OrdemExerc string // ÚLTIMO ou PENÚLTIMO
Moeda string
Meses int // Número de meses acumulados desde o início do exercício
Valor float64
Escala int
Consolidado bool
}
DFPRecord é usada para armazenar os dados (linhas) dos arquivos de DFP.
type FRERecord ¶
type FRERecord struct {
CNPJ string
Nome string // Nome da empresa
DataRef string
DataUltimaAssembleia string
IDDoc int
PctAcoesOrdCirculacao float64
PctAcoesPrefCirculacao float64
PctTotalAcoesCirculacao float64
QtdAcionistasInstitucionais int
QtdAcionistasPF int
QtdAcionistasPJ int
QtdAcoesOrdCirculacao int64
QtdAcoesPrefCirculacao int64
QtdTotalAcoesCirculacao int64
Versao int
}
FRERecord é usada para armazenar os dados (linhas) dos arquivos de FRE.
type JSONTrimestral ¶
type JSONTrimestral []TrimestralItem
type LocalInfra ¶
type LocalInfra struct {
// contains filtered or unexported fields
}
func (LocalInfra) Cleanup ¶
func (l LocalInfra) Cleanup(arqs []Arquivo) []string
func (LocalInfra) DownloadAndUnzip ¶
DownloadAndUnzip baixa e descompacta o arquivo e retorna a lista de arquivos descompactados, com o hash de cada arquivo; retorna o hash do .zip e o erro, se houver.
type Modelo ¶
type Modelo struct {
AtivoTotal [][]string `yaml:"AtivoTotal"`
AtivoCirc [][]string `yaml:"AtivoCirc"`
AtivoNCirc [][]string `yaml:"AtivoNCirc"`
Caixa [][]string `yaml:"Caixa"`
AplicFinanceiras [][]string `yaml:"AplicFinanceiras"`
Estoque [][]string `yaml:"Estoque"`
ContasARecebCirc [][]string `yaml:"ContasARecebCirc"`
ContasARecebNCirc [][]string `yaml:"ContasARecebNCirc"`
PassivoTotal [][]string `yaml:"PassivoTotal"`
PassivoCirc [][]string `yaml:"PassivoCirc"`
PassivoNCirc [][]string `yaml:"PassivoNCirc"`
Equity [][]string `yaml:"Equity"`
DividaCirc [][]string `yaml:"DividaCirc"`
DividaNCirc [][]string `yaml:"DividaNCirc"`
DividendosJCP [][]string `yaml:"DividendosJCP"`
DividendosMin [][]string `yaml:"DividendosMin"`
Vendas [][]string `yaml:"Vendas"`
CustoVendas [][]string `yaml:"CustoVendas"`
DespesasOp [][]string `yaml:"DespesasOp"`
EBIT [][]string `yaml:"EBIT"`
ResulFinanc [][]string `yaml:"ResulFinanc"`
ResulOpDescont [][]string `yaml:"ResulOpDescont"`
LucLiq [][]string `yaml:"LucLiq"`
FCO [][]string `yaml:"FCO"`
FCI [][]string `yaml:"FCI"`
FCF [][]string `yaml:"FCF"`
Deprec [][]string `yaml:"Deprec"`
JurosCapProp [][]string `yaml:"JurosCapProp"`
Dividendos [][]string `yaml:"Dividendos"`
}
ContaYaml armazena os dados importados do arquivo yaml (deve ser convertido em contabil.ConfigConta). Formato: [["1", "Descrição 1"], ["1.1", "Descrição 1.1"]]
type Sqlite ¶
type Sqlite struct {
// contains filtered or unexported fields
}
Sqlite implementa RepositórioLeituraEscrita