MallCore

package
v5.3.1 Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2024 License: Apache-2.0 Imports: 43 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//Sort 分类
	Sort = ClassSort.Sort{
		SortTableName: "mall_core_sort",
	}
	//Tags 标签
	Tags = ClassTag.Tag{
		TagTableName: "mall_core_tags",
	}
	//Comment 评论
	Comment = ClassComment.Comment{
		TableName:         "mall_core_comment",
		UserMoreComment:   false,
		UserEditComment:   false,
		UserDeleteComment: false,
		OrgDeleteComment:  false,
		System:            "mall_core_product",
	}
	//OpenSub 是否启动订阅
	OpenSub = false
)

Functions

func ArgsGetTransportsName

func ArgsGetTransportsName(args *ArgsGetTransports) (dataList map[int64]string, err error)

func BuyOrderVirtual

func BuyOrderVirtual(args *ArgsBuyOrderVirtual) (errCode string, err error)

BuyOrderVirtual 虚拟订单快速构建 * 1. 仅适用于特定场景下 2. 用于快速构建订单,并完成订单 3. 订单不会产生真实收益,主要用于数据同步、手动填录等场景

func CheckProductSub

func CheckProductSub(args *ArgsCheckProductSub) (errCode string, err error)

CheckProductSub 检查会员是否可用于商品 检查可用、授权给商户 分类和标签的相关数据,在分类和标签扩展参数user_subs中存放

func CheckProductTicket

func CheckProductTicket(args *ArgsCheckProductTicket) (errCode string, err error)

CheckProductTicket 检查票据是否可用于商品 检查是否可用、授权给商户

func CreateOrder

func CreateOrder(args *ArgsCreateOrder) (orderWaitData ServiceOrderWaitFields.FieldsWait, errCode string, err error)

CreateOrder 开始下单 该方法包含了BuyProduct的处理,请勿同时使用。 可以使用BuyProduct作为释放库存处理 注意,订单不根据商品地址拆分,拆分配送将依赖于额外的物流处理模块进行调配货物

func DeleteAudit

func DeleteAudit(args *ArgsDeleteAudit) (err error)

DeleteAudit 删除审核请求

func DeleteProduct

func DeleteProduct(args *ArgsDeleteProduct) (err error)

DeleteProduct 删除商品

func DeleteTransport

func DeleteTransport(args *ArgsDeleteTransport) (err error)

DeleteTransport 删除模版 必须删除关联后才能删除

func GetERPProductBindMallProductCount

func GetERPProductBindMallProductCount(orgID int64, erpProductID int64, erpProductCode string, haveNoPublish bool) (count int64)

GetERPProductBindMallProductCount 获取的ERP产品数量关联的商品数量

func GetProductCountBySort

func GetProductCountBySort(args *ArgsGetProductCountBySort) (count int64)

GetProductCountBySort 获取指定分类下的商品数量

func GetProductLastPrice

func GetProductLastPrice(productID int64, optionKey string) (price int64)

GetProductLastPrice 获取商品最终价格

func GetProductName

func GetProductName(productID int64) string

func GetProductOtherOptionsName

func GetProductOtherOptionsName(productID int64, key string) (optionName string)

GetProductOtherOptionsName 获取商品附加选线的名称

func GetProductsName

func GetProductsName(args *ArgsGetProducts) (data map[int64]string, err error)

GetProductsName 获取指定商品组名称

func Init

func Init()

Init 初始化

func ReturnProduct

func ReturnProduct(args *ArgsReturnProduct) (err error)

ReturnProduct 恢复商品

func UpdateAuditBan

func UpdateAuditBan(args *ArgsUpdateAuditBan) (err error)

UpdateAuditBan 拒绝审核

func UpdateAuditPassing

func UpdateAuditPassing(args *ArgsUpdateAuditPassing) (err error)

UpdateAuditPassing 通过审核

func UpdateProduct

func UpdateProduct(args *ArgsUpdateProduct) (errCode string, err error)

UpdateProduct 修改商品

func UpdateProductAddCount

func UpdateProductAddCount(productID int64, optionKey string, count int) (err error)

UpdateProductAddCount 修改库存

func UpdateProductBuy

func UpdateProductBuy(productID int64, count int) (err error)

func UpdateProductCount

func UpdateProductCount(args *ArgsUpdateProductCount) (err error)

UpdateProductCount 修改库存

func UpdateProductPublishDown

func UpdateProductPublishDown(orgID int64, productID int64) (err error)

UpdateProductPublishDown 下架产品

func UpdateTransport

func UpdateTransport(args *ArgsUpdateTransport) (err error)

UpdateTransport 修改模版

Types

type ArgsBuyOrderVirtual

type ArgsBuyOrderVirtual struct {
	//订单创建时间
	CreateAt string `db:"create_at" json:"createAt" check:"defaultTime"`
	//商户ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//采购商
	BuyCompanyID int64 `json:"buyCompanyID" check:"id" empty:"true"`
	//创建来源
	// 0 商户平台下单、1 用户APP下单、2 微信小程序下单、3 支付宝小程序下单、4 电话系统下单、5 线下柜台下单、6 辅助设备下单、7 其他渠道
	CreateFrom int `db:"create_from" json:"createFrom"`
	//收货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//备注信息
	Des string `db:"des" json:"des" check:"des" min:"1" max:"600" empty:"true"`
	//商品ID列
	Products []ArgsGetProductPriceProductVirtual `db:"products" json:"products"`
	//会员配置ID
	// 只能指定一个
	UserSubID int64 `db:"user_sub_id" json:"userSubID" check:"id" empty:"true"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//是否使用积分
	UseIntegral bool `db:"use_integral" json:"useIntegral" check:"bool"`
	//强制插入其他费用
	PriceList []ArgsPriceVirtual `json:"priceList"`
	//订单总费用
	PriceReal int64 `db:"price_real" json:"priceReal" check:"price" empty:"true"`
	//推荐人手机号
	ReferrerNationCode string `db:"referrer_nation_code" json:"referrerNationCode" check:"nationCode" empty:"true"`
	ReferrerPhone      string `json:"referrerPhone" check:"phone" empty:"true"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
	//配送方式
	TransportType int `db:"transport_type" json:"transportType"`
}

