dyps update

This commit is contained in:
richboo111
2023-01-09 13:48:35 +08:00
22 changed files with 400 additions and 344 deletions

View File

@@ -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,

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -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)

View File

@@ -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)

View File

@@ -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: