Files
jx-callback/business/partner/purchase/jdshop/jds.go
2020-05-13 16:32:40 +08:00

70 lines
1.7 KiB
Go

package jdshop
import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/partner"
"git.rosy.net.cn/jx-callback/business/partner/putils"
"git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/api"
)
var (
CurPurchaseHandler *PurchaseHandler
)
type PurchaseHandler struct {
partner.BasePurchasePlatform
putils.DefSingleStorePlatform
}
func init() {
if api.JdShopAPI != nil {
CurPurchaseHandler = New()
partner.RegisterPurchasePlatform(CurPurchaseHandler)
}
}
func New() (obj *PurchaseHandler) {
obj = new(PurchaseHandler)
obj.ISingleStoreStoreSkuHandler = obj
return obj
}
func (p *PurchaseHandler) GetVendorID() int {
return model.VendorIDJDShop
}
func (p *PurchaseHandler) UploadImg(ctx *jxcontext.Context, vendorOrgCode, imgURL string, imgData []byte, imgName string, imgType int) (imgHint string, err error) {
if globals.EnableJdShopWrite {
if imgType > model.ImgTypeLocal {
result, err := api.JdShopAPI.UploadPicture(imgData, 0, imgName)
if err == nil {
imgHint = result.PictureURL
}
}
} else {
imgHint = utils.GetUpperUUID()
}
return imgHint, err
}
func (p *PurchaseHandler) GetVendorCategories(ctx *jxcontext.Context) (vendorCats []*model.SkuVendorCategory, err error) {
result, err := api.JdShopAPI.FindVendorCategories()
for _, v := range result {
cat := &model.SkuVendorCategory{
VendorID: model.VendorIDJDShop,
Name: v.Name,
Level: v.Lev,
VendorCategoryID: utils.Int2Str(v.ID),
}
if v.Lev > 1 {
cat.ParentID = utils.Int2Str(v.Fid)
cat.IsLeaf = 1
}
vendorCats = append(vendorCats, cat)
}
return vendorCats, err
}