This commit is contained in:
苏尹岚
2021-03-19 09:18:34 +08:00
parent 875c29f655
commit 3c6d727423
4 changed files with 186 additions and 194 deletions

View File

@@ -3065,3 +3065,177 @@ func LoadStoreVendorCategories(ctx *jxcontext.Context, vendorOrgCode string, ven
}
return err
}
func RefreshNoImgSku(ctx *jxcontext.Context) (err error) {
var (
db = dao.GetDB()
skuNames []*model.SkuName
)
sql := `
SELECT * FROM sku_name WHERE deleted_at = ? AND upc <> '' AND img2 = ''
`
sqlParams := []interface{}{
utils.DefaultTimeValue,
}
dao.GetRows(db, &skuNames, sql, sqlParams)
task := tasksch.NewParallelTask("uuuuu", tasksch.NewParallelConfig().SetParallelCount(20).SetIsContinueWhenError(true), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
v := batchItemList[0].(*model.SkuName)
if v.Upc != nil {
productInfos, _ := api.JdAPI.GetJdUpcCodeByName("", *v.Upc, 1, 30)
if len(productInfos) > 0 {
productInfo := productInfos[0]
if len(productInfo.ImgList) >= 5 {
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
v.Img5 = productInfo.ImgList[4]
} else {
result, _ := api.MtwmAPI.GetStandardProductListWithCond(*v.Upc)
if result != nil {
imgs := strings.Split(result.Pic, ",")
if len(imgs) >= 5 {
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
v.Img5 = imgs[4]
} else {
if len(imgs) > len(productInfo.ImgList) {
switch len(imgs) {
case 0:
case 1:
v.Img = imgs[0]
case 2:
v.Img = imgs[0]
v.Img2 = imgs[1]
case 3:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
case 4:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
case 5:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
v.Img5 = imgs[4]
default:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
v.Img5 = imgs[4]
}
} else {
switch len(productInfo.ImgList) {
case 0:
case 1:
v.Img = productInfo.ImgList[0]
case 2:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
case 3:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
case 4:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
case 5:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
v.Img5 = productInfo.ImgList[4]
default:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
v.Img5 = productInfo.ImgList[4]
}
}
}
} else {
switch len(productInfo.ImgList) {
case 0:
case 1:
v.Img = productInfo.ImgList[0]
case 2:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
case 3:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
case 4:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
case 5:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
v.Img5 = productInfo.ImgList[4]
default:
v.Img = productInfo.ImgList[0]
v.Img2 = productInfo.ImgList[1]
v.Img3 = productInfo.ImgList[2]
v.Img4 = productInfo.ImgList[3]
v.Img5 = productInfo.ImgList[4]
}
}
}
} else {
result, _ := api.MtwmAPI.GetStandardProductListWithCond(*v.Upc)
if result != nil {
imgs := strings.Split(result.Pic, ",")
switch len(imgs) {
case 0:
case 1:
v.Img = imgs[0]
case 2:
v.Img = imgs[0]
v.Img2 = imgs[1]
case 3:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
case 4:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
case 5:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
v.Img5 = imgs[4]
default:
v.Img = imgs[0]
v.Img2 = imgs[1]
v.Img3 = imgs[2]
v.Img4 = imgs[3]
v.Img5 = imgs[4]
}
}
}
dao.UpdateEntity(db, v, "Img", "Img2", "Img3", "Img4", "Img5")
}
return retVal, err
}, skuNames)
tasksch.HandleTask(task, nil, true).Run()
_, err = task.GetResult(0)
return err
}