2024-08-03 14:12:44 +08:00
|
|
|
package v2
|
|
|
|
|
2024-08-05 17:21:58 +08:00
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
)
|
2024-08-03 14:12:44 +08:00
|
|
|
|
2024-08-30 13:59:01 +08:00
|
|
|
type SellerStatus int
|
|
|
|
|
|
|
|
const (
|
|
|
|
SellerStatus_Normal = iota
|
|
|
|
// 正在拉取销售商商品信息
|
|
|
|
SellerStatus_Pulling
|
2024-08-31 16:57:46 +08:00
|
|
|
// 正在计算
|
2024-09-03 14:51:12 +08:00
|
|
|
SellerStatus_Calculating
|
2024-08-30 13:59:01 +08:00
|
|
|
// 出错
|
|
|
|
SellerStatus_Error
|
|
|
|
)
|
|
|
|
|
2024-08-03 14:12:44 +08:00
|
|
|
type SellerId string
|
|
|
|
|
2024-08-05 17:21:58 +08:00
|
|
|
// Seller 出货商
|
|
|
|
type Seller struct {
|
2024-08-27 14:19:31 +08:00
|
|
|
ID uint `gorm:"primary_key" json:"id"`
|
|
|
|
CreatedAt time.Time `json:"createdAt"`
|
|
|
|
UpdatedAt time.Time `json:"updatedAt"`
|
2024-08-05 17:21:58 +08:00
|
|
|
|
|
|
|
SellerId SellerId `gorm:"unique" json:"sellerId"`
|
|
|
|
// 出货商的名称
|
|
|
|
Name string `json:"name"`
|
2024-08-30 13:59:01 +08:00
|
|
|
// 供应商状态
|
|
|
|
Status SellerStatus `json:"status"`
|
|
|
|
// 错误信息
|
|
|
|
Msg string `json:"msg"`
|
|
|
|
// 拉取时间
|
|
|
|
PullAt time.Time `json:"pullAt"`
|
2024-08-05 17:21:58 +08:00
|
|
|
// 出货商配置
|
|
|
|
Config SellerOption `gorm:"type:json;serializer:json" json:"config"`
|
|
|
|
//计算过程
|
|
|
|
CalculateProcess []CalculateProcess `json:"calculateProcess" gorm:"polymorphicType:Kind;polymorphicId:OwnerID;polymorphicValue:seller"`
|
2024-08-27 17:47:45 +08:00
|
|
|
// 备注
|
|
|
|
Remark string `json:"remark,omitempty"`
|
2024-08-05 17:21:58 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
type SellerOption struct {
|
2024-08-27 16:39:06 +08:00
|
|
|
Ticker string `yaml:"ticker" json:"ticker"` //定时抓取
|
2024-08-05 17:21:58 +08:00
|
|
|
}
|
2024-08-03 17:07:10 +08:00
|
|
|
|
2024-08-03 14:12:44 +08:00
|
|
|
// SellerArticle 销售商商品信息
|
|
|
|
type SellerArticle struct {
|
|
|
|
ID uint `gorm:"primary_key" json:"-"`
|
|
|
|
CreatedAt time.Time `json:"createdAt"`
|
2024-09-03 17:38:45 +08:00
|
|
|
UpdatedAt time.Time `json:"updatedAt"`
|
2024-08-03 14:12:44 +08:00
|
|
|
// 商品的ID
|
|
|
|
ArticleID uint
|
|
|
|
// 货号
|
2024-08-03 17:07:10 +08:00
|
|
|
Pid string `gorm:"index" json:"pid"`
|
2024-08-03 14:12:44 +08:00
|
|
|
// 品牌
|
2024-08-03 17:07:10 +08:00
|
|
|
Brand Brand `gorm:"index" json:"brand"`
|
|
|
|
// 销售商商品链接
|
2024-08-03 14:12:44 +08:00
|
|
|
Link string `json:"link"`
|
|
|
|
// 销售商id
|
|
|
|
SellerId SellerId `gorm:"index:sellerId_sku,unique" json:"sellerId"`
|
|
|
|
// 销售商的sku
|
|
|
|
SkuID string `gorm:"index:sellerId_sku,unique" json:"skuID"`
|
2024-09-02 16:52:05 +08:00
|
|
|
// 销售商的spuId
|
|
|
|
SpuID string `json:"spuID"`
|
2024-08-31 12:39:40 +08:00
|
|
|
// 是否排除
|
|
|
|
Exclude bool `json:"exclude"`
|
2024-08-03 14:12:44 +08:00
|
|
|
// 当前成本价
|
|
|
|
Sell SellerPrice `json:"sell" gorm:"type:json;serializer:json"`
|
|
|
|
// 历史出售价格
|
|
|
|
HistoryPrice []SellerPrice `json:"historyPrice"`
|
2024-08-05 17:21:58 +08:00
|
|
|
// 计算过程
|
|
|
|
CalculateProcess []CalculateProcess `json:"calculateProcess" gorm:"polymorphicType:Kind;polymorphicId:OwnerID;polymorphicValue:sellerArticle"`
|
2024-08-03 14:12:44 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
// SellerPrice 供应商成本价格
|
|
|
|
type SellerPrice struct {
|
|
|
|
ID uint `gorm:"primary_key" json:"-"`
|
|
|
|
CreatedAt time.Time `json:"createdAt"`
|
|
|
|
SellerArticleID uint `gorm:"index"`
|
2024-09-01 14:16:21 +08:00
|
|
|
// 出售最低价
|
|
|
|
OriginalPrice float64 `json:"originalPrice"`
|
|
|
|
// 能拿到手的最终价格
|
|
|
|
FinalPrice float64 `json:"finalPrice"`
|
2024-08-03 14:12:44 +08:00
|
|
|
//计算过程
|
|
|
|
CalMark string `json:"calMark"`
|
|
|
|
}
|