去掉SkuName的ElmImgHashCode与ImgWeimob

This commit is contained in:
gazebo
2019-09-25 10:05:31 +08:00
parent 9cc4328706
commit 4e63f526f2
5 changed files with 55 additions and 48 deletions

View File

@@ -51,6 +51,14 @@ var (
} }
) )
type UploadResTokenInfo struct {
Token string `json:"token,omitempty"`
Expires uint64 `json:"expires,omitempty"`
FileName string `json:"fileName,omitempty"`
Hit bool `json:"hit,omitempty"`
Img string `json:"img,omitempty"`
}
func InitServiceInfo(version string, buildTime time.Time, gitCommit string) { func InitServiceInfo(version string, buildTime time.Time, gitCommit string) {
buildTimeStr := "" buildTimeStr := ""
if !utils.IsTimeZero(buildTime) { if !utils.IsTimeZero(buildTime) {
@@ -100,7 +108,7 @@ func GetServiceInfo(ctx *jxcontext.Context) interface{} {
return serviceInfo return serviceInfo
} }
func GetQiniuUploadToken(ctx *jxcontext.Context, suffix, hashCode string) (upTokenInfo map[string]interface{}, err error) { func GetQiniuUploadToken(ctx *jxcontext.Context, suffix, hashCode string) (upTokenInfo *UploadResTokenInfo, err error) {
imgURL := "" imgURL := ""
if hashCode != "" { if hashCode != "" {
imgURL, _ = GetDataResource(ctx, hashCode) imgURL, _ = GetDataResource(ctx, hashCode)
@@ -110,12 +118,12 @@ func GetQiniuUploadToken(ctx *jxcontext.Context, suffix, hashCode string) (upTok
Scope: globals.QiniuBucket, Scope: globals.QiniuBucket,
Expires: qiniuTokenExpires, Expires: qiniuTokenExpires,
} }
upTokenInfo = map[string]interface{}{ upTokenInfo = &UploadResTokenInfo{
"token": putPolicy.UploadToken(api.QiniuAPI), Token: putPolicy.UploadToken(api.QiniuAPI),
"expires": putPolicy.Expires, Expires: putPolicy.Expires,
"fileName": jxutils.GenPicFileName(suffix), FileName: jxutils.GenPicFileName(suffix),
"hit": imgURL != "", Hit: imgURL != "",
"img": imgURL, Img: imgURL,
} }
return upTokenInfo, err return upTokenInfo, err
} }

View File

@@ -425,7 +425,6 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, isBySku bool, params ma
t1.unit, t1.unit,
t1.price, t1.price,
t1.img, t1.img,
t1.elm_img_hash_code,
t1.status, t1.status,
t1.is_spu, t1.is_spu,
t1.img_hash_code, t1.img_hash_code,
@@ -452,7 +451,6 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, isBySku bool, params ma
t1.unit, t1.unit,
t1.price, t1.price,
t1.img, t1.img,
t1.elm_img_hash_code,
t1.status, t1.status,
t1.is_spu, t1.is_spu,
t1.img_hash_code, t1.img_hash_code,
@@ -593,7 +591,7 @@ func AddSkuName(ctx *jxcontext.Context, skuNameExt *model.SkuNameExt, userName s
dao.Rollback(db) dao.Rollback(db)
return nil, err return nil, err
} }
skuNameExt.ImgWeimob = imgHintMap[model.VendorIDWSC] // skuNameExt.ImgWeimob = imgHintMap[model.VendorIDWSC]
skuNameExt.ImgEbai = imgHintMap[model.VendorIDEBAI] skuNameExt.ImgEbai = imgHintMap[model.VendorIDEBAI]
if skuNameExt.DescImg != "" && getAndSetEbaiUploadRTFShopID() != "" { if skuNameExt.DescImg != "" && getAndSetEbaiUploadRTFShopID() != "" {
@@ -692,7 +690,7 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
dao.Rollback(db) dao.Rollback(db)
return 0, err return 0, err
} }
valid["ImgWeimob"] = imgHintMap[model.VendorIDWSC] // valid["ImgWeimob"] = imgHintMap[model.VendorIDWSC]
valid["ImgEbai"] = imgHintMap[model.VendorIDEBAI] valid["ImgEbai"] = imgHintMap[model.VendorIDEBAI]
} }
if valid["descImg"] != nil { if valid["descImg"] != nil {

View File

@@ -286,30 +286,30 @@ func InitVendorCategory(ctx *jxcontext.Context, vendorID int) (num int64, err er
} }
func UploadWeimobImg4SkuName(ctx *jxcontext.Context, nameIDs []int, isAsync, isContinueWhenError bool) (hint string, err error) { func UploadWeimobImg4SkuName(ctx *jxcontext.Context, nameIDs []int, isAsync, isContinueWhenError bool) (hint string, err error) {
db := dao.GetDB() // db := dao.GetDB()
skuNameList, err := dao.GetSkuNames(db, nameIDs) // skuNameList, err := dao.GetSkuNames(db, nameIDs)
if err != nil { // if err != nil {
return "", err // return "", err
} // }
rootTask := tasksch.NewParallelTask("UploadWeimobImg4SkuName", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError).SetParallelCount(5), ctx, // rootTask := tasksch.NewParallelTask("UploadWeimobImg4SkuName", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError).SetParallelCount(5), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { // func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
skuName := batchItemList[0].(*model.SkuName) // skuName := batchItemList[0].(*model.SkuName)
if skuName.Img != "" && skuName.ImgWeimob == "" { // if skuName.Img != "" && skuName.ImgWeimob == "" {
if globals.EnableWscStoreWrite { // if globals.EnableWscStoreWrite {
if skuName.ImgWeimob, err = api.WeimobAPI.UploadImgByURL(skuName.Img, ""); err == nil { // if skuName.ImgWeimob, err = api.WeimobAPI.UploadImgByURL(skuName.Img, ""); err == nil {
_, err = dao.UpdateEntity(db, skuName, "ImgWeimob") // _, err = dao.UpdateEntity(db, skuName, "ImgWeimob")
} // }
} // }
} // }
return nil, err // return nil, err
}, skuNameList) // }, skuNameList)
tasksch.ManageTask(rootTask).Run() // tasksch.ManageTask(rootTask).Run()
if !isAsync { // if !isAsync {
_, err = rootTask.GetResult(0) // _, err = rootTask.GetResult(0)
} else { // } else {
hint = rootTask.ID // hint = rootTask.ID
} // }
return hint, err return hint, err
} }

