datapackage

package module
v0.0.0-...-5f369da Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2024 License: MIT Imports: 14 Imported by: 1

README

datapackage

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DescriptorMapV2

func DescriptorMapV2() (map[string]interface{}, error)

func Zip

func Zip(outputPath string, rc ResultadoColeta_CSV, cleanup bool) error

func ZipV2

func ZipV2(outputPath string, rc ResultadoColeta_CSV_V2, cleanup bool) error

Types

type Coleta_CSV

type Coleta_CSV struct {
	ChaveColeta        string    `csv:"chave_coleta" tableheader:"chave_coleta"`
	Orgao              string    `csv:"orgao" tableheader:"orgao"`
	Mes                int32     `csv:"mes" tableheader:"mes"`
	Ano                int32     `csv:"ano" tableheader:"ano"`
	TimestampColeta    time.Time `csv:"timestamp_coleta" tableheader:"timestamp_coleta"`
	RepositorioColetor string    `csv:"repositorio_coletor" tableheader:"repositorio_coletor"`
	VersaoColetor      string    `csv:"versao_coletor" tableheader:"versao_coletor"`
	DirColetor         string    `csv:"dir_coletor" tableheader:"dir_coletor"`
}

Essa versão deixou de ser utilizada em julho de 2023

type Coleta_CSV_V2

type Coleta_CSV_V2 struct {
	ChaveColeta        string    `csv:"chave_coleta" tableheader:"chave_coleta"`
	Orgao              string    `csv:"orgao" tableheader:"orgao"`
	Mes                int32     `csv:"mes" tableheader:"mes"`
	Ano                int32     `csv:"ano" tableheader:"ano"`
	TimestampColeta    time.Time `csv:"timestamp_coleta" tableheader:"timestamp_coleta"`
	RepositorioColetor string    `csv:"repositorio_coletor" tableheader:"repositorio_coletor"`
	VersaoColetor      string    `csv:"versao_coletor" tableheader:"versao_coletor"`
	RepositorioParser  string    `csv:"repositorio_parser" tableheader:"repositorio_parser"`
	VersaoParser       string    `csv:"versao_parser" tableheader:"versao_parser"`
}

*_V2: Essa versão passou a ser utilizada a partir de julho de 2023

type Constraints

type Constraints struct {
	Required bool     `json:"required,omitempty"`
	Minimum  string   `json:"minimum,omitempty"`
	Maximum  string   `json:"maximum,omitempty"`
	Enum     []string `json:"enum,omitempty"`
}

type ContraCheque_CSV

type ContraCheque_CSV struct {
	IdContraCheque string `csv:"id_contra_cheque" tableheader:"id_contra_cheque"`
	ChaveColeta    string `csv:"chave_coleta" tableheader:"chave_coleta"`
	Nome           string `csv:"nome" tableheader:"nome"`
	Matricula      string `csv:"matricula" tableheader:"matricula"`
	Funcao         string `csv:"funcao" tableheader:"funcao"`
	LocalTrabalho  string `csv:"local_trabalho" tableheader:"local_trabalho"`
	Tipo           string `csv:"tipo" tableheader:"tipo"`
	Ativo          bool   `csv:"ativo" tableheader:"ativo"`
}

Essa versão deixou de ser utilizada em julho de 2023

type Contracheque_CSV_V2

type Contracheque_CSV_V2 struct {
	IdContracheque int           `csv:"id_contracheque" tableheader:"id_contracheque"`
	Orgao          string        `csv:"orgao" tableheader:"orgao"`
	Mes            int32         `csv:"mes" tableheader:"mes"`
	Ano            int32         `csv:"ano" tableheader:"ano"`
	Nome           string        `csv:"nome" tableheader:"nome"`
	Matricula      string        `csv:"matricula" tableheader:"matricula"`
	Funcao         string        `csv:"funcao" tableheader:"funcao"`
	LocalTrabalho  string        `csv:"local_trabalho" tableheader:"local_trabalho"`
	Salario        CustomFloat32 `csv:"salario" tableheader:"salario"`
	Beneficios     CustomFloat32 `csv:"beneficios" tableheader:"beneficios"`
	Descontos      CustomFloat32 `csv:"descontos" tableheader:"descontos"`
	Remuneracao    CustomFloat32 `csv:"remuneracao" tableheader:"remuneracao"`
	Situacao       string        `csv:"situacao" tableheader:"situacao"`
}

*_V2: Essa versão passou a ser utilizada a partir de julho de 2023

type Contributor

type Contributor struct {
	Title string `json:"title,omitempty"`
	Role  string `json:"role,omitempty"`
}

type CustomFloat32

type CustomFloat32 float32

func (CustomFloat32) MarshalCSV

func (c CustomFloat32) MarshalCSV() (string, error)

func (*CustomFloat32) UnmarshalCSV

func (c *CustomFloat32) UnmarshalCSV(csv string) error

type Dialect

type Dialect struct {
	Delimiter string `json:"delimiter,omitempty"`
}

