dyps update
This commit is contained in:
@@ -3314,9 +3314,9 @@ func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs [
|
||||
for _, v := range skus {
|
||||
var things []*model.ThingMap
|
||||
sql := `
|
||||
SELECT * FROM thing_map WHERE vendor_org_code = ? AND thing_type = ? AND thing_id = ? AND deleted_at = ?
|
||||
SELECT * FROM thing_map WHERE thing_type = ? AND thing_id = ? AND vendor_thing_id <> "" AND deleted_at = ?
|
||||
`
|
||||
sqlParams := []interface{}{"320406", model.ThingTypeSku, v.ID, utils.DefaultTimeValue}
|
||||
sqlParams := []interface{}{model.ThingTypeSku, v.ID, utils.DefaultTimeValue}
|
||||
dao.GetRows(db, &things, sql, sqlParams)
|
||||
skusVendor := &model.SkuWithVendor{
|
||||
Sku: v,
|
||||
|
||||
@@ -784,7 +784,6 @@ func GetVendorStore(ctx *jxcontext.Context, vendorID int, vendorOrgCode, vendorS
|
||||
return nil, err
|
||||
}
|
||||
if handler := CurVendorSync.GetStoreHandler(vendorID); handler != nil {
|
||||
globals.SugarLogger.Debugf("step1 handler==============%s", handler)
|
||||
result, err2 := handler.ReadStore(ctx, vendorOrgCode, vendorStoreID, "")
|
||||
if err = err2; err == nil {
|
||||
retVal = &StoreExt{
|
||||
@@ -812,7 +811,6 @@ func GetVendorStore(ctx *jxcontext.Context, vendorID int, vendorOrgCode, vendorS
|
||||
return nil, err
|
||||
} else {
|
||||
handler := partner.GetDeliveryPlatformFromVendorID(vendorID).Handler
|
||||
globals.SugarLogger.Debugf("step2 handler==============%s", handler)
|
||||
if store, err := handler.GetStore(ctx, 0, vendorStoreID); err == nil {
|
||||
retVal = &StoreExt{
|
||||
Store: store.Store,
|
||||
@@ -1706,7 +1704,6 @@ func UpdateStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendor
|
||||
if (valid["deliveryFeeDeductionSill"] != nil || valid["deliveryFeeDeductionFee"] != nil || valid["ybStorePrefix"] != nil) && vendorID == model.VendorIDDD {
|
||||
DDFlag = true
|
||||
} //特殊处理抖店运费模板、打包费
|
||||
globals.SugarLogger.Debugf("DeliveryFeeDeductionFee=====%d,YbStorePrefix====%s", storeMap.DeliveryFeeDeductionFee, storeMap.YbStorePrefix)
|
||||
if (storeMap.DeliveryFeeDeductionFee > 0 || utils.Str2Int(storeMap.YbStorePrefix) > 0) && vendorID == model.VendorIDDD {
|
||||
DDFlag = true
|
||||
}
|
||||
|
||||
@@ -6614,27 +6614,27 @@ func UpdateMtCatToJd(ctx *jxcontext.Context, mtCatID, jdCatID string) (err error
|
||||
}
|
||||
|
||||
func SyncTiktokMainIdToLocal(ctx *jxcontext.Context, param *tiktok_store.MainSku) error {
|
||||
codes, err := dao.GetVendorOrgCode(dao.GetDB(), model.VendorIDDD, "", "platform")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
db := dao.GetDB()
|
||||
for _, code := range codes {
|
||||
result, err := tiktok_store.QueryAllMainSkuList(code.VendorOrgCode, param)
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
|
||||
// 删除当前时间段数据
|
||||
jxutils.CallMsgHandlerAsync(func() {
|
||||
if err := DeleteThingByData(ctx, db, code.VendorOrgCode, utils.Timestamp2Time(param.StartTime), utils.Timestamp2Time(param.EndTime)); err != nil {
|
||||
globals.SugarLogger.Error("删除需要同步的数据 := %s", err.Error())
|
||||
}
|
||||
if err := OnCreateThing2Tiktok(ctx, db, code.VendorOrgCode, result, model.ThingTypeSku, model.SyncFlagNewMask, false); err != nil {
|
||||
globals.SugarLogger.Error("初始他抖音平台主订单已经子订单id信息错误:= %s", err.Error())
|
||||
}
|
||||
}, "")
|
||||
}
|
||||
//codes, err := dao.GetVendorOrgCode(dao.GetDB(), model.VendorIDDD, "", "platform")
|
||||
//if err != nil {
|
||||
// return err
|
||||
//}
|
||||
//db := dao.GetDB()
|
||||
//for _, code := range codes {
|
||||
// result, err := tiktok_store.QueryAllMainSkuList(code.VendorOrgCode, param)
|
||||
// if err != nil {
|
||||
// continue
|
||||
// }
|
||||
//
|
||||
// // 删除当前时间段数据
|
||||
// jxutils.CallMsgHandlerAsync(func() {
|
||||
// if err := DeleteThingByData(ctx, db, code.VendorOrgCode, utils.Timestamp2Time(param.StartTime), utils.Timestamp2Time(param.EndTime)); err != nil {
|
||||
// globals.SugarLogger.Error("删除需要同步的数据 := %s", err.Error())
|
||||
// }
|
||||
// if err := OnCreateThing2Tiktok(ctx, db, code.VendorOrgCode, result, model.ThingTypeSku, model.SyncFlagNewMask, false); err != nil {
|
||||
// globals.SugarLogger.Error("初始他抖音平台主订单已经子订单id信息错误:= %s", err.Error())
|
||||
// }
|
||||
// }, "")
|
||||
//}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -288,7 +288,6 @@ func (v *VendorSync) SyncStore2(ctx *jxcontext.Context, db *dao.DaoDB, vendorIDs
|
||||
var vendorStoreID string
|
||||
storeMap := loopMapInfo.StoreMapList[0]
|
||||
if model.IsSyncStatusNew(storeMap.SyncStatus) {
|
||||
globals.SugarLogger.Debug("进入handler.CreateStore2")
|
||||
storeDetail, _ := dao.GetStoreDetail(db, storeMap.StoreID, storeMap.VendorID, storeMap.VendorOrgCode)
|
||||
if vendorStoreID, err = handler.CreateStore2(db2, storeMap.StoreID, userName, nil, storeDetail); err == nil {
|
||||
resultList = append(resultList, 1)
|
||||
|
||||
@@ -312,6 +312,19 @@ func formalizeStoreSkuList(inSkuList []*dao.StoreSkuSyncInfo) []*dao.StoreSkuSyn
|
||||
//美团的商品名字都要有 ‘约’
|
||||
if skuItem.VendorID == model.VendorIDMTWM {
|
||||
skuItem.SkuName = jxutils.ComposeSkuNameSync2(skuItem.Prefix, skuItem.Name, skuItem.Comment, skuItem.Unit, skuItem.SpecQuality, skuItem.SpecUnit, 0, skuItem.ExPrefix, skuItem.ExPrefixBegin, skuItem.ExPrefixEnd, (skuItem.BrandID == skuItem.ExBrandID && skuItem.ExBrandID != 0) || skuItem.ExBrandID == 0)
|
||||
} else if skuItem.VendorID == model.VendorIDDD {
|
||||
var endIndex int = 0
|
||||
var skuName string = ""
|
||||
if strings.HasPrefix(skuItem.Name, "[") {
|
||||
endIndex = strings.Index(skuItem.Name, "]")
|
||||
skuName = skuItem.Name[endIndex+1:]
|
||||
} else if strings.HasPrefix(skuItem.Name, "【") {
|
||||
endIndex = strings.Index(skuItem.Name, "】")
|
||||
skuName = skuItem.Name[endIndex+3:]
|
||||
} else {
|
||||
skuName = skuItem.Name
|
||||
}
|
||||
skuItem.SkuName = jxutils.ComposeSkuNameSync("", skuName, skuItem.Comment, skuItem.Unit, skuItem.SpecQuality, skuItem.SpecUnit, 0, skuItem.ExPrefix, skuItem.ExPrefixBegin, skuItem.ExPrefixEnd, (skuItem.BrandID == skuItem.ExBrandID && skuItem.ExBrandID != 0) || skuItem.ExBrandID == 0)
|
||||
} else {
|
||||
skuItem.SkuName = jxutils.ComposeSkuNameSync(skuItem.Prefix, skuItem.Name, skuItem.Comment, skuItem.Unit, skuItem.SpecQuality, skuItem.SpecUnit, 0, skuItem.ExPrefix, skuItem.ExPrefixBegin, skuItem.ExPrefixEnd, (skuItem.BrandID == skuItem.ExBrandID && skuItem.ExBrandID != 0) || skuItem.ExBrandID == 0)
|
||||
}
|
||||
@@ -380,6 +393,8 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item
|
||||
if sku.VendorSonSkuID != "" {
|
||||
kvs["VendorSonSkuID"] = sku.VendorSonSkuID
|
||||
}
|
||||
// 抖音在同步时,无法区分修改的是主商品还是子商品,所以先同步主商品,在定时任务同步子商品
|
||||
|
||||
storeSku := &model.StoreSkuBind{}
|
||||
storeSku.ID = sku.BindID
|
||||
item = &dao.KVUpdateItem{
|
||||
@@ -411,8 +426,10 @@ func updateStoreSku(db *dao.DaoDB, vendorID int, storeSkuList []*dao.StoreSkuSyn
|
||||
} else {
|
||||
updateItemList := make([]*dao.KVUpdateItem, len(storeSkuList))
|
||||
for k, v := range storeSkuList {
|
||||
globals.SugarLogger.Debugf("======skusyncStatus %s", utils.Format4Output(v, false))
|
||||
updateItemList[k] = sku2Update(vendorID, v, syncStatus)
|
||||
}
|
||||
globals.SugarLogger.Debugf("========updateItemList=== %s", utils.Format4Output(updateItemList, false))
|
||||
num, err = dao.BatchUpdateEntityByKV(db, updateItemList)
|
||||
if vendorID == model.VendorIDYB {
|
||||
err = updateYbOhterSku(db, storeSkuList)
|
||||
@@ -676,12 +693,6 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
|
||||
// api.JdShop2API.SetCookieWithStr(configs[0].Value)
|
||||
// }
|
||||
}
|
||||
//createList, updateList []*dao.StoreSkuSyncInfo
|
||||
//deleteList, stockList, onlineList, offlineList, priceList []*partner.StoreSkuInfo
|
||||
//updateItems []*dao.KVUpdateItem
|
||||
//reorderSkuMap map[string][]*dao.StoreSkuSyncInfo
|
||||
globals.SugarLogger.Debugf("createList len = %d ", len(createList))
|
||||
globals.SugarLogger.Debugf("====skuList %s", utils.Format4Output(skus, false))
|
||||
task := tasksch.NewParallelTask("syncStoreSkuNew", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError2), ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
step := batchItemList[0].(int)
|
||||
@@ -846,7 +857,6 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
|
||||
for vendorCatID := range reorderSkuMap {
|
||||
vendorCatIDs = append(vendorCatIDs, vendorCatID)
|
||||
}
|
||||
globals.SugarLogger.Debugf("门店商品排序=====")
|
||||
reorderTask := tasksch.NewParallelTask("门店商品排序", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError2), ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
vendorCatID := batchItemList[0].(string)
|
||||
|
||||
@@ -6,7 +6,6 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/bidding"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/ddmsg"
|
||||
"git.rosy.net.cn/jx-callback/business/partner/delivery"
|
||||
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -214,19 +213,19 @@ func Init() {
|
||||
})
|
||||
|
||||
// 定时任务更新昨天的都要商品和本地商品id的映射关系
|
||||
ScheduleTimerFunc("RefreshStoreOperator", func() {
|
||||
t := time.Now()
|
||||
cms.SyncTiktokMainIdToLocal(jxcontext.AdminCtx, &tiktok_store.MainSku{
|
||||
AppOrgCode: "",
|
||||
CheckStatus: 3,
|
||||
StartTime: time.Date(t.Year(), t.Month(), t.Day()-1, 0, 0, 1, 0, time.Local).Unix(),
|
||||
EndTime: time.Date(t.Year(), t.Month(), t.Day()-1, 23, 59, 59, 0, time.Local).Unix(),
|
||||
Page: 1,
|
||||
PageSize: 100,
|
||||
})
|
||||
}, []string{
|
||||
"04:30:00",
|
||||
})
|
||||
//ScheduleTimerFunc("RefreshStoreOperator", func() {
|
||||
// t := time.Now()
|
||||
// cms.SyncTiktokMainIdToLocal(jxcontext.AdminCtx, &tiktok_store.MainSku{
|
||||
// AppOrgCode: "",
|
||||
// CheckStatus: 3,
|
||||
// StartTime: time.Date(t.Year(), t.Month(), t.Day()-1, 0, 0, 1, 0, time.Local).Unix(),
|
||||
// EndTime: time.Date(t.Year(), t.Month(), t.Day()-1, 23, 59, 59, 0, time.Local).Unix(),
|
||||
// Page: 1,
|
||||
// PageSize: 100,
|
||||
// })
|
||||
//}, []string{
|
||||
// "04:30:00",
|
||||
//})
|
||||
|
||||
ScheduleTimerFuncByInterval(func() {
|
||||
defsch.FixedScheduler.ConfirmSelfTakeOrders(jxcontext.AdminCtx, []int{model.VendorIDJD}, time.Now().Add(-48*time.Hour), time.Now().Add(-30*time.Minute), true, true)
|
||||
@@ -253,9 +252,9 @@ func Init() {
|
||||
|
||||
// 抖音更新门店商品
|
||||
if beego.BConfig.RunMode != "jxgy" {
|
||||
ScheduleTimerFuncByInterval(func() {
|
||||
ScheduleTimerFunc("RefreshSyncSkuList", func() {
|
||||
syncStoreSkuTiktok()
|
||||
}, 60*time.Second, 30*time.Minute)
|
||||
}, []string{"11:30:00"})
|
||||
}
|
||||
|
||||
// 定时任务刷新当前订单的物流信息
|
||||
@@ -590,7 +589,33 @@ func syncStoreSkuTiktok() {
|
||||
if beego.BConfig.RunMode != "jxgy" {
|
||||
errList.AddErr(cms.DeleteSkuNameExPrefixOverdue(db))
|
||||
errList.AddErr(cms.SetMultiStoreSkuSyncModifyStatus(db, partner.GetMultiStoreVendorIDs()))
|
||||
_, err = cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, nil, 0, db, []int{model.VendorIDDD}, []int{668619}, false, nil, nil, syncFlag, true, true)
|
||||
var storeList2GD = []int{
|
||||
102533,
|
||||
668619,
|
||||
100336,
|
||||
102014,
|
||||
103089,
|
||||
667212,
|
||||
667510,
|
||||
100328,
|
||||
100524,
|
||||
102046,
|
||||
103190,
|
||||
667149,
|
||||
100334,
|
||||
101995,
|
||||
102563,
|
||||
102039,
|
||||
100329,
|
||||
102465,
|
||||
102417,
|
||||
100517,
|
||||
102377,
|
||||
666761,
|
||||
102592,
|
||||
102057,
|
||||
}
|
||||
_, err = cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, nil, 0, db, []int{model.VendorIDDD}, storeList2GD, false, nil, nil, syncFlag, true, true)
|
||||
errList.AddErr(err)
|
||||
}
|
||||
case 1:
|
||||
|
||||
Reference in New Issue
Block a user