ArgsBuyOrderVirtual 虚拟订单快速构建参数

type ArgsCheckProductSub

type ArgsCheckProductSub struct {
	//商品ID
	// 不一定非要给该值
	ID int64 `db:"id" json:"id" check:"id" empty:"true"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id"`
	//标签ID列
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//会员配置列
	// 会员配置分平台和商户,平台会员需参与活动才能使用,否则将禁止设置和后期使用
	UserSubs pq.Int64Array `db:"user_subs" json:"userSubs" check:"ids" empty:"true"`
	//票据ID列
	// 检查票据和会员的互斥关系
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//购买数量
	// 如果为0,则只判断是否可用
	BuyCount int64 `db:"buy_count" json:"buyCount" check:"int64Than0" empty:"true"`
}

ArgsCheckProductSub 检查会员是否可用于商品参数

type ArgsCheckProductTicket

type ArgsCheckProductTicket struct {
	//商品ID
	// 不一定非要给该值
	ID int64 `db:"id" json:"id" check:"id" empty:"true"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id"`
	//标签ID列
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//会员配置列
	// 会员配置分平台和商户,平台会员需参与活动才能使用,否则将禁止设置和后期使用
	UserSubs pq.Int64Array `db:"user_subs" json:"userSubs" check:"ids" empty:"true"`
	//票据ID列
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//购买数量
	// 如果为0,则只判断是否可用
	BuyCount int64 `db:"buy_count" json:"buyCount" check:"int64Than0" empty:"true"`
}

ArgsCheckProductTicket 检查票据是否可用于商品参数

type ArgsCreateAudit

type ArgsCreateAudit struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID" check:"id"`
}

ArgsCreateAudit 创建审核请求参数

type ArgsCreateOrder

type ArgsCreateOrder struct {
	//商户ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//创建来源
	// 0 商户平台下单、1 用户APP下单、2 微信小程序下单、3 支付宝小程序下单、4 电话系统下单、5 线下柜台下单、6 辅助设备下单、7 其他渠道
	CreateFrom int `db:"create_from" json:"createFrom"`
	//收货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//期望送货时间
	TransportTaskAt string `db:"transport_task_at" json:"transportTaskAt" check:"isoTime" empty:"true"`
	//备注信息
	Des string `db:"des" json:"des" check:"des" min:"1" max:"600" empty:"true"`
	//商品ID列
	Products []ArgsGetProductPriceProduct `db:"products" json:"products"`
	//会员配置ID
	// 只能指定一个
	UserSubID int64 `db:"user_sub_id" json:"userSubID" check:"id" empty:"true"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//是否使用积分
	UseIntegral bool `db:"use_integral" json:"useIntegral" check:"bool"`
	//订单总费用
	// 总费用是否支付
	PricePay bool `db:"price_pay" json:"pricePay" check:"bool"`
	//是否允许货到付款?
	TransportPayAfter bool `db:"transport_pay_after" json:"transportPayAfter" check:"bool" empty:"true"`
	//是否绕过对库存限制
	SkipProductCountLimit bool `json:"skipProductCountLimit" check:"bool" empty:"true"`
	//推荐人手机号
	ReferrerNationCode string `db:"referrer_nation_code" json:"referrerNationCode" check:"nationCode" empty:"true"`
	ReferrerPhone      string `json:"referrerPhone" check:"phone" empty:"true"`
	//强制插入其他费用
	OtherPriceList ServiceOrderWaitFields.FieldsPrices `json:"otherPriceList"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
	//配送方式
	TransportType int `db:"transport_type" json:"transportType"`
}

ArgsCreateOrder 开始下单参数

type ArgsCreateProduct

type ArgsCreateProduct struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//商品类型
	// 0 普通商品; 1 关联选项商品; 2 虚拟商品
	ProductType int `db:"product_type" json:"productType" check:"intThan0" empty:"true"`
	//是否为虚拟商品
	// 不会发生配送处理
	IsVirtual bool `db:"is_virtual" json:"isVirtual" check:"bool"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id"`
	//标签ID列
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//商品条形码编码
	Code string `db:"code" json:"code"`
	//标题
	Title string `db:"title" json:"title" check:"title" min:"1" max:"300"`
	//副标题
	TitleDes string `db:"title_des" json:"titleDes" check:"title" min:"1" max:"300" empty:"true"`
	//商品描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"6000" empty:"true"`
	//封面ID
	CoverFileIDs pq.Int64Array `db:"cover_file_ids" json:"coverFileIDs" check:"ids" empty:"true"`
	//描述图组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles" check:"ids" empty:"true"`
	// 货币
	Currency int `db:"currency" json:"currency" check:"currency"`
	// 实际费用
	PriceReal int64 `db:"price_real" json:"priceReal" check:"price"`
	//折扣截止
	PriceExpireAt string `db:"price_expire_at" json:"priceExpireAt" check:"isoTime" empty:"true"`
	//折扣前费用
	Price int64 `db:"price" json:"price" check:"price"`
	//不含税价格
	PriceNoTax int64 `db:"price_no_tax" json:"priceNoTax" check:"price" empty:"true"`
	//积分价格
	Integral int64 `db:"integral" json:"integral" check:"price" empty:"true"`
	//积分最多抵扣费用
	IntegralPrice int64 `db:"integral_price" json:"integralPrice" check:"price" empty:"true"`
	//积分包含配送费免费
	IntegralTransportFree bool `db:"integral_transport_free" json:"integralTransportFree"`
	//会员价格
	// 会员配置分平台和商户,平台会员需参与活动才能使用,否则将禁止设置和后期使用
	UserSubPrice FieldsUserSubPrices `db:"user_sub_price" json:"userSubPrice"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//配送费计费模版ID
	TransportID int64 `db:"transport_id" json:"transportID" check:"id" empty:"true"`
	//唯一送货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//关联仓库的产品
	WarehouseProductID int64 `db:"warehouse_product_id" json:"warehouseProductID" check:"id" empty:"true"`
	//货物重量
	Weight int `db:"weight" json:"weight" check:"intThan0" empty:"true"`
	//总库存
	Count int `db:"count" json:"count" check:"intThan0" empty:"true"`
	//关联附加选项
	OtherOptions DataOtherOptions `db:"other_options" json:"otherOptions"`
	//给与票据列
	// 和赠礼区别在于,赠礼不可退,此票据会跟随订单取消设置是否退还
	GivingTickets FieldsGivingTickets `db:"giving_tickets" json:"givingTickets"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsCreateProduct 创建商品参数