type FKRef

type FKRef struct {
	Resource string `json:"resource,omitempty"`
	Fields   string `json:"fields,omitempty"`
}

type Field

type Field struct {
	Name            string            `json:"name,omitempty"`
	Type            string            `json:"type,omitempty"`
	Format          string            `json:"format,omitempty"`
	Title           string            `json:"title,omitempty"`
	Description     string            `json:"description,omitempty"`
	DescriptionPTBR string            `json:"description-ptbr,omitempty"`
	Constraints     Constraints       `json:"constraints,omitempty"`
	BareNumber      bool              `json:"bareNumber,omitempty"`
	Enum            map[string]string `json:"enum,omitempty"`
	EnumPTBR        map[string]string `json:"enum-ptbr,omitempty"`
	DecimalChar     string            `json:"decimalChar,omitempty"`
}

type ForeignKey

type ForeignKey struct {
	Fields    string `json:"fields,omitempty"`
	Reference FKRef  `json:"reference,omitempty"`
}

type License

type License struct {
	Name  string `json:"name,omitempty"`
	Title string `json:"title,omitempty"`
	Path  string `json:"path,omitempty"`
}

type Metadados_CSV

type Metadados_CSV struct {
	ChaveColeta                string  `csv:"chave_coleta" tableheader:"chave_coleta"`
	FormatoAberto              bool    `csv:"formato_aberto" tableheader:"formato_aberto"`                             // Os dados são disponibilizados em formato aberto?
	Acesso                     string  `csv:"acesso" tableheader:"acesso"`                                             // Conseguimos prever/construir uma URL com base no órgão/mês/ano que leve ao download do dado?
	Extensao                   string  `csv:"extensao" tableheader:"extensao"`                                         // Extensao do arquivo de dados, ex: CSV, JSON, XLS, etc
	EstritamenteTabular        bool    `csv:"estritamente_tabular" tableheader:"estritamente_tabular"`                 // Órgãos que disponibilizam dados limpos (tidy data)
	FormatoConsistente         bool    `csv:"formato_consistente" tableheader:"formato_consistente"`                   // Órgão alterou a forma de expor seus dados entre o mês em questão e o mês anterior?
	TemMatricula               bool    `csv:"tem_matricula" tableheader:"tem_matricula"`                               // Órgão disponibiliza matrícula do servidor?
	TemLotacao                 bool    `csv:"tem_lotacao" tableheader:"tem_lotacao"`                                   // Órgão disponibiliza lotação do servidor?
	TemCargo                   bool    `csv:"tem_cargo" tableheader:"tem_cargo"`                                       // Órgão disponibiliza a função do servidor?
	DetalhamentoReceitaBase    string  `csv:"detalhamento_receita_base" tableheader:"detalhamento_receita_base"`       // Contra-cheque
	DetalhamentoOutrasReceitas string  `csv:"detalhamento_outras_receitas" tableheader:"detalhamento_outras_receitas"` // Inclui indenizações, direitos eventuais, diárias, etc
	DetalhamentoDescontos      string  `csv:"detalhamento_descontos" tableheader:"detalhamento_descontos"`             // Inclui imposto de renda, retenção por teto e contribuição previdenciária
	IndiceCompletude           float32 `csv:"indice_completude" tableheader:"indice_completude"`                       // Componente do índice de transparência resultante da análise dos metadados relacionados a disponibilidade dos dados.
	IndiceFacilidade           float32 `csv:"indice_facilidade" tableheader:"indice_facilidade"`                       // Componente do índice de transparência resultante da análise dos metadados relacionados a dificuldade para acessar os dados que estão disponíveis.
	IndiceTransparencia        float32 `csv:"indice_transparencia" tableheader:"indice_transparencia"`                 // Nota final, calculada utilizada os componentes de disponibilidade e dificuldade.
}

Essa versão deixou de ser utilizada em julho de 2023

type Metadados_CSV_V2

