From 7df10d105c6aa73604b7a884ef239b2f6d671a19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Sat, 8 Oct 2022 14:16:59 +0800 Subject: [PATCH] 1 --- .../partner/purchase/tiktok_store/mtwm.go | 63 ++++++------ .../purchase/tiktok_store/mtwm_test.go | 97 ++++++++++--------- .../partner/purchase/tiktok_store/store.go | 2 +- 3 files changed, 80 insertions(+), 82 deletions(-) diff --git a/business/partner/purchase/tiktok_store/mtwm.go b/business/partner/purchase/tiktok_store/mtwm.go index 11ce8a4d1..1a08511ae 100644 --- a/business/partner/purchase/tiktok_store/mtwm.go +++ b/business/partner/purchase/tiktok_store/mtwm.go @@ -47,44 +47,41 @@ func (c *PurchaseHandler) GetVendorID() int { } func (p *PurchaseHandler) GetVendorCategories(ctx *jxcontext.Context) (vendorCats []*model.SkuVendorCategory, err error) { - cats, err := api.MtwmAPI.RetailGetSpTagIds() + cats, err := getAPI("53802960", 0, "").GetShopCategory(0) if err != nil { return nil, err } - vendorCatMapList := make([]map[string]*model.SkuVendorCategory, 3) - manID := 10000 - for i := 0; i < 3; i++ { - vendorCatMapList[i] = make(map[string]*model.SkuVendorCategory) - for _, v := range cats { - if v.Level == 3 { - namePathList := strings.Split(strings.Trim(v.NamePath, ","), ",") - if len(namePathList) != 3 { - panic(fmt.Sprintf("%s没有三级结构", v.NamePath)) - } - name := namePathList[i] - if _, ok := vendorCatMapList[i][name]; !ok { - cat := &model.SkuVendorCategory{ - VendorID: model.VendorIDMTWM, - Name: name, //utils.Interface2String(v["name"]), - Level: i + 1, //int(utils.MustInterface2Int64(v["level"])), - } - vendorCats = append(vendorCats, cat) - vendorCatMapList[i][name] = cat - if i == 2 { - cat.IsLeaf = 1 - cat.VendorCategoryID = utils.Int64ToStr(v.ID) - } else { - cat.VendorCategoryID = utils.Int2Str(manID) // 非叶子结点编码没有实际使用 - manID++ - } - if i > 0 { - cat.ParentID = vendorCatMapList[i-1][namePathList[i-1]].VendorCategoryID - } - } - } + + vendorCats = skuCategory(cats) + return vendorCats, nil +} + +func skuCategory(param1 []*tiktok_api.RetailCategoryInfo) (vendorCats []*model.SkuVendorCategory) { + size := make([]*model.SkuVendorCategory, 0) + for _, v := range param1 { + param := &model.SkuVendorCategory{ + VendorCategoryID: utils.Int64ToStr(v.Id), + VendorID: model.VendorIDDD, + Name: v.Name, + Level: int(v.Level), + ParentID: utils.Int64ToStr(v.ParentId), + } + if v.Enable == false { + param.IsLeaf = 0 + } else { + param.IsLeaf = 1 + } + if param.Name != "" { + size = append(size, param) + } + + if len(v.Children) != 0 { + kk := skuCategory(v.Children) + vendorCats = append(vendorCats, kk...) } } - return vendorCats, nil + vendorCats = append(vendorCats, size...) + return } func rangeMtwm2JX(areaStr string) string { diff --git a/business/partner/purchase/tiktok_store/mtwm_test.go b/business/partner/purchase/tiktok_store/mtwm_test.go index 2eb215723..8d01ccebe 100644 --- a/business/partner/purchase/tiktok_store/mtwm_test.go +++ b/business/partner/purchase/tiktok_store/mtwm_test.go @@ -1,50 +1,51 @@ package tiktok_store -//import ( -// "git.rosy.net.cn/jx-callback/business/model" -// "git.rosy.net.cn/jx-callback/business/model/dao" -// "testing" -// "time" -// -// "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" -// -// "git.rosy.net.cn/baseapi/utils" -// _ "git.rosy.net.cn/jx-callback/business/jxcallback/orderman" -// "git.rosy.net.cn/jx-callback/globals/testinit" -//) -// -//const ( -// testShopVendorID = "2523687" -// testShopID = 2 -//) -// -//func init() { -// testinit.Init() -//} -// -//// 获取平台分类属性(三级分类标签) -//func TestGetVendorCategories(t *testing.T) { -// result, err := new(PurchaseHandler).GetVendorCategories(jxcontext.AdminCtx) -// if err != nil { -// t.Fatal(err) -// } -// for _, v := range result { -// data := model.SkuVendorCategory{ -// ModelIDCUL: model.ModelIDCUL{ -// CreatedAt: time.Now(), -// UpdatedAt: time.Now(), -// LastOperator: "刘磊", -// }, -// VendorCategoryID: v.VendorCategoryID, -// VendorID: v.VendorID, -// Name: v.Name, -// IsLeaf: v.IsLeaf, -// Level: v.Level, -// ParentID: v.ParentID, -// } -// if err := dao.CreateEntity(dao.GetDB(), &data); err != nil { -// t.Log(utils.Format4Output(err, false)) -// } -// } -// t.Log(utils.Format4Output(result, false)) -//} +import ( + "git.rosy.net.cn/baseapi/utils" + "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" + "git.rosy.net.cn/jx-callback/business/model" + "git.rosy.net.cn/jx-callback/business/model/dao" + "testing" + "time" +) + +import ( + _ "git.rosy.net.cn/jx-callback/business/jxcallback/orderman" + "git.rosy.net.cn/jx-callback/globals/testinit" +) + +const ( + testShopVendorID = "2523687" + testShopID = 2 +) + +func init() { + testinit.Init() +} + +// 获取平台分类属性(三级分类标签) +func TestGetVendorCategories(t *testing.T) { + result, err := new(PurchaseHandler).GetVendorCategories(jxcontext.AdminCtx) + if err != nil { + t.Fatal(err) + } + for _, v := range result { + data := model.SkuVendorCategory{ + ModelIDCUL: model.ModelIDCUL{ + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + LastOperator: "刘磊", + }, + VendorCategoryID: v.VendorCategoryID, + VendorID: v.VendorID, + Name: v.Name, + IsLeaf: v.IsLeaf, + Level: v.Level, + ParentID: v.ParentID, + } + if err := dao.CreateEntity(dao.GetDB(), &data); err != nil { + t.Log(utils.Format4Output(err, false)) + } + } + t.Log(utils.Format4Output(result, false)) +} diff --git a/business/partner/purchase/tiktok_store/store.go b/business/partner/purchase/tiktok_store/store.go index 8357de5f9..35a898511 100644 --- a/business/partner/purchase/tiktok_store/store.go +++ b/business/partner/purchase/tiktok_store/store.go @@ -74,7 +74,7 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri list := shop_batchCreateStore_request.StoreListItem{ RowId: 1, Name: storeDetail.Name, - StoreCode: storeDetail.VendorStoreID, + StoreCode: utils.Int2Str(storeDetail.Store.ID), Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(storeDetail.Lng)), Latitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(storeDetail.Lat)), Province: storeDetail.ProvinceName,