type ArgsCreateTransport

type ArgsCreateTransport struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//模版名称
	Name string `db:"name" json:"name" check:"title" min:"1" max:"300"`
	//计费规则
	// 0 无配送费;1 按件计算;2 按重量计算;3 按公里数计算
	// 后续所有计费标准必须统一,否则系统将拒绝创建或修改
	Rules int `db:"rules" json:"rules" check:"intThan0" empty:"true"`
	//首费标准
	// 0 留空;1 N件开始收费;2 N重量开始收费;3 N公里开始收费
	RulesUnit int `db:"rules_unit" json:"rulesUnit" check:"intThan0" empty:"true"`
	//首费金额
	RulesPrice int64 `db:"rules_price" json:"rulesPrice" check:"price" empty:"true"`
	//增费标准
	// 0 无增量;1 每N件增加费用;2 每N重量增加费用;3 每N公里增加费用
	AddType int `db:"add_type" json:"addType" check:"intThan0" empty:"true"`
	//增费单位
	AddUnit int `db:"add_unit" json:"addUnit" check:"intThan0" empty:"true"`
	//增费金额
	// 单位增加的费用
	AddPrice int64 `db:"add_price" json:"addPrice" check:"price" empty:"true"`
	//免邮条件
	// 0 无免费;1 按件免费;2 按重量免费; 3 公里数内免费
	FreeType int `db:"free_type" json:"freeType" check:"intThan0" empty:"true"`
	//免邮数量
	FreeUnit int `db:"free_unit" json:"freeUnit" check:"intThan0" empty:"true"`
}

ArgsCreateTransport 创建新的模版参数

type ArgsDeleteAudit

type ArgsDeleteAudit struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
}

ArgsDeleteAudit 删除审核请求参数

type ArgsDeleteProduct

type ArgsDeleteProduct struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsDeleteProduct 删除商品参数

type ArgsDeleteTransport

type ArgsDeleteTransport struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选,检查项
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
}

ArgsDeleteTransport 删除模版参数

type ArgsGetAnalysisBuy

type ArgsGetAnalysisBuy struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID" check:"id" empty:"true"`
	//购买人
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//时间范围
	BetweenTime CoreSQLTime.DataCoreTime `json:"betweenTime"`
	//结构方式
	// year / month / day / hour
	TimeType string `json:"timeType" check:"mark"`
}

ArgsGetAnalysisBuy 获取统计数据参数

type ArgsGetAnalysisCount

type ArgsGetAnalysisCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//时间范围
	// 部分统计支持
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//限制数量
	Limit int64 `json:"limit"`
}

ArgsGetAnalysisCount 获取配送单总量

type ArgsGetAuditByProduct

type ArgsGetAuditByProduct struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID" check:"id"`
}

ArgsGetAuditByProduct 通过商品获取审核数据参数

type ArgsGetAuditByProducts

type ArgsGetAuditByProducts struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//商品ID
	ProductIDs pq.Int64Array `db:"product_ids" json:"productIDs" check:"ids"`
}

ArgsGetAuditByProducts 通过一组商品获取审核数据参数

type ArgsGetAuditList

type ArgsGetAuditList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID" check:"id" empty:"true"`
	//是否已经过期
	NeedIsExpire bool `db:"need_is_expire" json:"needIsExpire" check:"bool"`
	IsExpire     bool `db:"is_expire" json:"isExpire" check:"bool"`
	//是否过审
	NeedIsPassing bool `db:"need_is_passing" json:"needIsPassing" check:"bool"`
	IsPassing     bool `db:"is_passing" json:"isPassing" check:"bool"`
	//是否删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetAuditList 获取审核列表参数

type ArgsGetProduct

type ArgsGetProduct struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsGetProduct 获取指定商品参数

type ArgsGetProductCountBySort

type ArgsGetProductCountBySort struct {
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id"`
}

ArgsGetProductCountBySort 获取指定分类下的商品数量参数

type ArgsGetProductList

type ArgsGetProductList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//商品类型
	// 0 普通商品; 1 关联选项商品; 2 虚拟商品
	ProductType int `db:"product_type" json:"productType" check:"intThan0" empty:"true"`
	//是否为虚拟商品
	// 不会发生配送处理
	NeedIsVirtual bool `db:"need_is_virtual" json:"needIsVirtual" check:"bool"`
	IsVirtual     bool `db:"is_virtual" json:"isVirtual" check:"bool"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//是否已经发布
	NeedIsPublish bool `db:"need_is_publish" json:"needIsPublish" check:"bool"`
	IsPublish     bool `db:"is_publish" json:"isPublish" check:"bool"`
	//价格区间
	PriceMin int64 `db:"price_min" json:"priceMin" check:"price" empty:"true"`
	PriceMax int64 `db:"price_max" json:"priceMax" check:"price" empty:"true"`
	//是否包含会员
	NeedHaveVIP bool `json:"needHaveVIP" check:"bool"`
	HaveVIP     bool `json:"haveVIP" check:"bool"`
	//可用票据
	Tickets pq.Int64Array `json:"tickets" check:"ids" empty:"true"`
	//是否有库存
	NeedHaveCount bool `json:"needHaveCount" check:"bool"`
	HaveCount     bool `json:"haveCount" check:"bool"`
	//是否存在积分消费
	NeedHaveIntegral bool `json:"needHaveIntegral" check:"bool"`
	HaveIntegral     bool `json:"needIntegral" check:"bool"`
	//上级ID
	// 如果不给予,则强制忽略历史记录
	// 标记为历史记录,<1为最高级,其他级别代表历史记录
	ParentID int64 `db:"parent_id" json:"parentID" check:"int64Than0" empty:"true"`
	//配送费计费模版ID
	TransportID int64 `db:"transport_id" json:"transportID" check:"id" empty:"true"`
	//关联仓库的产品
	// ERPProduct模块
	WarehouseProductID int64 `db:"warehouse_product_id" json:"warehouseProductID"`
	//是否删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetProductList 获取商品列表参数

type ArgsGetProductPrice

type ArgsGetProductPrice struct {
	//商品ID列
	Products []ArgsGetProductPriceProduct `db:"products" json:"products"`
	//商户ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//会员配置ID
	// 只能指定一个
	UserSubID int64 `db:"user_sub_id" json:"userSubID" check:"id" empty:"true"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//是否使用积分
	UseIntegral bool `db:"use_integral" json:"useIntegral" check:"bool"`
	//收货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//是否绕过对库存限制
	SkipProductCountLimit bool `json:"skipProductCountLimit" check:"bool" empty:"true"`
	//配送方式
	// 0 self 自运营服务; 1 自提; 2 running 跑腿服务; 3 housekeeping 家政服务
	TransportType int `db:"transport_type" json:"transportType"`
}

