Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop
This commit is contained in:
@@ -311,7 +311,7 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re
|
||||
if err := partner.CurOrderManager.OnOrderNew(order, status); err != nil {
|
||||
return tiktokShop.Err2CallbackResponse(err, "")
|
||||
}
|
||||
orderMap, err := c.getOrderMap("", orderId, "")
|
||||
orderMap, err := c.getOrderMap(utils.Int64ToStr(appOrgCode), orderId, "")
|
||||
utils.CallFuncAsync(func() {
|
||||
switch msgId {
|
||||
case tiktokShop.CallbackPayOrderMsgTagId:
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/platformapi/jdapi"
|
||||
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||
freightTemplate_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request"
|
||||
product_addV2_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/product_addV2/request"
|
||||
@@ -26,6 +27,7 @@ import (
|
||||
"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/apimanager"
|
||||
"math/rand"
|
||||
"strings"
|
||||
"time"
|
||||
@@ -247,7 +249,8 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
||||
updateParam.Pic = param.Pic
|
||||
updateParam.Description = param.Description
|
||||
updateParam.WeightUnit = tiktokShop.WeightUint_G
|
||||
updateParam.StandardBrandId = param.StandardBrandId // 默认品牌京西菜市
|
||||
updateParam.StandardBrandId, err = getTiktokBrandId(api, db, storeSku.Upc, storeSku.UpcBrandName, storeSku.UpcTiktokBrandId, updateParam.CategoryLeafId)
|
||||
|
||||
updateParam.ProductId = mainOrderDetail.ProductId
|
||||
updateParam.MainProductId = mainProductId
|
||||
updateParam.SpecPrices = param.SpecPrices
|
||||
@@ -462,7 +465,13 @@ func makeMainProductSku(db *dao.DaoDB, api *tiktokShop.API, storeSku *dao.StoreS
|
||||
return
|
||||
}
|
||||
}
|
||||
param.StandardBrandId = 596120136 // 默认品牌京西菜市 596120136
|
||||
|
||||
param.StandardBrandId, err = getTiktokBrandId(api, db, storeSku.Upc, storeSku.UpcBrandName, storeSku.UpcTiktokBrandId, param.CategoryLeafId)
|
||||
if err != nil {
|
||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||
return
|
||||
}
|
||||
|
||||
param.FreightId, param.SaleLimitId, err = getFreightIdAndSaleLimitId(api, db, storeDetail, vendorStoreID)
|
||||
if err != nil {
|
||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||
@@ -471,6 +480,49 @@ func makeMainProductSku(db *dao.DaoDB, api *tiktokShop.API, storeSku *dao.StoreS
|
||||
return
|
||||
}
|
||||
|
||||
func getTiktokBrandId(api *tiktokShop.API, db *dao.DaoDB, upc, upcBrandName, upcTiktokBrandId string, categoryLeafId int64) (int64, error) {
|
||||
if upc == "" { // 默认品牌京西菜市 596120136
|
||||
return 596120136, nil
|
||||
} else if upc != "" && upcBrandName != "" && upcTiktokBrandId != "" {
|
||||
return utils.Str2Int64(upcTiktokBrandId), nil
|
||||
} else if upc != "" && upcBrandName != "" && upcTiktokBrandId == "" {
|
||||
standardBrandId, err := api.GetSkuBrand(categoryLeafId, upcBrandName)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
dao.UpdateSkuNameTiktokBrandName(db, upc, upcBrandName, utils.Int64ToStr(standardBrandId))
|
||||
return standardBrandId, nil
|
||||
} else if upc != "" && upcBrandName == "" && upcTiktokBrandId == "" {
|
||||
brandName, err := getBrandByBrandName(upc)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
standardBrandId, err := api.GetSkuBrand(categoryLeafId, brandName)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
dao.UpdateSkuNameTiktokBrandName(db, upc, brandName, utils.Int64ToStr(standardBrandId))
|
||||
return standardBrandId, nil
|
||||
}
|
||||
return 0, errors.New("getTiktokBrandId 获取抖音品牌id异常")
|
||||
}
|
||||
|
||||
func getBrandByBrandName(upcCode string) (string, error) {
|
||||
apijd := apimanager.CurAPIManager.GetAPI(model.VendorIDJD, "320406").(*jdapi.API)
|
||||
result, err := apijd.GetJdUpcCodeByName("", upcCode, 1, 5)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
if len(result) != model.YES {
|
||||
return "", fmt.Errorf("upc码[%s],获取商品不唯一", upcCode)
|
||||
}
|
||||
|
||||
if result[0].BrandName != "" {
|
||||
return result[0].BrandName, nil
|
||||
}
|
||||
return strings.Split(result[0].OriginalName, " ")[0], nil
|
||||
}
|
||||
|
||||
func loadMainProductId(api *tiktokShop.API, storeSku *dao.StoreSkuSyncInfo, mainProductId string) *product_detail_response.ProductDetailData {
|
||||
// 这有可能获取的值主商品也有可能是子商品,我们需要的是主商品id和状态
|
||||
mainOrderDetailProductId, err := api.GetSkuDetail(mainProductId, "")
|
||||
|
||||
Reference in New Issue
Block a user