- 创建与修改SkuName时,防止UPC重复
This commit is contained in:
@@ -2,6 +2,7 @@ package cms
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
|
"fmt"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
@@ -441,6 +442,15 @@ func AddSkuName(ctx *jxcontext.Context, skuNameExt *model.SkuNameExt, userName s
|
|||||||
panic(r)
|
panic(r)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
if skuNameExt.Upc != "" {
|
||||||
|
err = dao.GetEntity(db, &skuNameExt.SkuName, "Upc")
|
||||||
|
if err == nil {
|
||||||
|
return nil, fmt.Errorf("UPC:%s重复", skuNameExt.Upc)
|
||||||
|
} else if !dao.IsNoRowsError(err) {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
err = nil
|
||||||
|
}
|
||||||
skuNameExt.SkuName.Status = model.SkuStatusNormal
|
skuNameExt.SkuName.Status = model.SkuStatusNormal
|
||||||
if skuNameExt.IsSpu == 1 {
|
if skuNameExt.IsSpu == 1 {
|
||||||
skuNameExt.SkuName.JdSyncStatus = model.SyncFlagNewMask
|
skuNameExt.SkuName.JdSyncStatus = model.SyncFlagNewMask
|
||||||
@@ -528,6 +538,18 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
|||||||
globals.SugarLogger.Debugf("UpdateSkuName valid:%s", utils.Format4Output(valid, false))
|
globals.SugarLogger.Debugf("UpdateSkuName valid:%s", utils.Format4Output(valid, false))
|
||||||
dao.Begin(db)
|
dao.Begin(db)
|
||||||
defer dao.Rollback(db)
|
defer dao.Rollback(db)
|
||||||
|
if upc, _ := valid["upc"].(string); upc != "" {
|
||||||
|
skuName := &model.SkuName{
|
||||||
|
Upc: upc,
|
||||||
|
}
|
||||||
|
err = dao.GetEntity(db, skuName, "Upc")
|
||||||
|
if err == nil {
|
||||||
|
return 0, fmt.Errorf("UPC:%s重复", upc)
|
||||||
|
} else if !dao.IsNoRowsError(err) {
|
||||||
|
return 0, err
|
||||||
|
}
|
||||||
|
err = nil
|
||||||
|
}
|
||||||
if valid["img"] != nil {
|
if valid["img"] != nil {
|
||||||
imgContent, imgMD5, err2 := jxutils.DownloadFileByURL(valid["img"].(string))
|
imgContent, imgMD5, err2 := jxutils.DownloadFileByURL(valid["img"].(string))
|
||||||
if err = err2; err != nil {
|
if err = err2; err != nil {
|
||||||
|
|||||||
@@ -172,7 +172,7 @@ type SkuName struct {
|
|||||||
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的原因是从京东初始化数据时临时需要
|
ElmImgHashCode string `orm:"size(255)" json:"-"` // 长度255的原因是从京东初始化数据时临时需要
|
||||||
Upc string `orm:"size(20)"`
|
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
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user