package entity import ( consts "assets/consts/asset" "assets/consts/public" "assets/consts/stock" "assets/model/config" "gitea.com/red-future/common/beans" "go.mongodb.org/mongo-driver/v2/bson" ) // AssetSku 资产SKU实体 type AssetSku struct { beans.MongoBaseDO `bson:",inline"` // 嵌入基础字段:Id, Creator, CreatedAt, Updater, UpdatedAt, TenantId, IsDeleted AssetId *bson.ObjectID `bson:"assetId" json:"assetId"` // 关联资产ID AssetName string `bson:"assetName" json:"assetName"` // 资产名称 SkuName string `bson:"skuName" json:"skuName"` // SKU名称 ImageURL string `bson:"imageUrl,omitempty" json:"imageUrl"` // SKU主图 SpecValues []map[string]interface{} `bson:"specValues" json:"specValues"` // 规格值:{"颜色":"红色","尺寸":"L","时长":"1个月","平台":"抖音"} Price int `bson:"price" json:"price"` // 价格(分为单位) UnlimitedStock bool `bson:"unlimitedStock" json:"unlimitedStock"` // 是否无库存限制 Stock int `bson:"stock" json:"stock"` // 库存数量 SpecsCount int `bson:"specsCount" json:"specsCount"` // 规格数量 SpecsUnit *SpecsUnitKeyValue `bson:"specsUnit" json:"specsUnit"` // 规格单位 Sort int `bson:"sort" json:"sort"` // 排序 Status *consts.AssetSkuStatus `bson:"status" json:"status"` // 状态:active/inactive/disabled StockMode stock.StockMode `bson:"stockMode" json:"stockMode"` // 库存管理模式:1-明细模式 2-批次模式 CategoryId *bson.ObjectID `bson:"categoryId" json:"categoryId"` // 分类ID CategoryPath string `bson:"categoryPath" json:"categoryPath"` // 分类路径 CapacityUnitType stock.CapacityUnitType `bson:"capacityUnitType" json:"capacityUnitType"` // 容量单位类型 Capacity config.Capacity `bson:"capacity" json:"capacity"` //容量 TenantModuleType beans.TenantModuleType `bson:"tenantModuleType" json:"tenantModuleType"` } type SpecsUnitKeyValue struct { Key string `bson:"key" json:"key"` // 对应原有常量值 Value string `bson:"value" json:"value"` // 对应描述信息 } // CollectionName 获取集合名称 func (AssetSku) CollectionName() string { return public.AssetSkuCollection }