repositorio

package
v0.0.0-...-7efc407 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2020 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DB *sql.DB

DB - Conexao com banco de dados.

Functions

func BooleanToString

func BooleanToString(b bool) string

BooleanToString - Boolean para sql.

func CreateIfNotExistis

func CreateIfNotExistis(tx *sql.Tx) *dominio.Erro

CreateIfNotExistis -

func InCreate

func InCreate(ids []int) string

InCreate - Cria string sql para in.

func InitSchemaBd

func InitSchemaBd(schemas []Schema)

InitSchemaBd - Realiza operacao de migracao da base dados.

func ShcemaUpdate

func ShcemaUpdate(diretorioScripts string) *dominio.Erro

ShcemaUpdate - Executa migracao.

func StringToString

func StringToString(s string) string

StringToString - String para sql.

func Transact

func Transact(db *sql.DB, txFunc func(*sql.Tx) error) (err error)

Transact - Permite o controle e execução de várias transações de maneira que as transações fiquem aninhadas umas as outras e qualquer problema a função identifica e realiza o roolback da transação.

func (s Service) DoSomething() error {
   return Transact(s.db, func (tx *scripts_sql.Tx) error {
       if _, err := tx.Exec(...); err != nil {
           return err
       }
       if _, err := tx.Exec(...); err != nil {
           return err
       }
   })
}

Types

type AtendimentoRepositorio

type AtendimentoRepositorio interface {
	Save(tx *sql.Tx, entidade dominio.Atendimento) (int, *dominio.Erro)

	Update(tx *sql.Tx, entidade dominio.Atendimento) *dominio.Erro

	Delete(tx *sql.Tx, entidade dominio.Atendimento) *dominio.Erro

	FindByIdUsuario(tx *sql.Tx, id int) (entidades []dominio.Atendimento, erro *dominio.Erro)

	FindByIdUsuarioPaginado(tx *sql.Tx, idUsuario int, paginaSolicitada dominio.Pagina) (pagina dominio.Pagina, errDominio *dominio.Erro)

	FindByIdUsuarioPaginadoLike(tx *sql.Tx, idUsuario int, like string, paginaSolicitada dominio.Pagina) (pagina dominio.Pagina, errDominio *dominio.Erro)
}

AtendimentoRepositorio - Define operacoes a serem realizadas com a entidade Ponto.

func NewRepositorioAtendimento

func NewRepositorioAtendimento() AtendimentoRepositorio

NewRepositorioAtendimento - Retorna repositorio de atendimento

type EmpresaRepositorio

type EmpresaRepositorio interface {
	Save(tx *sql.Tx, entidade dominio.Empresa) (int, *dominio.Erro)

	Update(tx *sql.Tx, entidade dominio.Empresa) *dominio.Erro

	Delete(tx *sql.Tx, entidade dominio.Empresa) *dominio.Erro

	FindAll(tx *sql.Tx) (entidades []dominio.Empresa, erro *dominio.Erro)
}

EmpresaRepositorio - Define operacoes a serem realizadas com a entidade empresa.

func NewEmpresaRepositorio

func NewEmpresaRepositorio() EmpresaRepositorio

NewEmpresaRepositorio - Retorna repositorio de empresa.

type Pagina

type Pagina struct {
	NumPagina     int         `json:"numPagina" example:"1"`
	QtdPorPagina  int         `json:"qtdPagina" example:"10"`
	TotalRegistro int         `json:"totalRegistro" example:"1000"`
	TotalPagina   int         `json:"totalPagina" example:"100"`
	Conteudo      interface{} `json:"conteudo"`
}

Pagina - Define estrutura para consultas paginadas.

type PontoRepositorio

type PontoRepositorio interface {
	Save(tx *sql.Tx, entidade dominio.Ponto) (int, *dominio.Erro)

	Update(tx *sql.Tx, entidade dominio.Ponto) *dominio.Erro

	Delete(tx *sql.Tx, entidade dominio.Ponto) *dominio.Erro

	FindByData(tx *sql.Tx, idUsuario int, time time.Time) ([]dominio.Ponto, *dominio.Erro)
}

PontoRepositorio - Define operacoes a serem realizadas com a entidade Ponto.

func NewPontoRepositorio

func NewPontoRepositorio() PontoRepositorio

NewPontoRepositorio - Retorna repositorio de ponto.

type RotinaRepositorio

type RotinaRepositorio interface {
	Save(tx *sql.Tx, entidade dominio.Rotina) (int, *dominio.Erro)

	Update(tx *sql.Tx, entidade dominio.Rotina) *dominio.Erro

	Delete(tx *sql.Tx, entidade dominio.Rotina) *dominio.Erro

	FindAll(tx *sql.Tx) (entidades []dominio.Rotina, erro *dominio.Erro)
}

RotinaRepositorio - Define operacoes a serem realizadas com a entidade Rotina

func NewRotinaRepositorio

func NewRotinaRepositorio() RotinaRepositorio

NewRotinaRepositorio - Retorna repositorio de rotina.

type SGDB

type SGDB string

SGDB - Define o tipo de banco de dados.

const POSTGRES SGDB = "POSTGRES"

POSTGRES - Banco PostgreSQL.

type Schema

type Schema struct {
	ID        int
	Nome      string
	SQL       string
	Executado bool
}

Schema - Define estrutura para controle de versao do banco.

func FindAll

func FindAll(tx *sql.Tx) (entidades []Schema, erro *dominio.Erro)

FindAll -

type UsuarioRepositorio

type UsuarioRepositorio interface {
	Save(tx *sql.Tx, entidade dominio.Usuario) (int, *dominio.Erro)

	Update(tx *sql.Tx, entidade dominio.Usuario) *dominio.Erro

	Delete(tx *sql.Tx, entidade dominio.Usuario) *dominio.Erro

	FindAll(tx *sql.Tx) (entidades []dominio.Usuario, erro *dominio.Erro)

	Login(tx *sql.Tx, login, senha string) (dominio.Usuario, *dominio.Erro)

	BuscaLogin(tx *sql.Tx, login string) (dominio.Usuario, *dominio.Erro)
}

UsuarioRepositorio - Define operacoes a serem realizadas com a entidade Usuario.

func NewUsuarioRepositorio

func NewUsuarioRepositorio() UsuarioRepositorio

NewUsuarioRepositorio - Retorna repositorio de usuario.

Jump to

Keyboard shortcuts

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