View File

@@ -11,7 +11,7 @@ import (
var ( var (
imgFieldMap = map[int]string{ imgFieldMap = map[int]string{
model.VendorIDWSC: "img_weimob", // model.VendorIDWSC: "img_weimob",
model.VendorIDEBAI: "img_ebai", model.VendorIDEBAI: "img_ebai",
} }
descImgFieldMap = map[int]string{ descImgFieldMap = map[int]string{

View File

@@ -195,11 +195,12 @@ type SkuName struct {
SpecQuality float32 `json:"-"` // 为份必然为500这个主要作用只是用于确保SkuName的唯一性 SpecQuality float32 `json:"-"` // 为份必然为500这个主要作用只是用于确保SkuName的唯一性
SpecUnit string `orm:"size(8)" json:"-"` // 为份必然为克这个主要作用只是用于确保SkuName的唯一性 SpecUnit string `orm:"size(8)" json:"-"` // 为份必然为克这个主要作用只是用于确保SkuName的唯一性
Price int `json:"price"` // 单位为分标准价不为份的就为实际标准价为份的为每市斤价实际还要乘质量。todo 为份的确定必须有质量 Price int `json:"price"` // 单位为分标准价不为份的就为实际标准价为份的为每市斤价实际还要乘质量。todo 为份的确定必须有质量
Img string `orm:"size(255)" json:"img"`
ImgWeimob string `orm:"size(255)" json:"imgWeimob"` // 微盟图片地址 Img string `orm:"size(512)" json:"img"`
Img2 string `orm:"size(512)" json:"img2"` // 第二张图片
ImgEbai string `orm:"size(255)" json:"imgEbai"` // 饿百图片地址 ImgEbai string `orm:"size(255)" json:"imgEbai"` // 饿百图片地址
ImgHashCode string `orm:"size(255);index" json:"img_hash_code"` ImgHashCode string `orm:"size(255);index" json:"img_hash_code"`
ElmImgHashCode string `orm:"size(255)" json:"-"` // 长度255的原因是从京东初始化数据时临时需要
Upc string `orm:"size(20);index"` Upc string `orm:"size(20);index"`
Status int `orm:"default(1)" json:"status"` // skuname状态取值同sku.Status Status int `orm:"default(1)" json:"status"` // skuname状态取值同sku.Status
IsSpu int8 `orm:"column(is_spu)" json:"isSpu"` // 用于指明是否SKUNAME当成SPU IsSpu int8 `orm:"column(is_spu)" json:"isSpu"` // 用于指明是否SKUNAME当成SPU