UploadImg4Vendors中添加:统一SkuName中同hashCode,不同图片地址至同一地址
This commit is contained in:
@@ -343,10 +343,10 @@ func UploadEbaiImg4SkuName(ctx *jxcontext.Context, nameIDs []int, isAsync, isCon
|
||||
|
||||
func UploadImg4Vendors(ctx *jxcontext.Context, isAsync, isContinueWhenError bool) (hint string, err error) {
|
||||
db := dao.GetDB()
|
||||
rootTask := tasksch.NewSeqTask("UploadImg4Vendors", ctx,
|
||||
rootTask := tasksch.NewSeqTask("合并SkuName图片至DataResource", ctx,
|
||||
func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
|
||||
switch step {
|
||||
case 0:
|
||||
case 0: // 计算SkuName中缺失的hashCode
|
||||
var skuNameList []*model.SkuName
|
||||
if err = dao.GetRows(db, &skuNameList, `
|
||||
SELECT t1.*
|
||||
@@ -366,7 +366,7 @@ func UploadImg4Vendors(ctx *jxcontext.Context, isAsync, isContinueWhenError bool
|
||||
tasksch.HandleTask(calcTask, task, false).Run()
|
||||
_, err = calcTask.GetResult(0)
|
||||
}
|
||||
case 1:
|
||||
case 1: // 从SkuName添加缺失的图片至DataResource
|
||||
_, err = dao.ExecuteSQL(db, `
|
||||
INSERT INTO data_resource(created_at, updated_at, last_operator, hash_code,
|
||||
resoure_type, name, main_url, ebai_url, qiniu_url, is_vendor)
|
||||
@@ -391,10 +391,17 @@ func UploadImg4Vendors(ctx *jxcontext.Context, isAsync, isContinueWhenError bool
|
||||
LEFT JOIN data_resource t2 ON ((t2.main_url <> '' AND t2.main_url = t1.img) OR (t2.hash_code <> '' AND t2.hash_code = t1.img_hash_code))
|
||||
WHERE t1.img <> '' AND t2.id IS NULL;
|
||||
`)
|
||||
case 2:
|
||||
case 2: // 统一SkuName中同hashCode,不同图片地址至同一地址
|
||||
_, err = dao.ExecuteSQL(db, `
|
||||
UPDATE sku_name t1
|
||||
JOIN data_resource t2 ON t2.hash_code = t1.img_hash_code AND t2.main_url <> ''
|
||||
SET t1.img = t2.main_url
|
||||
WHERE t1.img_hash_code <> '' AND t1.img <> t2.main_url;
|
||||
`)
|
||||
case 3: // 上传DataResource中缺失的平台图片
|
||||
dataResList, err := dao.GetNeedUploadDataResource(db)
|
||||
if err == nil && len(dataResList) > 0 {
|
||||
uploadTask := tasksch.NewParallelTask("UploadImg4Vendors",
|
||||
uploadTask := tasksch.NewParallelTask("批量上传图片至平台",
|
||||
tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError).SetParallelCount(5), ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
dataRes := batchItemList[0].(*model.DataResource)
|
||||
@@ -406,7 +413,7 @@ func UploadImg4Vendors(ctx *jxcontext.Context, isAsync, isContinueWhenError bool
|
||||
}
|
||||
}
|
||||
return result, err
|
||||
}, 3)
|
||||
}, 4)
|
||||
tasksch.HandleTask(rootTask, nil, true).Run()
|
||||
if !isAsync {
|
||||
if _, err = rootTask.GetResult(0); err == nil {
|
||||
|
||||
@@ -170,7 +170,7 @@ func UploadImage2Vendors(ctx *jxcontext.Context, parentTask tasksch.ITask, dataR
|
||||
}
|
||||
if len(vendorIDs) > 0 {
|
||||
imgName := jxutils.GetShortNameFromURL(dataRes.MainURL)
|
||||
task := tasksch.NewSeqTask(fmt.Sprintf("UploadImage2Vendors:%s,%s", dataRes.Name, dataRes.MainURL), ctx,
|
||||
task := tasksch.NewSeqTask(fmt.Sprintf("上传图片至平台1:%s,%s", dataRes.Name, dataRes.MainURL), ctx,
|
||||
func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
|
||||
switch step {
|
||||
case 0:
|
||||
@@ -180,7 +180,7 @@ func UploadImage2Vendors(ctx *jxcontext.Context, parentTask tasksch.ITask, dataR
|
||||
}
|
||||
}
|
||||
case 1:
|
||||
uploadTask := tasksch.NewParallelTask(fmt.Sprintf("UploadImage2Vendors Upload:%s,%s", dataRes.Name, dataRes.MainURL),
|
||||
uploadTask := tasksch.NewParallelTask(fmt.Sprintf("上传图片至平台2:%s,%s", dataRes.Name, dataRes.MainURL),
|
||||
tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
vendorID := batchItemList[0].(int)
|
||||
|
||||
Reference in New Issue
Block a user