Documentation ¶
Index ¶
- func BeetweenString(value string, a string, b string) string
- func CountLengthIface(data interface{}) int
- func CountRecordsData(CustomFilters, pageFilters, pageSearch, columnFilter string, model *gorm.DB) int
- func CreateCustomFilters(pageFilters, pageSearch, columnFilter, pageSort string) (string, []interface{}, string, []interface{}, string)
- func CreateWhereCause(filter QueryFilter, queryFilters *[]string, whereParams *[]interface{})
- func HasPages(totalPages int) bool
- func NormalizeFieldName(field string) string
- func NormalizeParam(Param string) string
- func Paginates(totalPages int) []int
- func SetFilterValue(item *FilterItem, a interface{})
- func StringToJson(value string) interface{}
- type FilterItem
- type PageModel
- type QueryFilter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BeetweenString ¶
BeetweenString func
func CountRecordsData ¶
func CountRecordsData(CustomFilters, pageFilters, pageSearch, columnFilter string, model *gorm.DB) int
CountRecordsData func
func CreateCustomFilters ¶
func CreateCustomFilters(pageFilters, pageSearch, columnFilter, pageSort string) (string, []interface{}, string, []interface{}, string)
CreateCustomFilters func => Example => filters=["age", "not in", [20,21] ] -> pageFilters := [["id","=","6"],["AND"],["status_transaction","=","waiting"],["AND"],["business_id","=","10"]] -> pageSearch := "value" -> columnFilters := ["trx_id","id"] -> pageSort := - Sort ascending example : sort=column_name - Sort descending example : sort=-column_name - Sort multiple example : sort=-fist_column,second_column
func CreateWhereCause ¶
func CreateWhereCause(filter QueryFilter, queryFilters *[]string, whereParams *[]interface{})
CreateWhereCause func
Types ¶
type FilterItem ¶
FilterItem struct
type PageModel ¶
type PageModel struct { Items interface{} `json:"items"` // (Optional) Page int `json:"page"` PrevPage int `json:"prev_page"` NextPage int `json:"next_page"` PostsPerPage int `json:"size"` CurrentParam string `json:"current_param"` First bool `json:"first"` // (Optional) Last bool `json:"last"` HasPages bool `json:"hasPages"` Paginates []int `json:"paginates"` TotalPages float64 `json:"totalPages,omitempty"` // (Optional) Total data shows TotalVisible int `json:"total,omitempty"` // Total real data TotalRecordsFiltered int `json:"visible,omitempty"` // (Optional) Total records filter Additional interface{} `json:"additional,omitempty"` // (Optional) Summary interface{} `json:"summary,omitempty"` // (Optional) }
PageModel struct
func GeneratePagination ¶
func GeneratePagination(pageNumber, pageSize, TotalVisible int, CurrentParam []byte, Items interface{}) *PageModel
GeneratePagination func
Click to show internal directories.
Click to hide internal directories.