From 0ca51ca7fc42d97210553ae38407695b284bf72a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Thu, 18 Feb 2021 09:57:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E7=B1=BB=E5=90=8D=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E4=B8=8D=E5=85=81=E8=AE=B8=E5=88=9B=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/sku.go | 6 +++++- business/model/dao/sku.go | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index b49907db0..7baebba2e 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -143,7 +143,11 @@ func AddCategory(ctx *jxcontext.Context, cat *model.SkuCategory, userName string return nil, errors.New("Level3的分类其父分类必须为Level2分类") } } - + if catsByName, err := dao.GetCategoriesByName(db, cat.Name); err == nil && len(catsByName) > 0 { + return nil, fmt.Errorf("已有分类名:[%v],分类名不允许重复!", cat.Name) + } else if err != nil { + return nil, err + } dao.WrapAddIDCULDEntity(cat, userName) // cat.JdSyncStatus = model.SyncFlagNewMask // cat.JdID = 0 diff --git a/business/model/dao/sku.go b/business/model/dao/sku.go index 6f99ec122..3c991428d 100644 --- a/business/model/dao/sku.go +++ b/business/model/dao/sku.go @@ -50,6 +50,21 @@ func DeleteSkuNamePlace(db *DaoDB, nameID int, placeCodes []int) (num int64, err return ExecuteSQL(db, sql, sqlParams...) } +func GetCategoriesByName(db *DaoDB, name string) (cats []*model.SkuCategory, err error) { + sql := ` + SELECT t1.* + FROM sku_category t1 + WHERE t1.deleted_at = ?` + params := []interface{}{ + utils.DefaultTimeValue, + } + if name != "" { + sql += " AND t1.name = ?" + params = append(params, name) + } + return cats, GetRows(db, &cats, sql, params) +} + func GetCategories(db *DaoDB, parentID, level int, catIDs []int, isExd bool) (cats []*model.SkuCategory, err error) { sql := ` SELECT t1.*