From 3517ab6a33e13f6bfff3c32980505bbeea7929da Mon Sep 17 00:00:00 2001 From: suyl <770236076@qq.com> Date: Fri, 21 May 2021 10:38:13 +0800 Subject: [PATCH] aa --- business/jxstore/cms/sku.go | 76 ++++++++++++++++++++----------------- controllers/cms_sku.go | 2 + 2 files changed, 44 insertions(+), 34 deletions(-) diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index 1e488a4e3..b1d5b6661 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -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) diff --git a/controllers/cms_sku.go b/controllers/cms_sku.go index 065c45e37..cde55336f 100644 --- a/controllers/cms_sku.go +++ b/controllers/cms_sku.go @@ -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 }) }