ArgsGetProductPrice 验证可用性并计算最终价格参数

type ArgsGetProductPriceProduct

type ArgsGetProductPriceProduct struct {
	//商品ID
	ID int64 `db:"id" json:"id" check:"id"`
	//选项Key
	// 如果给空,则该商品必须也不包含选项
	OptionKey string `db:"option_key" json:"optionKey" check:"mark" empty:"true"`
	//购买数量
	// 如果为0,则只判断单价的价格
	BuyCount int `db:"buy_count" json:"buyCount" check:"int64Than0"`
}

type ArgsGetProductPriceProductVirtual

type ArgsGetProductPriceProductVirtual struct {
	//商品ID
	ID int64 `db:"id" json:"id" check:"id"`
	//选项Key
	// 如果给空,则该商品必须也不包含选项
	OptionKey string `db:"option_key" json:"optionKey" check:"mark" empty:"true"`
	//购买数量
	// 如果为0,则只判断单价的价格
	BuyCount int `db:"buy_count" json:"buyCount" check:"int64Than0"`
	//进货价
	PriceIn int64 `db:"price_in" json:"priceIn" check:"price" empty:"true"`
	//销售价格
	PriceOut int64 `db:"price_out" json:"priceOut" check:"price" empty:"true"`
}

type ArgsGetProducts

type ArgsGetProducts struct {
	//ID列
	IDs pq.Int64Array `json:"ids" check:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove" check:"bool"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
}

ArgsGetProducts 获取指定商品组参数

type ArgsGetProductsByTickets

type ArgsGetProductsByTickets struct {
	//票据ID列
	TicketIDs pq.Int64Array `db:"ticket_ids" json:"ticketIDs" check:"ids"`
}

ArgsGetProductsByTickets 通过票据列货物商品列参数

type ArgsGetTransportID

type ArgsGetTransportID struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsGetTransportID 获取指定的模版ID参数

type ArgsGetTransportList

type ArgsGetTransportList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//是否删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetTransportList 获取配送模版参数

type ArgsGetTransports

type ArgsGetTransports struct {
	//ID列
	IDs pq.Int64Array `json:"ids" check:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove" check:"bool"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
}

ArgsGetTransports 获取多个模版参数

type ArgsPriceVirtual

type ArgsPriceVirtual struct {
	//费用类型
	// 0 货物费用;1 配送费用;2 保险费用; 3 跑腿费用
	PriceType int `db:"price_type" json:"priceType" check:"mark"`
	//总金额
	Price int64 `db:"price" json:"price" check:"price"`
}

type ArgsReturnProduct

type ArgsReturnProduct struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsReturnProduct 恢复商品参数

type ArgsUpdateAuditBan

type ArgsUpdateAuditBan struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//拒绝原因
	BanDes string `db:"ban_des" json:"banDes" check:"des" min:"1" max:"1000"`
	//拒绝附加文件
	BanDesFiles pq.Int64Array `db:"ban_des_files" json:"banDesFiles" check:"ids" empty:"true"`
}

ArgsUpdateAuditBan 拒绝审核参数

type ArgsUpdateAuditPassing

type ArgsUpdateAuditPassing struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
}

ArgsUpdateAuditPassing 通过审核参数

type ArgsUpdateProduct

