This commit is contained in:
suyl
2021-05-21 10:38:13 +08:00
parent 3271c472b3
commit 3517ab6a33
2 changed files with 44 additions and 34 deletions

View File

@@ -2935,60 +2935,68 @@ func LoadStoreVendorCategories(ctx *jxcontext.Context, vendorOrgCode string, ven
return err
}
func RefreshNoImgSku(ctx *jxcontext.Context) (err error) {
func RefreshNoImgSku(ctx *jxcontext.Context, skuNameID int) (err error) {
var (
db = dao.GetDB()
skuNames []*model.SkuName
)
sql := `
SELECT * FROM sku_name WHERE deleted_at = ? AND upc <> '' AND img2 = ''
SELECT * FROM sku_name WHERE deleted_at = ? AND upc <> '' AND img <> ''
`
sqlParams := []interface{}{
utils.DefaultTimeValue,
}
if skuNameID > 0 {
sql += " AND id = ?"
sqlParams = append(sqlParams, skuNameID)
}
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]
data, _, _ := jxutils.DownloadFileByURL(v.Img)
if string(data) == "" {
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) {
setImgs2(v, imgs)
} else {
setImgs2(v, productInfo.ImgList)
}
}
} else {
setImgs2(v, productInfo.ImgList)
}
}
} 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) {
setImgs2(v, imgs)
} else {
setImgs2(v, productInfo.ImgList)
}
}
} else {
setImgs2(v, productInfo.ImgList)
setImgs2(v, imgs)
}
}
} else {
result, _ := api.MtwmAPI.GetStandardProductListWithCond(*v.Upc)
if result != nil {
imgs := strings.Split(result.Pic, ",")
setImgs2(v, imgs)
}
dao.UpdateEntity(db, v, "Img", "Img2", "Img3", "Img4", "Img5")
}
dao.UpdateEntity(db, v, "Img", "Img2", "Img3", "Img4", "Img5")
}
return retVal, err
}, skuNames)

View File

@@ -687,11 +687,13 @@ func (c *SkuController) LoadStoreVendorCategories() {
// @Title 刷新没图的商品
// @Description 刷新没图的商品
// @Param token header string true "认证token"
// @Param skuNameID formData int false "门店ID"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /RefreshNoImgSku [post]
func (c *SkuController) RefreshNoImgSku() {
c.callRefreshNoImgSku(func(params *tSkuRefreshNoImgSkuParams) (retVal interface{}, errCode string, err error) {
err = cms.RefreshNoImgSku(params.Ctx, params.SkuNameID)
return retVal, "", err
})
}