go-base

module
v0.11.3 Latest Latest
Warning

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

Go to latest
Published: Oct 15, 2024 License: MIT

README

go-base

Cinto de utilidades para não precisar replicar funções básicas em todas as aplicações Várias funções básicas para facilitar o desenvolvimento de aplicações em Go

Funções

Utils
Conversores
func MapInterfaceToBytes(data map[string]interface{}) []byte

Converte um map de interface para um slice de bytes

func ByteToMapInterface(bytes []byte) map[string]interface{}

Converte um slice de bytes para um map de interface

func MapStringToMapInterface(data map[string]string) map[string]interface{}

Converte um map de string para um map de interface

func InterfaceToInt(in interface{}) int

Converte uma interface para um inteiro

func StringToInt(str string) int

Converte uma string para um inteiro

Arquivos
func GetBaseDirectory(directory string) string

Retorna o diretório base da aplicação

func FileExists(path string) bool

Verifica se um arquivo ou diretório existe

func FileToBase64(path string) (string, error)

Converte um arquivo para base64

func FileMimeType(path string) string

Retorna o mime type de um arquivo

func FileCopy(source string, destination string) error

Copia um arquivo, validando se o arquivo de origem existe

Geral
func isTesting() bool

Verifica se a aplicação está em modo de teste

func Hash256(s string) string

Gera um hash SHA256

GetOnlyNumbers(str string) string

Retorna apenas os números de uma string

func CompleteWithZeros(str string, length int) string

Completa uma string com zeros a esquerda

func DatesInInterval(start string, end string) []string

Retorna um slice de strings com todas as datas entre o início e o fim do intervalo, incluindo as datas de início e fim

JWT

Estrutura usada para gerenciar o token JWT

func (j *JwtServer) Valid(token string) bool

Verifica se o token é válido

func (j *JwtServer) Create(payload map[string]interface{}) (string, error)

Cria um token JWT

func (j *JwtServer) Parse(token string) (map[string]interface{}, error)

Decodifica um token JWT

func ExtractValue(key string, jwt string) (interface{}, error)

Extrai um valor do token JWT

Validadores
func ValidateCPF(cpf string) bool

Valida um CPF

func ValidateUUID(subject string) bool

Valida um UUID

func ValidateTimestamp(timestamp string) bool

Valida um timestamp

func ValidateDDD(ddd string) bool

Valida um DDD

func ValidatePhoneNumber(phoneNumber string) bool

Valida um número de telefone

func HasOnlyNumbers(str string) bool

Verifica se uma string possui apenas números

func ValidateCellphoneNumber(phoneNumber string) error

Valida um número de celular

func ValidateLandlineNumber(phoneNumber string) error

Valida um número de telefone fixo

func ValidateEmail(email string) bool

Valida um email

Configuração

O pacote \conf é responsável por carregar as configurações da aplicação

func (db *Database) NewDB(cfg *conf.DBConfiguration) error

Cria uma nova conexão com o banco de dados

func (db *Database) GetDatabase() *sql.DB

Retorna a conexão com o banco de dados

func (db *Database) IsConnected() bool

Verifica se a conexão com o banco de dados está ativa

func (db *Database) Close() error

Fecha a conexão com o banco de dados

func (db *Database) GetResult() (sql.Result, error)

Retorna o resultado da última query executada

func (db *Database) GetLastInsertId() uint64

Retorna o ID da última inserção

func (db *Database) GetStmt(sql string) (*sql.Stmt, error)

Retorna um statement para ser usado em queries

func (db *Database) Exec(sql string, data ...interface{}) error

Executa uma query

func (db *Database) GetOne(sql string, data ...interface{}) ([]byte, error)

Executa uma query e retorna apenas um resultado. Independente do tipo de dados, o resultado é retornado em um slice de bytes

func (db *Database) GetRecord(sqlString string, data ...interface{}) (map[string]interface{}, error)

Executa uma query e retorna apenas um resultado. O resultado é retornado em um map de interface

func (db *Database) GetRecords(sqlString string, data ...interface{}) ([]map[string]interface{}, error)

Executa uma query e retorna vários resultados. O resultado é retornado em um slice de map de interface

func (db *Database) Insert(tableName string, data map[string]interface{}) error

Insere um registro no banco de dados

func (db *Database) Update(tableName string, data map[string]interface{}) error

Atualiza um registro no banco de dados

func (db *Database) IsMySQL() bool

Verifica se o banco de dados é MySQL

func (db *Database) IsPostgreSQL() bool

Verifica se o banco de dados é PostgreSQL

func (db *Database) IsSQLite() bool

Verifica se o banco de dados é SQLite

Database

O pacote \database é responsável por gerenciar a conexão com o banco de dados, além de disponibilizar funções para facilitar a manipulação de dados

func (p *Pool) AddConnection(name string, db *sql.DB) error

Adiciona uma nova conexão ao pool

func (p *Pool) GetConnection(name string) (*sql.DB, error)

Retorna uma conexão do pool

func (p *Pool) CloseConnection(name string) error

Fecha uma conexão do pool

func (p *Pool) IsConnected(name string) bool

Verifica se uma conexão está ativa

Mensagens

O pacote \messaging é responsável por gerenciar as mensagens a serem enviadas ao usuário ou cliente

Directories

Path Synopsis
internal
pkg
ftp

Jump to

Keyboard shortcuts

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