- 处理饿百商品富文本详情
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"git.rosy.net.cn/baseapi/platformapi/ebaiapi"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
@@ -14,6 +15,7 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
)
|
||||
|
||||
type SkuNamesInfo struct {
|
||||
@@ -25,6 +27,19 @@ var (
|
||||
ErrInputCatsDoesntMatch = errors.New("输入的类别列表不合法,需要输入一个父ID下的所有子类别")
|
||||
)
|
||||
|
||||
var (
|
||||
ebaiUploadRTFShopID string // 饿百找一个店用于调用SkuUploadRTF
|
||||
)
|
||||
|
||||
func getAndSetEbaiUploadRTFShopID() (shopID string) {
|
||||
if ebaiUploadRTFShopID == "" {
|
||||
if storeDetail, err := dao.GetStoreDetail(dao.GetDB(), 0, model.VendorIDEBAI); err == nil {
|
||||
ebaiUploadRTFShopID = utils.Int2Str(storeDetail.Store.ID)
|
||||
}
|
||||
}
|
||||
return ebaiUploadRTFShopID
|
||||
}
|
||||
|
||||
// parentID 为-1表示所有
|
||||
func GetVendorCategories(ctx *jxcontext.Context, vendorID int, parentID string) (vendorCats []*model.SkuVendorCategory, err error) {
|
||||
cond := map[string]interface{}{
|
||||
@@ -548,6 +563,14 @@ func AddSkuName(ctx *jxcontext.Context, skuNameExt *model.SkuNameExt, userName s
|
||||
skuNameExt.ImgWeimob = imgHintMap[model.VendorIDWSC]
|
||||
skuNameExt.ImgEbai = imgHintMap[model.VendorIDEBAI]
|
||||
|
||||
if skuNameExt.DescImg != "" && getAndSetEbaiUploadRTFShopID() != "" {
|
||||
skuNameExt.DescImgEbai, err = api.EbaiAPI.SkuUploadRTF(getAndSetEbaiUploadRTFShopID(), ebaiapi.BuildRFTFromImgs(skuNameExt.DescImg))
|
||||
}
|
||||
if err != nil {
|
||||
dao.Rollback(db)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if err = dao.CreateEntity(db, &skuNameExt.SkuName); err != nil {
|
||||
dao.Rollback(db)
|
||||
return nil, err
|
||||
@@ -594,9 +617,12 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
||||
if err = dao.GetEntity(db, skuName); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
if _, ok := payload["isSpu"]; ok {
|
||||
delete(payload, "isSpu")
|
||||
}
|
||||
delete(payload, "isSpu")
|
||||
delete(payload, "ImgHashCode")
|
||||
delete(payload, "ImgWeimob")
|
||||
delete(payload, "ImgEbai")
|
||||
delete(payload, "descImgEbai")
|
||||
|
||||
valid := dao.StrictMakeMapByStructObject(payload, skuName, userName)
|
||||
valid = utils.RemoveGeneralMapKeys(valid, model.FieldSpecQuality, model.FieldSpecUnit)
|
||||
_, hasPlaces := payload["places"]
|
||||
@@ -630,6 +656,20 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
||||
valid["ImgWeimob"] = imgHintMap[model.VendorIDWSC]
|
||||
valid["ImgEbai"] = imgHintMap[model.VendorIDEBAI]
|
||||
}
|
||||
if valid["descImg"] != nil {
|
||||
descImg := valid["descImg"].(string)
|
||||
if descImg != "" {
|
||||
if getAndSetEbaiUploadRTFShopID() != "" {
|
||||
valid["descImgEbai"], err = api.EbaiAPI.SkuUploadRTF(getAndSetEbaiUploadRTFShopID(), ebaiapi.BuildRFTFromImgs(descImg))
|
||||
if err != nil {
|
||||
dao.Rollback(db)
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
} else {
|
||||
valid["descImgEbai"] = ""
|
||||
}
|
||||
}
|
||||
if num, err = dao.UpdateEntityLogicallyAndUpdateSyncStatus(db, skuName, valid, userName, nil, model.FieldJdSyncStatus, model.SyncFlagModifiedMask); err == nil && num == 1 {
|
||||
if utils.Interface2Int64WithDefault(payload["isGlobal"], 0) == 0 && payload["places"] != nil {
|
||||
if places, ok := payload["places"].([]interface{}); ok {
|
||||
|
||||
Reference in New Issue
Block a user