criteria

package
v0.0.0-...-1cb9ecb Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2022 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EQUAL        operator = "="
	NOT_EQUAL    operator = "!="
	GT           operator = ">"
	GTE          operator = ">="
	LT           operator = "<"
	LTE          operator = "<="
	CONTAINS     operator = "CONTAINS"
	NOT_CONTAINS operator = "NOT_CONTAINS"
	UNKNOWN      operator = ""
	AND          group    = "AND"
	OR           group    = "OR"
	MATCH        operator = "MATCH"
)
View Source
const (
	NONE kind = "none"
	ASC  kind = "asc"
	DESC kind = "desc"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Criteria

type Criteria struct {
	Filters
	Orders
	Limit  int `json:"limit"`
	Offset int `json:"offset"`
}

func NewCriteria

func NewCriteria() Criteria

func NewCriterias

func NewCriterias(raw string) (Criteria, error)

func (*Criteria) AddFilter

func (c *Criteria) AddFilter(field, op, value, gr string)

field, operator, value and group

func (*Criteria) AddLimit

func (c *Criteria) AddLimit(limit int)

func (*Criteria) AddOffset

func (c *Criteria) AddOffset(offset int)

func (*Criteria) AddOrder

func (c *Criteria) AddOrder(order_by string, order_type kind)

func (*Criteria) Serialize

func (c *Criteria) Serialize() string

func (*Criteria) ValidateFields

func (c *Criteria) ValidateFields() error

type Filter

type Filter struct {
	Field    string   `json:"field"`
	Operator operator `json:"operator"`
	Value    string   `json:"value"`
	Group    group    `json:"group"`
}

type Filters

type Filters struct {
	List []Filter `json:"filters"`
}

func NewFilters

func NewFilters() Filters

func (*Filters) Clean

func (f *Filters) Clean()

func (*Filters) HasFilters

func (f *Filters) HasFilters() bool

func (*Filters) Serialize

func (f *Filters) Serialize() string

func (*Filters) Size

func (f *Filters) Size() int

type Order

type Order struct {
	OrderBy   string `json:"order_by"`
	OrderType kind   `json:"order_type"`
}

func (*Order) HasOrder

func (o *Order) HasOrder() bool

func (*Order) IsAsc

func (o *Order) IsAsc() bool

func (*Order) IsNone

func (o *Order) IsNone() bool

type Orders

type Orders struct {
	List []Order `json:"orders"`
}

func NewOrders

func NewOrders() Orders

func (*Orders) Clean

func (o *Orders) Clean()

func (*Orders) HasOrders

func (o *Orders) HasOrders() bool

func (*Orders) Serialize

func (o *Orders) Serialize() string

func (*Orders) Size

func (o *Orders) Size() int

Jump to

Keyboard shortcuts

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