type ArgsUpdateProduct struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//是否为虚拟商品
	// 不会发生配送处理
	IsVirtual bool `db:"is_virtual" json:"isVirtual" check:"bool"`
	//排序
	Sort int `db:"sort" json:"sort"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID" check:"id"`
	//标签ID列
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//商品条形码编码
	Code string `db:"code" json:"code"`
	//标题
	Title string `db:"title" json:"title" check:"title" min:"1" max:"300"`
	//副标题
	TitleDes string `db:"title_des" json:"titleDes" check:"title" min:"1" max:"300" empty:"true"`
	//商品描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"6000" empty:"true"`
	//封面ID
	CoverFileIDs pq.Int64Array `db:"cover_file_ids" json:"coverFileIDs" check:"ids" empty:"true"`
	//描述图组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles" check:"ids" empty:"true"`
	// 货币
	Currency int `db:"currency" json:"currency" check:"currency"`
	// 实际费用
	PriceReal int64 `db:"price_real" json:"priceReal" check:"price"`
	//折扣截止
	PriceExpireAt string `db:"price_expire_at" json:"priceExpireAt" check:"isoTime" empty:"true"`
	//折扣前费用
	Price int64 `db:"price" json:"price" check:"price"`
	//不含税价格
	PriceNoTax int64 `db:"price_no_tax" json:"priceNoTax" check:"price" empty:"true"`
	//积分价格
	Integral int64 `db:"integral" json:"integral" check:"price" empty:"true"`
	//积分最多抵扣费用
	IntegralPrice int64 `db:"integral_price" json:"integralPrice" check:"price" empty:"true"`
	//积分包含配送费免费
	IntegralTransportFree bool `db:"integral_transport_free" json:"integralTransportFree"`
	//会员价格
	// 会员配置分平台和商户,平台会员需参与活动才能使用,否则将禁止设置和后期使用
	UserSubPrice FieldsUserSubPrices `db:"user_sub_price" json:"userSubPrice"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket" check:"ids" empty:"true"`
	//配送费计费模版ID
	TransportID int64 `db:"transport_id" json:"transportID" check:"id" empty:"true"`
	//唯一送货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//关联仓库的产品
	WarehouseProductID int64 `db:"warehouse_product_id" json:"warehouseProductID" check:"id" empty:"true"`
	//货物重量
	Weight int `db:"weight" json:"weight" check:"intThan0" empty:"true"`
	//总库存
	Count int `db:"count" json:"count" check:"intThan0" empty:"true"`
	//关联附加选项
	OtherOptions DataOtherOptions `db:"other_options" json:"otherOptions"`
	//给与票据列
	// 和赠礼区别在于,赠礼不可退,此票据会跟随订单取消设置是否退还
	GivingTickets FieldsGivingTickets `db:"giving_tickets" json:"givingTickets"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
	//是否同步ERP产品
	SyncERPProduct bool `json:"syncERPProduct" check:"bool"`
}

ArgsUpdateProduct 修改商品参数

type ArgsUpdateProductCount

type ArgsUpdateProductCount struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// -1 跳过
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//库存数量
	Count int `db:"count" json:"count" check:"intThan0" empty:"true"`
}

ArgsUpdateProductCount 修改库存参数

type ArgsUpdateTransport

type ArgsUpdateTransport struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选,检查项
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//模版名称
	Name string `db:"name" json:"name" check:"title" min:"1" max:"300"`
	//计费规则
	// 0 无配送费;1 按件计算;2 按重量计算;3 按公里数计算
	// 后续所有计费标准必须统一,否则系统将拒绝创建或修改
	Rules int `db:"rules" json:"rules" check:"intThan0" empty:"true"`
	//首费标准
	// 0 留空;1 N件开始收费;2 N重量开始收费;3 N公里开始收费
	RulesUnit int `db:"rules_unit" json:"rulesUnit" check:"intThan0" empty:"true"`
	//首费金额
	RulesPrice int64 `db:"rules_price" json:"rulesPrice" check:"price" empty:"true"`
	//增费标准
	// 0 无增量;1 每N件增加费用;2 每N重量增加费用;3 每N公里增加费用
	AddType int `db:"add_type" json:"addType" check:"intThan0" empty:"true"`
	//增费单位
	AddUnit int `db:"add_unit" json:"addUnit" check:"intThan0" empty:"true"`
	//增费金额
	// 单位增加的费用
	AddPrice int64 `db:"add_price" json:"addPrice" check:"price" empty:"true"`
	//免邮条件
	// 0 无免费;1 按件免费;2 按重量免费; 3 公里数内免费
	FreeType int `db:"free_type" json:"freeType" check:"intThan0" empty:"true"`
	//免邮数量
	FreeUnit int `db:"free_unit" json:"freeUnit" check:"intThan0" empty:"true"`
}

ArgsUpdateTransport 修改模版参数

type DataAnalysisBuy

type DataAnalysisBuy struct {
	//时间
	DayTime string `db:"d" json:"dayTime"`
	//数据
	Count int64 `db:"count" json:"count"`
}

func GetAnalysisBuy

func GetAnalysisBuy(args *ArgsGetAnalysisBuy) (dataList []DataAnalysisBuy, err error)

type DataGetAnalysisCount

type DataGetAnalysisCount struct {
	//产品ID
	ProductID int64 `db:"product_id" json:"productID"`
	//数量
	Count int64 `db:"buy_count" json:"count"`
}

func GetAnalysisCount

func GetAnalysisCount(args *ArgsGetAnalysisCount) (dataList []DataGetAnalysisCount, err error)

type DataGetProductsByTickets

type DataGetProductsByTickets struct {
	//商品ID
	ID int64 `json:"id"`
	//商品名称
	Name string `json:"name"`
	//票据配置id列
	TicketIDs pq.Int64Array `json:"ticketIDs"`
}

func GetProductsByTickets

func GetProductsByTickets(args *ArgsGetProductsByTickets) (dataList []DataGetProductsByTickets, err error)

GetProductsByTickets 通过票据列货物商品列

type DataOtherOptionChild

type DataOtherOptionChild struct {
	//分类1的选项key
	Sort1 int `db:"sort1" json:"sort1" check:"intThan0" empty:"true"`
	//分类2的选项key
	Sort2 int `db:"sort2" json:"sort2" check:"intThan0" empty:"true"`
	//选项名称
	Name string `db:"name" json:"name" check:"name"`
	//商品ID
	// 可以给0,则必须声明其他项目内容
	ProductID int64 `db:"product_id" json:"productID" check:"id" empty:"true"`
	//选项key
	Key string `db:"key" json:"key" check:"mark"`
	//实际费用
	PriceReal int64 `db:"price_real" json:"priceReal" check:"price" empty:"true"`
	//折扣截止
	PriceExpireAt string `db:"price_expire_at" json:"priceExpireAt" check:"isoTime" empty:"true"`
	//折扣前费用
	Price int64 `db:"price" json:"price" check:"price" empty:"true"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//总库存
	Count int `db:"count" json:"count" check:"intThan0" empty:"true"`
	//商品条形码编码
	Code string `db:"code" json:"code"`
}

func (*DataOtherOptionChild) Scan

func (t *DataOtherOptionChild) Scan(value interface{}) error

func (DataOtherOptionChild) Value

func (t DataOtherOptionChild) Value() (driver.Value, error)

Value sql底层处理器

type DataOtherOptionChildList

type DataOtherOptionChildList []DataOtherOptionChild

func (*DataOtherOptionChildList) Scan

