Documentation
¶
Index ¶
- Variables
- func NewPagination(page, limit int) *paginationOption
- type MetaResponse
- type Pagination
- type QueryBuilderInteractor
- type RequestOption
- func (request *RequestOption) GetPagination() *paginationOption
- func (request *RequestOption) GetSortBy() *map[string]direction
- func (request *RequestOption) SetPagination(pagination *paginationOption) *RequestOption
- func (request *RequestOption) SetPaginationWithSort(query QueryBuilderInteractor) (q QueryBuilderInteractor, page int, limit int)
- func (request *RequestOption) SetSortBy(sortDir direction, sortBy ...string) (*RequestOption, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // DirAsc sorting ASC DirAsc = direction{ // contains filtered or unexported fields } // DirDesc sorting DESC DirDesc = direction{ // contains filtered or unexported fields } // Direction map direction Direction = map[string]direction{ "ASC": DirAsc, "DESC": DirDesc, } )
View Source
var ( // InnerJoin inner join type InnerJoin = joinType{ // contains filtered or unexported fields } // LeftJoin left join type LeftJoin = joinType{ // contains filtered or unexported fields } // RightJoin right join type RightJoin = joinType{ // contains filtered or unexported fields } )
Functions ¶
func NewPagination ¶
func NewPagination(page, limit int) *paginationOption
NewPagination build new pagination
Types ¶
type MetaResponse ¶
type MetaResponse struct {
Data Pagination `json:"pagination"`
}
MetaResponse meta pagination response
func MapMetaResponse ¶
func MapMetaResponse(totalCount int, currentPageCount int, currentPage int, limitPerPage int) MetaResponse
MapMetaResponse map meta pagination response
type Pagination ¶
type Pagination struct {
Total int `json:"total"`
Count int `json:"count"`
PerPage int `json:"per_page"`
CurrentPage int `json:"current_page"`
TotalPages int `json:"total_pages"`
}
Pagination pagination attributes
type QueryBuilderInteractor ¶
type QueryBuilderInteractor interface {
GetQuery(tablename string, aliases string) (query string, values []interface{}, err error)
CopyQuery() QueryBuilderInteractor
InsertQuery(tableName string, arrColumn []string, models map[string]interface{}) (stmt string, values []interface{}, err error)
InsertManyQuery(tableName string, arrColumn []string, models []interface{}) (stmt string, values []interface{}, err error)
UpdateQuery(tableName string, arrColumn []string, models map[string]interface{}) (stmt string, values []interface{}, err error)
AddSelection(selection string)
AddSum(column string, aliases string)
AddCount(column string, aliases string)
AddPagination(pagination *paginationOption)
AddSort(direction direction, sortBy ...string)
AddWhere(attribute string, operation string, value interface{})
AddRawWhere(listWhere map[string]interface{})
AddJoin(joinType joinType, tableName, aliases, on string)
AddGroup(group ...string)
AddKey(key ...interface{})
RemoveKey()
GetKey() string
}
QueryBuilderInteractor query builder interactor
func NewQueryBuilder ¶
func NewQueryBuilder() QueryBuilderInteractor
NewQueryBuilder create new query builder
type RequestOption ¶
type RequestOption struct {
// contains filtered or unexported fields
}
RequestOption pagination request option
func NewRequestOption ¶
func NewRequestOption() *RequestOption
NewRequestOption build new request option
func (*RequestOption) GetPagination ¶
func (request *RequestOption) GetPagination() *paginationOption
GetPagination get pagination request
func (*RequestOption) GetSortBy ¶
func (request *RequestOption) GetSortBy() *map[string]direction
GetSortBy get sort by request
func (*RequestOption) SetPagination ¶
func (request *RequestOption) SetPagination(pagination *paginationOption) *RequestOption
SetPagination set pagination request
func (*RequestOption) SetPaginationWithSort ¶
func (request *RequestOption) SetPaginationWithSort(query QueryBuilderInteractor) (q QueryBuilderInteractor, page int, limit int)
SetPaginationWithSort Set pagination with sort
func (*RequestOption) SetSortBy ¶
func (request *RequestOption) SetSortBy(sortDir direction, sortBy ...string) (*RequestOption, error)
SetSortBy set sort by request
Click to show internal directories.
Click to hide internal directories.