恢复商品库京东id
This commit is contained in:
@@ -2198,20 +2198,45 @@ func writeToExcel(excelTitle []string, dataList interface{}, ctx *jxcontext.Cont
|
||||
}
|
||||
|
||||
func RefreshJdDepot(ctx *jxcontext.Context) (err error) {
|
||||
var thingMaps []model.ThingMap
|
||||
sql := `
|
||||
SELECT * FROM thing_map WHERE sync_status = 1 AND thing_type = ? AND vendor_id = ? AND vendor_org_code = ? AND deleted_at = ? ORDER BY thing_id DESC
|
||||
`
|
||||
sqlParams := []interface{}{model.ThingTypeSku, model.VendorIDJD, "320406", utils.DefaultTimeValue}
|
||||
err = dao.GetRows(dao.GetDB(), &thingMaps, sql, sqlParams)
|
||||
if err != nil {
|
||||
return err
|
||||
var (
|
||||
page = 1
|
||||
pageSize = 20
|
||||
searchResults []*jdapi.SearchDeleteWareResult
|
||||
db = dao.GetDB()
|
||||
)
|
||||
for ; page < 367; page++ {
|
||||
searchDeleteWareResults, err := api.JdAPI.SearchDeleteWare("2020-04-22", "2020-04-23", page, pageSize)
|
||||
if err == nil && len(searchDeleteWareResults) > 0 {
|
||||
searchResults = append(searchResults, searchDeleteWareResults...)
|
||||
}
|
||||
}
|
||||
if len(thingMaps) > 0 {
|
||||
for _, v := range thingMaps {
|
||||
time.Sleep(time.Second)
|
||||
SyncSkus(ctx, nil, []int{0}, []string{"320406"}, nil, []int{int(v.ThingID)}, true)
|
||||
// _, err = api.JdAPI.RefreshJdDepot(int(utils.Str2Int64(v.VendorThingID)))
|
||||
for _, v := range searchResults {
|
||||
param := &jdapi.OpSkuParam{
|
||||
TraceID: ctx.GetTrackInfo(),
|
||||
OutSkuID: utils.Int2Str(v.SkuID),
|
||||
FixedStatus: jdapi.SkuFixedStatusDeleted,
|
||||
}
|
||||
_, err = api.JdAPI.UpdateSku2(param)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("RefreshJdDepot UpdateSku2", err.Error())
|
||||
continue
|
||||
}
|
||||
time.Sleep(time.Second)
|
||||
_, err = api.JdAPI.RefreshJdDepot(v.JdID)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("RefreshJdDepot RefreshJdDepot", err.Error())
|
||||
continue
|
||||
}
|
||||
sql := `
|
||||
UPDATE thing_map SET vendor_thing_id = ?, sync_status = ?
|
||||
WHERE thing_type = ? AND vendor_id = ? AND vendor_org_code = ? AND deleted_at = ? AND thing_id = ?
|
||||
`
|
||||
sqlParams := []interface{}{v.JdID, model.SyncFlagModifiedMask, model.ThingTypeSku, model.VendorIDJD, "320406", utils.DefaultTimeValue, v.SkuID}
|
||||
dao.ExecuteSQL(db, sql, sqlParams)
|
||||
_, err = SyncSkus(ctx, nil, []int{0}, []string{"320406"}, nil, []int{int(v.SkuID)}, true)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("RefreshJdDepot SyncSkus", err.Error())
|
||||
continue
|
||||
}
|
||||
}
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user