- avoid JdID duplicated when creating cat or sku.
This commit is contained in:
@@ -3,6 +3,7 @@ package cms
|
||||
import (
|
||||
"crypto/md5"
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler/basesch"
|
||||
@@ -68,3 +69,8 @@ func GetQiniuUploadToken(suffix string) (upTokenInfo map[string]interface{}, err
|
||||
func genPicFileName(suffix string) string {
|
||||
return fmt.Sprintf("%x%s", md5.Sum([]byte(utils.GetUUID()+suffix)), suffix)
|
||||
}
|
||||
|
||||
// 生成一个不重复的临时ID
|
||||
func genTmpID() int64 {
|
||||
return time.Now().UnixNano()
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import (
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
)
|
||||
|
||||
type SkuNamesInfo struct {
|
||||
@@ -43,6 +44,7 @@ func GetCategories(parentID int) (cats []*model.SkuCategory, err error) {
|
||||
func AddCategory(cat *model.SkuCategory, userName string) (outCat *model.SkuCategory, err error) {
|
||||
dao.WrapAddIDCULDEntity(cat, userName)
|
||||
cat.JdSyncStatus = model.SyncFlagNewMask
|
||||
cat.JdID = genTmpID()
|
||||
if err = dao.CreateEntity(nil, cat); err == nil {
|
||||
outCat = cat
|
||||
err = CurVendorSync.SyncCategory(nil, cat.ID, false, userName)
|
||||
@@ -264,10 +266,12 @@ func GetSkuNames(keyword string, params map[string]interface{}, offset, pageSize
|
||||
}
|
||||
sqlParams = append(sqlParams, pageSize, offset)
|
||||
skuNamesInfo = &SkuNamesInfo{}
|
||||
// globals.SugarLogger.Debug(sqlData)
|
||||
globals.SugarLogger.Debug(sqlData)
|
||||
globals.SugarLogger.Debug(utils.Format4Output(sqlData, false))
|
||||
if err = dao.GetRows(db, &skuNamesInfo.SkuNames, sqlData, sqlParams...); err == nil {
|
||||
countInfo := &struct{ Ct int }{}
|
||||
if err = dao.GetRow(db, countInfo, "SELECT FOUND_ROWS() ct"); err == nil {
|
||||
globals.SugarLogger.Debug(utils.Format4Output(countInfo, false))
|
||||
skuNamesInfo.TotalCount = countInfo.Ct
|
||||
for _, skuName := range skuNamesInfo.SkuNames {
|
||||
if skuName.SkusStr != "" {
|
||||
@@ -301,6 +305,7 @@ func AddSkuName(skuNameExt *model.SkuNameExt, userName string) (outSkuNameExt *m
|
||||
dao.WrapAddIDCULDEntity(sku, userName)
|
||||
sku.NameID = skuNameExt.ID
|
||||
sku.JdSyncStatus = model.SyncFlagNewMask
|
||||
sku.JdID = genTmpID()
|
||||
if err = dao.CreateEntity(db, sku); err != nil {
|
||||
dao.Rollback(db)
|
||||
return nil, err
|
||||
@@ -402,6 +407,7 @@ func AddSku(nameID int, sku *model.Sku, userName string) (outSkuNameExt *model.S
|
||||
dao.WrapAddIDCULDEntity(sku, userName)
|
||||
sku.JdSyncStatus = model.SyncFlagNewMask
|
||||
sku.NameID = nameID
|
||||
sku.JdID = genTmpID()
|
||||
if err = dao.CreateEntity(db, sku); err == nil {
|
||||
result, err2 := GetSkuNames("", utils.Params2Map("skuID", sku.ID), 0, 0)
|
||||
if err = err2; err == nil {
|
||||
|
||||
Reference in New Issue
Block a user