func (t *DataOtherOptionChildList) Scan(value interface{}) error

func (DataOtherOptionChildList) Value

Value sql底层处理器

type DataOtherOptionSort

type DataOtherOptionSort struct {
	//名称
	Name string `db:"name" json:"name" check:"name"`
	//选项组
	Options pq.StringArray `db:"options" json:"options"`
}

DataOtherOptionSort 分类数据集合

func (*DataOtherOptionSort) Scan

func (t *DataOtherOptionSort) Scan(value interface{}) error

func (DataOtherOptionSort) Value

func (t DataOtherOptionSort) Value() (driver.Value, error)

Value sql底层处理器

type DataOtherOptions

type DataOtherOptions struct {
	//分类1
	Sort1 DataOtherOptionSort `db:"sort1" json:"sort1"`
	//分类2
	Sort2 DataOtherOptionSort `db:"sort2" json:"sort2"`
	//数据集合
	DataList DataOtherOptionChildList `db:"data_list" json:"dataList"`
}

DataOtherOptions 附加选项

func (DataOtherOptions) GetFields

func (t DataOtherOptions) GetFields() (FieldsOtherOption, error)

GetFields 转化数据为数据表结构

func (*DataOtherOptions) Scan

func (t *DataOtherOptions) Scan(value interface{}) error

func (DataOtherOptions) Value

func (t DataOtherOptions) Value() (driver.Value, error)

Value sql底层处理器

type DataProductPrice

type DataProductPrice struct {
	//商品结构
	ProductList []FieldsCore `json:"productList"`
	//分类结构列
	SortList []ClassSort.FieldsSort `json:"sortList"`
	//原始价格
	BeforePrice int64 `json:"beforePrice"`
	//最终价格
	LastPrice int64 `json:"lastPrice"`
	//商品最终价格
	LastPriceProduct int64 `json:"lastPriceProduct"`
	//可用于会员的价格部分
	// 仅包含分类通用会员折扣部分,商品强制指定费用不在此处计算
	LastPriceSub int64 `json:"lastPriceSub"`
	//积分影响的费用
	LastPriceIntegral int64 `json:"lastPriceIntegral"`
	//票据影响的价格部分
	LastPriceTicket int64 `json:"lastPriceTicket"`
	//总的配送费用
	LastPriceTransport int64 `json:"lastPriceTransport"`
	//可用于会员的价格部分减免前
	BeforePriceSub int64 `json:"beforePriceSub"`
	//货物清单
	Goods ServiceOrderWaitFields.FieldsGoods `db:"goods" json:"goods"`
	//订单总的抵扣
	// 例如满减活动,不局限于个别商品的活动
	Exemptions ServiceOrderWaitFields.FieldsExemptions `db:"exemptions" json:"exemptions"`
	//无法享受会员的商品列
	NotSubProducts []int64 `json:"notSubProducts"`
	//用户订阅结构
	UserSubConfig UserSubscription.FieldsConfig `json:"userSubConfig"`
	//票据配置列
	TicketConfigs []UserTicket.FieldsConfig `json:"ticketConfigs"`
	//票据对应关系
	Tickets []DataProductPriceTicket `json:"tickets"`
	//用户最初积分
	BeforeUserIntegral int64 `json:"beforeUserIntegral"`
	//用户剩余积分
	LastUserIntegral int64 `json:"lastUserIntegral"`
	//配送方式
	TransportSystem string `db:"transport_system" json:"transportSystem"`
	//配送模版及费用计算
	Transports []DataProductPriceTransport `json:"transports"`
	//特殊信息结构体
	Infos []DataProductPriceInfo `json:"infos"`
}

DataProductPrice 外部用的计算汇总模块 拆分不同商品及优惠,并减免对应的费用 仅保留必要的信息结构,构建的外部专用信息模块

func GetProductPrice

func GetProductPrice(args *ArgsGetProductPrice) (resultData DataProductPrice, errCode string, err error)

GetProductPrice 验证可用性并计算最终价格 只能计算同一个商户下的数据

type DataProductPriceInfo

type DataProductPriceInfo struct {
	//信息标识码
	Mark string `json:"mark"`
	//关联的商品
	ProductID int64 `json:"productID"`
	//是否为隐藏项
	IsHide bool `json:"isHide"`
	//影响的费用
	Price int64 `json:"price"`
	//消息
	Msg string `json:"msg"`
}

DataProductPriceInfo 信息结构体

type DataProductPriceTicket

type DataProductPriceTicket struct {
	//票据ID
	TicketID int64 `json:"ticketID"`
	//可用商品
	Products []int64 `json:"products"`
	//该票据存在于分类列
	SortIDs []int64 `json:"sortIDs"`
	//是否用于订单整体抵扣
	UseOrder bool `json:"useOrder"`
	//预计使用数量
	NeedCount int `json:"needCount"`
	//用户持有总量
	UserCount int `json:"userCount"`
	//商品价格
	Price int64 `json:"price"`
}

DataProductPriceTicket 票据对应多个商品设计

type DataProductPriceTransport

type DataProductPriceTransport struct {
	//计费模版结构
	ConfigData FieldsTransport `json:"configData"`
	//产品ID
	// 免费产品部分将直接跳过
	ProductIDs []int64 `json:"productIDs"`
	//总重量
	Weight int `json:"weight"`
	//总件数
	BuyCount int `json:"buyCount"`
	//配送距离
	DistanceM float64 `json:"distanceM"`
	//费用合计
	Price int64 `json:"price"`
}

DataProductPriceTransport 配送费用计算规则

type FieldsAnalysisBuy

type FieldsAnalysisBuy struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID"`
	//购买人
	UserID int64 `db:"user_id" json:"userID"`
	//购买数量
	BuyCount int `db:"buy_count" json:"buyCount"`
}

FieldsAnalysisBuy 销售统计表 该表主要为购买意向统计,只要加入购物车则列入统计内

type FieldsAudit

