diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index 19ab4539e..1eae474ce 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -2581,7 +2581,15 @@ func UpdateSkuExinfoMap(ctx *jxcontext.Context, nameIDs []int, imgWaterMark stri for _, v := range skuList { skuIDs = append(skuIDs, v.ID) } - CurVendorSync.SyncStoresSkus2(ctx, nil, 0, db, []int{vendorID}, nil, false, skuIDs, nil, model.SyncFlagModifiedMask, true, true) + if partner.IsMultiStore(vendorID) { + for _, v := range skuIDs { + OnUpdateThing(ctx, db, nil, int64(v), model.ThingTypeSku) + } + CurVendorSync.SyncSkus(ctx, db, nil, skuIDs, isAsync, isContinueWhenError, ctx.GetUserName()) + } else { + CurVendorSync.SyncStoresSkus2(ctx, nil, 0, db, []int{vendorID}, nil, false, skuIDs, nil, model.SyncFlagModifiedMask, true, true) + + } } } } diff --git a/business/jxstore/cms/sync2.go b/business/jxstore/cms/sync2.go index 6316c4ce0..c882f1594 100644 --- a/business/jxstore/cms/sync2.go +++ b/business/jxstore/cms/sync2.go @@ -148,6 +148,7 @@ func SyncSkus(ctx *jxcontext.Context, parentTask tasksch.ITask, vendorIDs []int, return nil, err } skuVendorInfo.SkuName = jxutils.ComposeSkuName(skuVendorInfo.Prefix, skuVendorInfo.Name, skuVendorInfo.Comment, skuVendorInfo.Unit, skuVendorInfo.SpecQuality, skuVendorInfo.SpecUnit, 0, skuVendorInfo.ExPrefix, skuVendorInfo.ExPrefixBegin, skuVendorInfo.ExPrefixEnd) + skuVendorInfo.SkuNameOrigin = jxutils.ComposeSkuNameOriginal(skuVendorInfo.Prefix, skuVendorInfo.Name, skuVendorInfo.Comment, skuVendorInfo.Unit, skuVendorInfo.SpecQuality, skuVendorInfo.SpecUnit, 0) skuVendorInfo.MergedStatus = jxutils.MergeSkuStatus(skuVendorInfo.Status, skuVendorInfo.NameStatus) if multiStoresHandler, ok := partner.GetPurchasePlatformFromVendorID(skuVendorInfo.VendorID).(partner.IMultipleStoresHandler); ok { if model.IsSyncStatusDelete(skuVendorInfo.SkuSyncStatus) { //删除 diff --git a/business/model/dao/sku.go b/business/model/dao/sku.go index c04bc8c16..3315808c2 100644 --- a/business/model/dao/sku.go +++ b/business/model/dao/sku.go @@ -257,11 +257,8 @@ func GetSkusWithVendor(db *DaoDB, vendorIDs []int, appOrgCodes []string, nameIDs IF(t11.resource_type IS NULL OR t11.resource_type <> ?, t2.img, '') img, IF(t12.resource_type IS NULL OR t12.resource_type <> ?, t2.img2, '') img2, t2.desc_img, - t2.ex_prefix, - t2.ex_prefix_begin, - t2.ex_prefix_end, t3.jd_category_id vendor_vendor_cat_id, - + tsu.ex_prefix, tsu.begin_at ex_prefix_begin, tsu.end_at ex_prefix_end, tsu.img_watermark, t3m.sync_status cat_sync_status, t3m.vendor_thing_id vendor_cat_id @@ -288,6 +285,7 @@ func GetSkusWithVendor(db *DaoDB, vendorIDs []int, appOrgCodes []string, nameIDs AND t3m.vendor_id = t1m.vendor_id AND t3m.vendor_org_code = t1m.vendor_org_code LEFT JOIN data_resource t11 ON t11.main_url = t2.img LEFT JOIN data_resource t12 ON t12.main_url = t2.img2 + LEFT JOIN sku_exinfo_map tsu ON tsu.name_id = t2.id AND tsu.deleted_at = ? AND tsu.vendor_id = t1m.vendor_id WHERE 1 = 1 ` sqlParams = append(sqlParams, model.ThingTypeCategory, utils.DefaultTimeValue) diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go index 822870cf7..e96566ff4 100644 --- a/business/model/dao/store_sku.go +++ b/business/model/dao/store_sku.go @@ -75,7 +75,6 @@ type StoreSkuSyncInfo struct { ExPrefix string ExPrefixBegin *time.Time ExPrefixEnd *time.Time - ExVendorID int `orm:"column(ex_vendor_id)" json:"exVendorID"` // NameID int `orm:"column(name_id)"` VendorNameID string `orm:"column(vendor_name_id)"` // 暂时无用 @@ -409,7 +408,7 @@ func GetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty boo %s vendor_sku_id, t1.%s_sync_status sku_sync_status, t1.%s_price vendor_price, t1.%s_lock_time lock_time, t1.store_id, t1.deleted_at bind_deleted_at,t1.status_sale_begin,t1.status_sale_end, t1.jds_ware_id, t2.*, - t3.id name_id, t3.prefix, t3.name, t3.unit, t3.upc, t3.status name_status, t3.ex_prefix, t3.ex_prefix_begin, t3.ex_prefix_end, t3.category_id name_category_id, t3.yb_name_suffix, + t3.id name_id, t3.prefix, t3.name, t3.unit, t3.upc, t3.status name_status, t3.category_id name_category_id, t3.yb_name_suffix, t3.jds_stock_switch, t3.preparation_time, t3.img_watermark, t3.ex_vendor_id, IF(t11.%s <> '', t11.%s, t3.img) img, IF(t12.%s <> '', t12.%s, t3.img2) img2, @@ -417,7 +416,8 @@ func GetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty boo IF(t13.%s <> '', t13.%s, t3.desc_img) desc_img, t4.%s_category_id vendor_vendor_cat_id, t4.name category_name, - ts.name store_name` + ts.name store_name, + tsu.ex_prefix, tsu.begin_at ex_prefix_begin, tsu.end_at ex_prefix_end, tsu.img_watermark` fmtParams := []interface{}{ skuVendorIDField, fieldPrefix, fieldPrefix, fieldPrefix, GetDataResFieldName(vendorID), GetDataResFieldName(vendorID), @@ -451,6 +451,7 @@ func GetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty boo LEFT JOIN data_resource t12 ON t12.main_url = t3.img2 LEFT JOIN data_resource t15 ON t15.main_url = t3.img3 LEFT JOIN data_resource t13 ON t13.main_url = t3.desc_img + LEFT JOIN sku_exinfo_map tsu ON tsu.name_id = t3.id AND tsu.deleted_at = ? AND tsu.vendor_id = t14.vendor_id ` sqlParams := []interface{}{ vendorID, utils.DefaultTimeValue, @@ -458,6 +459,7 @@ func GetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty boo utils.DefaultTimeValue, // model.SkuStatusNormal, utils.DefaultTimeValue, utils.DefaultTimeValue, + utils.DefaultTimeValue, } if globals.IsStoreSkuAct { sql += ` diff --git a/business/partner/purchase/jd/sku2.go b/business/partner/purchase/jd/sku2.go index 5d2717984..54390670d 100644 --- a/business/partner/purchase/jd/sku2.go +++ b/business/partner/purchase/jd/sku2.go @@ -164,8 +164,13 @@ func skuInfo2Param(ctx *jxcontext.Context, sku *dao.StoreSkuSyncInfo) (param *jd FixedStatus: jxStatus2jdStatus(sku.MergedStatus), IsSale: jdapi.IsSaleNo, // todo ? - Upc: sku.Upc, - Images: jxutils.BatchString2Slice(sku.Img, sku.Img2), + Upc: sku.Upc, + // Images: jxutils.BatchString2Slice(sku.Img, sku.Img2), + } + if sku.ImgWatermark != "" { + param.Images = jxutils.BatchString2Slice(sku.Img, sku.Img2) + } else { + param.Images = jxutils.BatchString2Slice(sku.Img, sku.Img2) } if param.CategoryID == 0 { param.CategoryID = int64(getDefJdCategoryID())