- add skuName.upc
This commit is contained in:
@@ -339,7 +339,8 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, params map[string]inter
|
||||
t1.elm_img_hash_code,
|
||||
t1.status,
|
||||
t1.is_spu,
|
||||
t1.img_hash_code
|
||||
t1.img_hash_code,
|
||||
t1.upc
|
||||
`
|
||||
sqlData := `
|
||||
SELECT
|
||||
@@ -361,6 +362,7 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, params map[string]inter
|
||||
t1.status,
|
||||
t1.is_spu,
|
||||
t1.img_hash_code,
|
||||
t1.upc,
|
||||
CONCAT("[", GROUP_CONCAT(DISTINCT CONCAT('{"id":', t2.id, ',"comment":"', t2.comment, '","status":', t2.status, ',"createdAt":"', CONCAT(REPLACE(t2.created_at," ","T"),"+08:00"), '","updatedAt":"', CONCAT(REPLACE(t2.updated_at," ","T"),"+08:00"), '","lastOperator":"', t2.last_operator, '","specQuality":', t2.spec_quality, ',"specUnit":"', t2.spec_unit, '","weight":', t2.weight, ',"jdID":', t2.jd_id, ',"categoryID":', t2.category_id, ',"nameID":', t2.name_id, "}")), "]") skus_str,
|
||||
CONCAT("[", GROUP_CONCAT(DISTINCT t3.place_code), "]") places_str
|
||||
` + sql + `
|
||||
|
||||
@@ -164,11 +164,11 @@ type SkuName struct {
|
||||
Img string `orm:"size(255)" json:"img"`
|
||||
ImgHashCode string `orm:"size(255)" json:"img_hash_code"`
|
||||
ElmImgHashCode string `orm:"size(255)" json:"-"` // 长度255的原因是从京东初始化数据时临时需要
|
||||
|
||||
Status int `orm:"default(1)" json:"status"` // skuname状态,取值同sku.Status
|
||||
IsSpu int8 `orm:"column(is_spu)" json:"isSpu"` // 用于指明是否SKUNAME当成SPU
|
||||
JdID int64 `orm:"column(jd_id);null" json:"jdID"`
|
||||
JdSyncStatus int8 `orm:"default(2)" json:"jdSyncStatus"`
|
||||
Upc string `orm:"size(20)"`
|
||||
Status int `orm:"default(1)" json:"status"` // skuname状态,取值同sku.Status
|
||||
IsSpu int8 `orm:"column(is_spu)" json:"isSpu"` // 用于指明是否SKUNAME当成SPU
|
||||
JdID int64 `orm:"column(jd_id);null" json:"jdID"`
|
||||
JdSyncStatus int8 `orm:"default(2)" json:"jdSyncStatus"`
|
||||
}
|
||||
|
||||
func (*SkuName) TableUnique() [][]string {
|
||||
|
||||
@@ -141,6 +141,9 @@ func (p *PurchaseHandler) cuSku(db *dao.DaoDB, sku *model.Sku, handler func(skuE
|
||||
if err == nil {
|
||||
skuName := jxutils.ComposeSkuName(skuInfoExt.Prefix, skuInfoExt.Name, sku.Comment, skuInfoExt.Unit, sku.SpecQuality, sku.SpecUnit, 0)
|
||||
skuPrice := jxutils.CaculateSkuPrice(skuInfoExt.Price, sku.SpecQuality, sku.SpecUnit, skuInfoExt.Unit)
|
||||
if skuInfoExt.Upc != "" {
|
||||
addParams["upcCode"] = skuInfoExt.Upc
|
||||
}
|
||||
result, err2 := handler(&skuInfoExt, skuPrice, skuName, shopCategories, addParams)
|
||||
if err = err2; err == nil {
|
||||
if jdID := utils.Str2Int64WithDefault(result, 0); jdID != 0 {
|
||||
@@ -328,6 +331,7 @@ func (p *PurchaseHandler) RefreshAllSkusID(ctx *jxcontext.Context, parentTask ta
|
||||
}
|
||||
|
||||
// 这个处理JD SPU,补丁形式
|
||||
// addParams是SPU的附加参数而不是SKU
|
||||
func (p *PurchaseHandler) syncSkuNameAsSpu(db *dao.DaoDB, sku *model.Sku, skuExt *tSkuInfoExt, price int, skuName string, shopCategories []int64, addParams map[string]interface{}) (vendorSkuID string, err error) {
|
||||
updateFields := []string{
|
||||
model.FieldJdSyncStatus,
|
||||
@@ -350,20 +354,17 @@ func (p *PurchaseHandler) syncSkuNameAsSpu(db *dao.DaoDB, sku *model.Sku, skuExt
|
||||
err = api.JdAPI.UpdateSkuBaseInfo(utils.Int2Str(skuExt.ID), utils.Int2Str(sku.ID), utils.Params2Map(jdapi.KeyFixedStatus, jdapi.SkuFixedStatusDeleted))
|
||||
} else if sku.JdSyncStatus&model.SyncFlagNewMask != 0 && !jxutils.IsFakeID(skuNameJdID) { // 非首次新增SKU
|
||||
if globals.EnableStoreWrite {
|
||||
vendorSkuID2, err2 := api.JdAPI.AppendSku(utils.Int2Str(skuExt.ID), utils.Int2Str(sku.ID), skuExt.JdCategoryID, shopCategories, skuExt.BrandID, skuName, price, jxutils.IntWeight2Float(sku.Weight), []string{skuExt.Img}, jxStatus2jdStatus(sku.Status), true, addParams)
|
||||
vendorSkuID2, err2 := api.JdAPI.AppendSku(utils.Int2Str(skuExt.ID), utils.Int2Str(sku.ID), skuExt.JdCategoryID, shopCategories, skuExt.BrandID, skuName, price, jxutils.IntWeight2Float(sku.Weight), []string{skuExt.Img}, jxStatus2jdStatus(sku.Status), true, nil)
|
||||
if err = err2; err == nil {
|
||||
vendorSkuID = utils.Int64ToStr(vendorSkuID2)
|
||||
}
|
||||
}
|
||||
} else if sku.JdSyncStatus&model.SyncFlagModifiedMask != 0 {
|
||||
params := utils.MergeMaps(addParams)
|
||||
params["categoryId"] = skuExt.JdCategoryID
|
||||
params["shopCategories"] = shopCategories
|
||||
params["brandId"] = skuExt.BrandID
|
||||
params := make(map[string]interface{})
|
||||
params["skuName"] = skuName
|
||||
params["weight"] = jxutils.IntWeight2Float(sku.Weight)
|
||||
params["images"] = []string{skuExt.Img}
|
||||
params[jdapi.KeyFixedStatus] = jxStatus2jdStatus(sku.Status)
|
||||
params[jdapi.KeyWeight] = sku.Weight
|
||||
if globals.EnableStoreWrite {
|
||||
err = api.JdAPI.UpdateSkuBaseInfo(utils.Int2Str(skuExt.ID), utils.Int2Str(sku.ID), params)
|
||||
}
|
||||
@@ -409,14 +410,14 @@ func (p *PurchaseHandler) syncSkuNameAsSpu(db *dao.DaoDB, sku *model.Sku, skuExt
|
||||
}
|
||||
}
|
||||
} else if skuExt.JdSyncStatus&model.SyncFlagModifiedMask != 0 {
|
||||
params := map[string]interface{}{
|
||||
"categoryId": skuExt.JdCategoryID,
|
||||
params := utils.MergeMaps(map[string]interface{}{
|
||||
"superName": jxutils.ComposeSpuName(skuExt.Prefix, skuExt.Name, 0),
|
||||
"shopCategories": shopCategories,
|
||||
"categoryId": skuExt.JdCategoryID,
|
||||
"brandId": skuExt.BrandID,
|
||||
"skuName": skuName,
|
||||
"images": []string{skuExt.Img},
|
||||
jdapi.KeyFixedStatus: jxStatus2jdStatus(skuExt.Status),
|
||||
}
|
||||
}, addParams)
|
||||
if globals.EnableStoreWrite {
|
||||
err = api.JdAPI.UpdateSpu(utils.Int2Str(skuExt.ID), params)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user