type FieldsAudit struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//过期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID"`
	//商品ID
	ProductID int64 `db:"product_id" json:"productID"`
	//审核通过时间
	AuditAt time.Time `db:"audit_at" json:"auditAt"`
	//拒绝原因
	BanDes string `db:"ban_des" json:"banDes"`
	//拒绝附加文件
	BanDesFiles pq.Int64Array `db:"ban_des_files" json:"banDesFiles"`
}

FieldsAudit 审核

func CreateAudit

func CreateAudit(args *ArgsCreateAudit) (data FieldsAudit, err error)

CreateAudit 创建审核请求

func GetAuditByProduct

func GetAuditByProduct(args *ArgsGetAuditByProduct) (data FieldsAudit, err error)

GetAuditByProduct 通过商品获取审核数据

func GetAuditByProducts

func GetAuditByProducts(args *ArgsGetAuditByProducts) (dataList []FieldsAudit, err error)

GetAuditByProducts 通过一组商品获取审核数据

func GetAuditList

func GetAuditList(args *ArgsGetAuditList) (dataList []FieldsAudit, dataCount int64, err error)

GetAuditList 获取审核列表

type FieldsCore

type FieldsCore struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//上级ID
	// 标记为历史记录,<1为最高级,其他级别代表历史记录
	ParentID int64 `db:"parent_id" json:"parentID"`
	//商品类型
	// 0 普通商品; 1 关联选项商品
	ProductType int `db:"product_type" json:"productType" check:"intThan0" empty:"true"`
	//是否为虚拟商品
	// 不会发生配送处理
	IsVirtual bool `db:"is_virtual" json:"isVirtual" check:"bool"`
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID"`
	//排序
	Sort int `db:"sort" json:"sort"`
	//发布时间
	PublishAt time.Time `db:"publish_at" json:"publishAt"`
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID"`
	//标签ID列
	Tags pq.Int64Array `db:"tags" json:"tags"`
	//商品条形码编码
	Code string `db:"code" json:"code"`
	//标题
	Title string `db:"title" json:"title"`
	//副标题
	TitleDes string `db:"title_des" json:"titleDes"`
	//商品描述
	Des string `db:"des" json:"des"`
	//封面ID
	CoverFileIDs pq.Int64Array `db:"cover_file_ids" json:"coverFileIDs"`
	//描述图组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles"`
	//货币
	Currency int `db:"currency" json:"currency"`
	//实际费用
	PriceReal int64 `db:"price_real" json:"priceReal"`
	//折扣截止
	PriceExpireAt time.Time `db:"price_expire_at" json:"priceExpireAt"`
	//折扣前费用
	Price int64 `db:"price" json:"price"`
	//不含税价格
	PriceNoTax int64 `db:"price_no_tax" json:"priceNoTax"`
	//积分价格
	Integral int64 `db:"integral" json:"integral"`
	//积分最多抵扣费用
	IntegralPrice int64 `db:"integral_price" json:"integralPrice"`
	//积分包含配送费免费
	IntegralTransportFree bool `db:"integral_transport_free" json:"integralTransportFree"`
	//会员价格
	// 会员配置分平台和商户,平台会员需参与活动才能使用,否则将禁止设置和后期使用
	UserSubPrice FieldsUserSubPrices `db:"user_sub_price" json:"userSubPrice"`
	//票据
	// 可以使用的票据列,具体的配置在票据配置内进行设置
	// 票据分平台和商户,平台票据需参与活动才能使用,否则将自动禁止设置和后期使用
	UserTicket pq.Int64Array `db:"user_ticket" json:"userTicket"`
	//配送费计费模版ID
	TransportID int64 `db:"transport_id" json:"transportID"`
	//唯一送货地址
	Address CoreSQLAddress.FieldsAddress `db:"address" json:"address"`
	//关联仓库的产品
	// ERPProduct模块
	WarehouseProductID int64 `db:"warehouse_product_id" json:"warehouseProductID"`
	//货物重量
	// 单位g
	Weight int `db:"weight" json:"weight"`
	//总库存
	Count int `db:"count" json:"count"`
	//销量
	BuyCount int `db:"buy_count" json:"buyCount"`
	//关联附加选项
	OtherOptions FieldsOtherOption `db:"other_options" json:"otherOptions"`
	//给与票据列
	// 和赠礼区别在于,赠礼不可退,此票据会跟随订单取消设置是否退还
	GivingTickets FieldsGivingTickets `db:"giving_tickets" json:"givingTickets"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

FieldsCore 商品核心表

func CreateProduct

func CreateProduct(args *ArgsCreateProduct) (data FieldsCore, errCode string, err error)

CreateProduct 创建商品

func GetProduct

func GetProduct(args *ArgsGetProduct) (data FieldsCore, err error)

GetProduct 获取指定商品

func GetProductList

func GetProductList(args *ArgsGetProductList) (dataList []FieldsCore, dataCount int64, err error)

GetProductList 获取商品列表

func GetProductListByWarehouseProductID

func GetProductListByWarehouseProductID(warehouseProductID int64) (dataList []FieldsCore)

GetProductListByWarehouseProductID 通过仓储产品ID获取商品

func GetProductNoErr

func GetProductNoErr(id int64) (data FieldsCore)

func GetProductTop

func GetProductTop(args *ArgsGetProduct) (data FieldsCore, err error)

GetProductTop 是否采用追溯的商品获取产品

func GetProducts

func GetProducts(args *ArgsGetProducts) (dataList []FieldsCore, err error)

GetProducts 获取指定商品组

type FieldsGivingTicket

type FieldsGivingTicket struct {
	//票据ID
	TicketConfigID int64 `db:"ticket_config_id" json:"ticketConfigID" check:"id"`
	//张数
	Count int64 `db:"count" json:"count" check:"int64Than0"`
	//是否可退
	IsRefund bool `db:"is_refund" json:"isRefund" check:"bool"`
}

func (*FieldsGivingTicket) Scan

func (t *FieldsGivingTicket) Scan(value interface{}) error

func (FieldsGivingTicket) Value

func (t FieldsGivingTicket) Value() (driver.Value, error)

Value sql底层处理器

type FieldsGivingTickets

type FieldsGivingTickets []FieldsGivingTicket

FieldsGivingTickets 给与票据

func (*FieldsGivingTickets) Scan

func (t *FieldsGivingTickets) Scan(value interface{}) error

func (FieldsGivingTickets) Value

func (t FieldsGivingTickets) Value() (driver.Value, error)

Value sql底层处理器

type FieldsOtherOption

type FieldsOtherOption struct {
	//分类1
	Sort1 FieldsOtherOptionSort `db:"sort1" json:"sort1"`
	//分类2
	Sort2 FieldsOtherOptionSort `db:"sort2" json:"sort2"`
	//数据集合
	DataList FieldsOtherOptionChildList `db:"data_list" json:"dataList"`
}

FieldsOtherOption 附加选项

func (FieldsOtherOption) GetData

func (t FieldsOtherOption) GetData() (DataOtherOptions, error)

GetData 转化数据为数据表结构

func (*FieldsOtherOption) Scan

func (t *FieldsOtherOption) Scan(value interface{}) error

func (FieldsOtherOption) Value

func (t FieldsOtherOption) Value() (driver.Value, error)

Value sql底层处理器

type FieldsOtherOptionChild

type FieldsOtherOptionChild struct {
	//分类1的选项key
	Sort1 int `db:"sort1" json:"sort1" check:"intThan0" empty:"true"`
	//分类2的选项key
	Sort2 int `db:"sort2" json:"sort2" check:"intThan0" empty:"true"`
	//商品ID
	// 可以给0,则必须声明其他项目内容
	ProductID int64 `db:"product_id" json:"productID" check:"id" empty:"true"`
	//选项key
	Key string `db:"key" json:"key" check:"mark"`
	//实际费用
	PriceReal int64 `db:"price_real" json:"priceReal" check:"price" empty:"true"`
	//折扣截止
	PriceExpireAt time.Time `db:"price_expire_at" json:"priceExpireAt" check:"isoTime" empty:"true"`
	//折扣前费用
	Price int64 `db:"price" json:"price" check:"price" empty:"true"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//总库存
	Count int `db:"count" json:"count" check:"intThan0" empty:"true"`
	//商品条形码编码
	Code string `db:"code" json:"code"`
}