type Metadados_CSV_V2 struct {
	Orgao                      string        `csv:"orgao" tableheader:"orgao"`
	Mes                        int32         `csv:"mes" tableheader:"mes"`
	Ano                        int32         `csv:"ano" tableheader:"ano"`
	FormatoAberto              bool          `csv:"formato_aberto" tableheader:"formato_aberto"`                             // Os dados são disponibilizados em formato aberto?
	Acesso                     string        `csv:"acesso" tableheader:"acesso"`                                             // Conseguimos prever/construir uma URL com base no órgão/mês/ano que leve ao download do dado?
	Extensao                   string        `csv:"extensao" tableheader:"extensao"`                                         // Extensao do arquivo de dados, ex: CSV, JSON, XLS, etc
	EstritamenteTabular        bool          `csv:"estritamente_tabular" tableheader:"estritamente_tabular"`                 // Órgãos que disponibilizam dados limpos (tidy data)
	FormatoConsistente         bool          `csv:"formato_consistente" tableheader:"formato_consistente"`                   // Órgão alterou a forma de expor seus dados entre o mês em questão e o mês anterior?
	TemMatricula               bool          `csv:"tem_matricula" tableheader:"tem_matricula"`                               // Órgão disponibiliza matrícula do servidor?
	TemLotacao                 bool          `csv:"tem_lotacao" tableheader:"tem_lotacao"`                                   // Órgão disponibiliza lotação do servidor?
	TemCargo                   bool          `csv:"tem_cargo" tableheader:"tem_cargo"`                                       // Órgão disponibiliza a função do servidor?
	DetalhamentoReceitaBase    string        `csv:"detalhamento_receita_base" tableheader:"detalhamento_receita_base"`       // Contra-cheque
	DetalhamentoOutrasReceitas string        `csv:"detalhamento_outras_receitas" tableheader:"detalhamento_outras_receitas"` // Inclui indenizações, direitos eventuais, diárias, etc
	DetalhamentoDescontos      string        `csv:"detalhamento_descontos" tableheader:"detalhamento_descontos"`             // Inclui imposto de renda, retenção por teto e contribuição previdenciária
	IndiceCompletude           CustomFloat32 `csv:"indice_completude" tableheader:"indice_completude"`                       // Componente do índice de transparência resultante da análise dos metadados relacionados a disponibilidade dos dados.
	IndiceFacilidade           CustomFloat32 `csv:"indice_facilidade" tableheader:"indice_facilidade"`                       // Componente do índice de transparência resultante da análise dos metadados relacionados a dificuldade para acessar os dados que estão disponíveis.
	IndiceTransparencia        CustomFloat32 `csv:"indice_transparencia" tableheader:"indice_transparencia"`                 // Nota final, calculada utilizada os componentes de disponibilidade e dificuldade.
}

*_V2: Essa versão passou a ser utilizada a partir de julho de 2023

type Remuneracao_CSV

type Remuneracao_CSV struct {
	IdContraCheque string  `csv:"id_contra_cheque" tableheader:"id_contra_cheque"`
	ChaveColeta    string  `csv:"chave_coleta" tableheader:"chave_coleta"`
	Natureza       string  `csv:"natureza" tableheader:"natureza"`
	Categoria      string  `csv:"categoria" tableheader:"categoria"`
	Item           string  `csv:"item" tableheader:"item"`
	Valor          float64 `csv:"valor" tableheader:"valor"`
}

Essa versão deixou de ser utilizada em julho de 2023

type Remuneracao_CSV_V2

type Remuneracao_CSV_V2 struct {
	IdContracheque int           `csv:"id_contracheque" tableheader:"id_contracheque"`
	Orgao          string        `csv:"orgao" tableheader:"orgao"`
	Mes            int32         `csv:"mes" tableheader:"mes"`
	Ano            int32         `csv:"ano" tableheader:"ano"`
	Tipo           string        `csv:"tipo" tableheader:"tipo"`
	Categoria      string        `csv:"categoria" tableheader:"categoria"`
	Item           string        `csv:"item" tableheader:"item"`
	Valor          CustomFloat32 `csv:"valor" tableheader:"valor"`
}

*_V2: Essa versão passou a ser utilizada a partir de julho de 2023

type Resource

type Resource struct {
	Name        string  `json:"name,omitempty"`
	Path        string  `json:"path,omitempty"`
	Profile     string  `json:"profile,omitempty"`
	Description string  `json:"description,omitempty"`
	Schema      Schema  `json:"schema,omitempty"`
	Dialect     Dialect `json:"dialect,omitempty"`
}

type ResultadoColeta_CSV

type ResultadoColeta_CSV struct {
	Coleta       []Coleta_CSV
	Remuneracoes []Remuneracao_CSV
	Folha        []ContraCheque_CSV
	Metadados    []Metadados_CSV
}

Essa versão deixou de ser utilizada em julho de 2023

func Load

func Load(path string) (ResultadoColeta_CSV, error)

func NewResultadoColetaCSV

func NewResultadoColetaCSV(rc *coleta.ResultadoColeta) ResultadoColeta_CSV

Essa versão deixou de ser utilizada em julho de 2023.

type ResultadoColeta_CSV_V2

type ResultadoColeta_CSV_V2 struct {
	Coleta       []Coleta_CSV_V2
	Remuneracoes []Remuneracao_CSV_V2
	Folha        []Contracheque_CSV_V2
	Metadados    []Metadados_CSV_V2
}

*_V2: Essa versão passou a ser utilizada a partir de julho de 2023

func LoadV2

func LoadV2(path string) (ResultadoColeta_CSV_V2, error)

func NewResultadoColetaCSV_V2

func NewResultadoColetaCSV_V2(rc *coleta.ResultadoColeta) ResultadoColeta_CSV_V2

Essa versão passou a ser utilizada a partir de julho de 2023

type Schema

type Schema struct {
	Fields      []Field      `json:"fields,omitempty"`
	PrimaryKey  string       `json:"primaryKey,omitempty"`
	ForeignKeys []ForeignKey `json:"foreignKeys,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL