Documentation
¶
Overview ¶
Package builder provides dynamic query building based on conditions.
Index ¶
- Variables
- func ArticleColumns(fields []shop.ArticleFields) ([]string, error)
- func ArticleListQuery(cond *shop.ListConditions, schema string) (string, []interface{}, error)
- func BasePriceColumns(fields []shop.BasePriceFields) ([]string, error)
- func CategoryColumns(fields []shop.CategoryFields) ([]string, error)
- func ImageColumns(fields []shop.MediaFields) ([]string, error)
- func VariantColumns(fields []shop.VariantFields) ([]string, error)
- func VideoColumns(fields []shop.MediaFields) ([]string, error)
Constants ¶
This section is empty.
Variables ¶
var ( // ArticleFieldColumns maps requested article fields to columns ArticleFieldColumns = fieldColumns{ M: map[int]string{ int(shop.ArticleFields_ID): models.ArticleColumns.ID, int(shop.ArticleFields_CREATED): models.ArticleColumns.CreatedAt, int(shop.ArticleFields_UPDATED): models.ArticleColumns.UpdatedAt, int(shop.ArticleFields_PUBLISHED): models.ArticleColumns.Published, int(shop.ArticleFields_TITLE): models.ArticleColumns.Title, int(shop.ArticleFields_DESCRIPTION): models.ArticleColumns.Description, int(shop.ArticleFields_PRICE): models.ArticleColumns.Price, int(shop.ArticleFields_PROMOTED): models.ArticleColumns.Promoted, }, } // ImageFieldColumns maps requested image fields to columns ImageFieldColumns = fieldColumns{ M: map[int]string{ int(shop.MediaFields_MD_ID): models.ImageColumns.ID, int(shop.MediaFields_MD_LABEL): models.ImageColumns.Label, int(shop.MediaFields_MD_URL): models.ImageColumns.URL, }, } // VideoFieldColumns maps requested video fields to columns VideoFieldColumns = fieldColumns{ M: map[int]string{ int(shop.MediaFields_MD_ID): models.VideoColumns.ID, int(shop.MediaFields_MD_LABEL): models.VideoColumns.Label, int(shop.MediaFields_MD_URL): models.VideoColumns.URL, }, } // CategoryFieldColumns maps requested category fields to columns CategoryFieldColumns = fieldColumns{ M: map[int]string{ int(shop.CategoryFields_CAT_ID): models.CategoryColumns.ID, int(shop.CategoryFields_CAT_CREATED): models.CategoryColumns.CreatedAt, int(shop.CategoryFields_CAT_UPDATED): models.CategoryColumns.UpdatedAt, int(shop.CategoryFields_CAT_LABEL): models.CategoryColumns.Label, }} // BasePriceFieldColumns maps requested baseprice fields to columns BasePriceFieldColumns = fieldColumns{ M: map[int]string{ int(shop.BasePriceFields_BP_ID): models.BasePriceColumns.ID, int(shop.BasePriceFields_BP_CREATED): models.BasePriceColumns.CreatedAt, int(shop.BasePriceFields_BP_UPDATED): models.BasePriceColumns.UpdatedAt, int(shop.BasePriceFields_BP_LABEL): models.BasePriceColumns.Label, int(shop.BasePriceFields_BP_PRICE): models.BasePriceColumns.Price, }, } // VariantFieldColumns maps requested variant fields to columns VariantFieldColumns = fieldColumns{ M: map[int]string{ int(shop.VariantFields_VRT_ID): models.VariantColumns.ID, int(shop.VariantFields_VRT_CREATED): models.VariantColumns.CreatedAt, int(shop.VariantFields_VRT_UPDATED): models.VariantColumns.UpdatedAt, int(shop.VariantFields_VRT_LABELS): models.VariantColumns.Labels, int(shop.VariantFields_VRT_MULTIPLIER): models.VariantColumns.Multiplier, }, } )
var Debug bool
Debug enables printing of generated queries
var DefaultLimit = int32(25)
DefaultLimit is used when ListConditions does not specify any. Zero unsets the default.
Functions ¶
func ArticleColumns ¶
func ArticleColumns(fields []shop.ArticleFields) ([]string, error)
ArticleColumns returns a list of columns, reflecting the requested fields. When shop.ArticleFields_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
func ArticleListQuery ¶
func ArticleListQuery(cond *shop.ListConditions, schema string) (string, []interface{}, error)
ArticleListQuery builds and returns an SQL query based on the provided conditions. The query is designed to return a single JSON array as result. This array should be unmarshalled into a []shop.Article slice.
func BasePriceColumns ¶
func BasePriceColumns(fields []shop.BasePriceFields) ([]string, error)
BasePriceColumns returns a list of columns, reflecting the requested fields. When shop.BasePriceFields_BP_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
func CategoryColumns ¶
func CategoryColumns(fields []shop.CategoryFields) ([]string, error)
CategoryColumns returns a list of columns, reflecting the requested fields. When shop.CategoryFields_CAT_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
func ImageColumns ¶
func ImageColumns(fields []shop.MediaFields) ([]string, error)
ImageColumns returns a list of columns, reflecting the requested fields. When shop.MediaFields_MD_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
func VariantColumns ¶
func VariantColumns(fields []shop.VariantFields) ([]string, error)
VariantColumns returns a list of columns, reflecting the requested fields. When shop.VariantFields_VRT_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
func VideoColumns ¶
func VideoColumns(fields []shop.MediaFields) ([]string, error)
VideoColumns returns a list of columns, reflecting the requested fields. When shop.MediaFields_MD_ALL is passed, all columns are returned In case of an unmapped field, codes.Unimplemented error is returned.
Types ¶
This section is empty.