Files
jx-callback/business/model/store_sku.go

164 lines
4.5 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package model
import "time"
const (
StoreSkuBindStatusNA = -2
StoreSkuBindStatusDeleted = -1
StoreSkuBindStatusDontSale = 0
StoreSkuBindStatusNormal = 1
)
const (
MaxStoreSkuStockQty = 99999
)
const (
RequestTypeChangePrice = 1
RequestTypeFocusSkuName = 2
)
const (
RequestStatusNew = 0
RequestStatusRejected = 1
RequestStatusAccepted = 2
RequestStatusCanceled = 3
)
var (
RequestTypeName = map[int]string{
RequestTypeChangePrice: "更改价格",
RequestTypeFocusSkuName: "关注商品",
}
RequestStatusName = map[int]string{
RequestStatusNew: "待审核",
RequestStatusRejected: "拒绝",
RequestStatusAccepted: "已批准",
}
)
type StoreSkuCategoryMap struct {
ModelIDCULD
StoreID int `orm:"column(store_id)"`
CategoryID int `orm:"column(category_id)"`
// ElmID int64 `orm:"column(elm_id);index"`
EbaiID int64 `orm:"column(ebai_id);index"`
MtwmID string `orm:"column(mtwm_id);index;size(16)"`
// WscID int64 `orm:"column(wsc_id);index"`
// ElmSyncStatus int8 `orm:"default(2)"`
EbaiSyncStatus int8 `orm:"default(2)"`
MtwmSyncStatus int8 `orm:"default(2)"`
// WscSyncStatus int8 `orm:"default(2)"`
}
func (*StoreSkuCategoryMap) TableUnique() [][]string {
return [][]string{
[]string{"StoreID", "CategoryID", "DeletedAt"},
}
}
func (*StoreSkuCategoryMap) TableIndex() [][]string {
return [][]string{
[]string{"CategoryID", "StoreID", "DeletedAt"},
}
}
// type StoreSkuCategoryMap2 struct {
// ModelIDCULD
// StoreID int `orm:"column(store_id)"`
// VendorID int `orm:"column(vendor_id)"`
// CategoryID int `orm:"column(category_id)"`
// VendorCatID string `orm:"column(vendor_cat_id);size(48)" json:"vendorCatID"`
// SyncStatus int8 `orm:"default(2)"`
// }
// func (*StoreSkuCategoryMap2) TableUnique() [][]string {
// return [][]string{
// []string{"StoreID", "VendorID", "CategoryID", "DeletedAt"},
// }
// }
type StoreSkuBind struct {
ModelIDCULD
StoreID int `orm:"column(store_id)"`
SkuID int `orm:"column(sku_id)"`
SubStoreID int `orm:"column(sub_store_id)"`
Price int // 单位为分不用int64的原因是这里不需要累加
UnitPrice int // 这个是一斤的门店商品价放在这里的原因是避免额外增加一张store sku_name表逻辑上要保证同一SKU NAME中的所有SKU这个字段的数据一致
Status int
// ElmID int64 `orm:"column(elm_id);index"`
MtwmID int64 `orm:"column(mtwm_id);index"`
EbaiID int64 `orm:"column(ebai_id);index"`
// WscID int64 `orm:"column(wsc_id);index"` // 表示微盟skuId
// WscID2 int64 `orm:"column(wsc_id2);index"` // 表示微盟goodsId
// ElmSyncStatus int8 `orm:"default(2)"`
JdSyncStatus int8 `orm:"default(2)"`
MtwmSyncStatus int8 `orm:"default(2)"`
EbaiSyncStatus int8 `orm:"default(2)"`
// WscSyncStatus int8 `orm:"default(2)"`
JdPrice int `json:"jdPrice"`
MtwmPrice int `json:"mtwmPrice"`
EbaiPrice int `json:"ebaiPrice"`
JxPrice int `json:"jxPrice"`
JdLockTime *time.Time `orm:"null" json:"jdLockTime"`
MtwmLockTime *time.Time `orm:"null" json:"mtwmLockTime"`
EbaiLockTime *time.Time `orm:"null" json:"ebaiLockTime"`
JxLockTime *time.Time `orm:"null" json:"jxLockTime"`
AutoSaleAt time.Time `orm:"type(datetime);null" json:"autoSaleAt"`
StatusSaleBegin int16 `json:"statusSaleBegin"` //商品可售时间范围
StatusSaleEnd int16 `json:"statusSaleEnd"`
}
func (*StoreSkuBind) TableUnique() [][]string {
return [][]string{
[]string{"StoreID", "SkuID", "DeletedAt"},
}
}
func (*StoreSkuBind) TableIndex() [][]string {
return [][]string{
[]string{"SkuID", "StoreID", "DeletedAt"},
// []string{"AutoSaleAt", "DeletedAt", "StoreID"},
}
}
type StoreOpRequest struct {
ModelIDCULD // DeletedAt用于表示请求操作结束而并不一定是删除
Type int8 `json:"type"`
StoreID int `orm:"column(store_id)" json:"storeID"`
ItemID int `orm:"column(item_id)" json:"itemID"` // 这个根据type不同可能是SKUNAME ID或SKU ID
Status int8 `json:"status"`
UserID string `orm:"size(48);column(user_id)" json:"userID"`
IntParam0 int `json:"intParam0"` // 表示原价
IntParam1 int `json:"intParam1"`
IntParam2 int `json:"intParam2"`
JsonParam string `orm:"size(3000)" json:"jsonParam"`
Remark string `orm:"size(255)" json:"remark"`
}
func (*StoreOpRequest) TableUnique() [][]string {
return [][]string{
[]string{"StoreID", "Type", "ItemID", "DeletedAt"},
}
}
func (*StoreOpRequest) TableIndex() [][]string {
return [][]string{
[]string{"DeletedAt"},
[]string{"StoreID", "Status", "Type"},
}
}