func (*FieldsOtherOptionChild) Scan

func (t *FieldsOtherOptionChild) Scan(value interface{}) error

func (FieldsOtherOptionChild) Value

Value sql底层处理器

type FieldsOtherOptionChildList

type FieldsOtherOptionChildList []FieldsOtherOptionChild

func (*FieldsOtherOptionChildList) Scan

func (t *FieldsOtherOptionChildList) Scan(value interface{}) error

func (FieldsOtherOptionChildList) Value

Value sql底层处理器

type FieldsOtherOptionSort

type FieldsOtherOptionSort struct {
	//名称
	Name string `db:"name" json:"name" check:"name"`
	//选项组
	Options pq.StringArray `db:"options" json:"options"`
}

FieldsOtherOptionSort 分类数据集合

func (*FieldsOtherOptionSort) Scan

func (t *FieldsOtherOptionSort) Scan(value interface{}) error

func (FieldsOtherOptionSort) Value

func (t FieldsOtherOptionSort) Value() (driver.Value, error)

Value sql底层处理器

type FieldsTransport

type FieldsTransport struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//组织ID
	// 留空则表明为平台的用户留下的内容
	OrgID int64 `db:"org_id" json:"orgID"`
	//模版名称
	Name string `db:"name" json:"name"`
	//计费规则
	// 0 无配送费;1 按件计算;2 按重量计算;3 按公里数计算
	// 后续所有计费标准必须统一,否则系统将拒绝创建或修改
	Rules int `db:"rules" json:"rules"`
	//首费标准
	// 0 留空;1 N件开始收费;2 N重量开始收费;3 N公里开始收费
	RulesUnit int `db:"rules_unit" json:"rulesUnit"`
	//首费金额
	RulesPrice int64 `db:"rules_price" json:"rulesPrice"`
	//增费标准
	// 0 无增量;1 每N件增加费用;2 每N重量增加费用;3 每N公里增加费用
	AddType int `db:"add_type" json:"addType"`
	//增费单位
	AddUnit int `db:"add_unit" json:"addUnit"`
	//增费金额
	// 单位增加的费用
	AddPrice int64 `db:"add_price" json:"addPrice"`
	//免邮条件
	// 0 无免费;1 按件免费;2 按重量免费; 3 公里数内免费
	FreeType int `db:"free_type" json:"freeType"`
	//免邮单位
	FreeUnit int `db:"free_unit" json:"freeUnit"`
}

FieldsTransport 配送运费模版

func CreateTransport

func CreateTransport(args *ArgsCreateTransport) (data FieldsTransport, err error)

CreateTransport 创建新的模版

func GetTransportID

func GetTransportID(args *ArgsGetTransportID) (data FieldsTransport, err error)

GetTransportID 获取指定的模版ID

func GetTransportList

func GetTransportList(args *ArgsGetTransportList) (dataList []FieldsTransport, dataCount int64, err error)

GetTransportList 获取配送模版

func GetTransports

func GetTransports(args *ArgsGetTransports) (dataList []FieldsTransport, err error)

GetTransports 获取多个模版

type FieldsUserSubPrice

type FieldsUserSubPrice struct {
	//会员ID
	ID int64 `db:"id" json:"id"`
	//标定价格
	Price int64 `db:"price" json:"price"`
}

FieldsUserSubPrice 会员价格

func (*FieldsUserSubPrice) Scan

func (t *FieldsUserSubPrice) Scan(value interface{}) error

func (FieldsUserSubPrice) Value

func (t FieldsUserSubPrice) Value() (driver.Value, error)

Value sql底层处理器

type FieldsUserSubPrices

type FieldsUserSubPrices []FieldsUserSubPrice

func (*FieldsUserSubPrices) Scan

func (t *FieldsUserSubPrices) Scan(value interface{}) error

func (FieldsUserSubPrices) Value

func (t FieldsUserSubPrices) Value() (driver.Value, error)

Value sql底层处理器

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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