sql

package
v0.0.0-...-c5ca51d Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	TableMap = map[string]string{}
)

Functions

func GetFormatedValue

func GetFormatedValue(cf ColumnFilter, fieldType string, formatColumnFilter FilterFormat) string

Types

type AddCriteriaConfig

type AddCriteriaConfig struct {
	TableAlias       *string
	FieldTagsExclude []string
	// contains filtered or unexported fields
}

type ColumnFilter

type ColumnFilter struct {
	Column    string      `json:"column"`
	Operation string      `json:"operation"`
	Value     interface{} `json:"value"`
}

func (ColumnFilter) GetIsNilAllowedAndFormat

func (cf ColumnFilter) GetIsNilAllowedAndFormat() (string, error)

func (ColumnFilter) SliceExpected

func (cf ColumnFilter) SliceExpected() bool

func (*ColumnFilter) Validate

func (cf *ColumnFilter) Validate(model interface{}) (string, string, error)

type ColumnFilterConfig

type ColumnFilterConfig struct {
	TableAlias *string
}

type FieldOp

type FieldOp func(f interface{}) string

type FilterFormat

type FilterFormat struct {
	Format          string
	FormatValueFunc func(interface{}) string
}

type Page

type Page[T any] struct {
	Data             []T
	Limit            int32
	Offset           int32
	TotalCount       int32
	QueryExecutionId *string
	NextToken        *string
}

type Params

type Params interface {
	BuildQuery() *SelectInfo
}

type SelectInfo

type SelectInfo struct {
	CriteriaModel     Params
	TableModel        interface{}
	Table             string
	DistinctColumn    string
	Columns           []string
	WhereClause       []string
	Err               error
	Query             string
	Joins             []string
	CustomQuery       *string
	Limit             int32
	Offset            int32
	DefaultSortColumn string
	SortColumn        string
	SortDirection     string
	QueryExecutionId  *string
	NextToken         *string
}

func (*SelectInfo) AddColumnFilters

func (s *SelectInfo) AddColumnFilters(columnFilters *[]ColumnFilter, config ...ColumnFilterConfig)

func (*SelectInfo) AddCriteria

func (s *SelectInfo) AddCriteria(config ...AddCriteriaConfig)

func (*SelectInfo) AddCriteriaFieldOperatorOverride

func (s *SelectInfo) AddCriteriaFieldOperatorOverride(cfg *AddCriteriaConfig, operation string, fields ...interface{})

func (*SelectInfo) AddWhereClauseCustom

func (s *SelectInfo) AddWhereClauseCustom(whereClauseFmt string, args ...interface{})

func (*SelectInfo) AddWhereClauseFromColumnFilter

func (s *SelectInfo) AddWhereClauseFromColumnFilter(cf ColumnFilter, config *ColumnFilterConfig)

Jump to

Keyboard shortcuts

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