Documentation ¶
Overview ¶
*
- Copyright 2015 @ 56x.net.
- name : item
- author : jarryliu
- date : 2016-06-29 09:31
- description :
- history :
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrReadonlyCategory = domain.NewError( "err_readonly_category", "无权修改系统分类", ) ErrNoSuchCategory = domain.NewError( "err_category_not_exist", "分类不存在", ) ErrCategoryCycleReference = domain.NewError( "err_category_cycle_reference", "分类上级循环引用") ErrHasChildCategories = domain.NewError( "err_has_child_categories", "分类包含子分类,无法删除", ) ErrCategoryContainGoods = domain.NewError( "err_category_contain_goods", "分类包含商品,无法删除", ) ErrIncorrectCategoryType = domain.NewError( "err_category_incorrect_type", "分类类型不允许修改") ErrVirtualCatNoUrl = domain.NewError( "err_category_virtual_no_url", "虚拟分类必须设置跳转链接") ErrCategoryFloorShow = domain.NewError( "err_category_floor_show", "非一级分类不能设置首页显示") )
View Source
var ( C_OptionViewName = "viewName" //显示的视图名称 C_OptionDescribe = "describe" //描述 )
View Source
var ( ErrNoSuchProduct = domain.NewError( "err_product_no_such_product", "产品不存在") ErrNoSuchAttr = domain.NewError( "err_product_no_such_attr", "产品属性不存在") ErrNoBrand = domain.NewError( "err_product_no_brand", "未设置商品品牌") ErrVendor = domain.NewError( "err_not_be_review", "商品供应商不正确") ErrNotBeReview = domain.NewError( "err_not_be_review", "商品还未通过审核") ErrItemNameLength = domain.NewError( "err_item_name_length", "商品标题至少10个字") ErrItemIncorrect = domain.NewError( "err_item_incorrect", "商品已被违规下架") ErrNotUploadImage = domain.NewError( "err_goods_not_upload_image", "请上传商品图片") ErrDescribeLength = domain.NewError( "err_item_describe_length", "商品描述至少20个字符") ErrNilRejectRemark = domain.NewError( "err_item_nil_reject_remark", "原因不能为空") )
Functions ¶
This section is empty.
Types ¶
type AttrValue ¶
type AttrValue struct { // 编号 ID int64 `db:"id" pk:"yes" auto:"yes"` // 产品编号 ProductId int64 `db:"product_id"` // 属性名称 AttrName string `db:"-"` // 属性编号 AttrId int64 `db:"attr_id"` // 属性值 AttrData string `db:"attr_data"` // 属性文本 AttrWord string `db:"attr_word"` }
产品属性
type Category ¶
type Category struct { // 编号 Id int `db:"id" pk:"yes" auto:"yes"` // 上级分类 ParentId int `db:"parent_id"` // 产品模型 ModelId int `db:"prod_model"` // 优先级 Priority int `db:"priority"` // 分类名称 Name string `db:"name"` // 是否为虚拟分类 VirtualCat int `db:"virtual_cat"` // 分类链接地址 CatUrl string `db:"cat_url"` // 虚拟分类跳转地址 RedirectUrl string `db:"redirect_url"` // 图标 Icon string `db:"icon"` // 图标坐标 IconPoint string `db:"icon_xy"` // 分类层级 Level int `db:"level"` // 序号 SortNum int `db:"sort_num"` // 是否楼层显示 FloorShow int `db:"floor_show"` // 是否启用 Enabled int `db:"enabled"` // 创建时间 CreateTime int64 `db:"create_time"` // 子分类 Children []*Category `db:"-"` }
分类
type CategoryList ¶
type CategoryList []*Category
func (CategoryList) Len ¶
func (c CategoryList) Len() int
func (CategoryList) Less ¶
func (c CategoryList) Less(i, j int) bool
func (CategoryList) Swap ¶
func (c CategoryList) Swap(i, j int)
type ICategoryRepo ¶
type ICategoryRepo interface { // 获取系统的栏目服务 GlobCatService() IGlobCatService // 保存分类 SaveCategory(*Category) (int, error) // 检查分类是否关联商品 CheckContainGoods(vendorId int64, catId int) bool // 删除分类 DeleteCategory(vendorId int64, catId int) error // 获取分类 GetCategory(mchId, id int) *Category // 获取所有分类 GetCategories(mchId int) []*Category // 获取关联的品牌 GetRelationBrands(idArr []int) []*promodel.ProductBrand }
type IGlobCatService ¶
type IGlobCatService interface { // 是否只读,当商户共享系统的分类时, // 没有修改的权限,即只读! ReadOnly() bool // 创建分类 CreateCategory(*Category) ICategory // 获取分类 GetCategory(id int) ICategory // 获取所有分类 GetCategories() []ICategory // 删除分类 DeleteCategory(id int) error // 递归获取下级分类 CategoryTree(parentId int) *Category // 获取分类关联的品牌 RelationBrands(catId int) []*promodel.ProductBrand }
公共分类服务
type IProductRepo ¶
type IProductRepo interface { // 创建产品 CreateProduct(*Product) IProduct // 根据产品编号获取货品 GetProduct(id int64) IProduct // 获取货品 GetProductValue(itemId int64) *Product // 根据id获取货品 GetProductsById(ids ...int32) ([]*Product, error) SaveProduct(*Product) (int, error) //todo: 到商品 // 获取在货架上的商品 GetPagedOnShelvesProduct(supplierId int64, catIds []int, start, end int) (total int, goods []*Product) //todo: 到商品 // 获取货品销售总数 GetProductSaleNum(productId int64) int // 删除货品 DeleteProduct(productId int64) error // Get AttrValue GetAttr(primary interface{}) *AttrValue // Select AttrValue SelectAttr(where string, v ...interface{}) []*AttrValue // Save AttrValue SaveAttr(v *AttrValue) (int, error) // Delete AttrValue DeleteAttr(primary interface{}) error // Batch Delete AttrValue BatchDeleteAttr(where string, v ...interface{}) (int64, error) }
type Product ¶
type Product struct { // 编号 Id int64 `db:"id" auto:"yes" pk:"yes"` // 分类 CatId int32 `db:"cat_id"` // 名称 Name string `db:"name"` //供应商编号(暂时同mch_id) VendorId int64 `db:"supplier_id"` // 品牌编号 BrandId int32 `db:"brand_id"` // 商家编码 Code string `db:"code"` // 图片 Image string `db:"img"` // 描述 Description string `db:"description"` // 备注 Remark string `db:"remark"` // 状态 State int32 `db:"state"` // 创建时间 CreateTime int64 `db:"create_time"` // 更新时间 UpdateTime int64 `db:"update_time"` // 排序编号 SortNum int32 `db:"sort_num"` // 产品属性 Attrs []*AttrValue `db:"-"` }
产品
Click to show internal directories.
Click to hide internal directories.