From c8c33d38c127f0ee0370ffcffb53d9fd347f6414 Mon Sep 17 00:00:00 2001 From: richboo111 Date: Fri, 2 Dec 2022 16:21:11 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=A8=E5=BA=97=E5=AE=A1=E6=A0=B8=E7=8A=B6?= =?UTF-8?q?=E6=80=81=EF=BC=8C=E5=A2=9E=E5=8A=A0=E7=94=B5=E5=AD=90=E5=9B=B4?= =?UTF-8?q?=E6=A0=8F=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/store.go | 23 +++++++++++++++++-- .../partner/purchase/tiktok_store/store.go | 12 ++++++++-- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index 2ce344027..d52c6a4fa 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -6019,6 +6019,9 @@ func GetVendorOrgCode(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID i func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error) { var ( tempFenceID string + tStr1 = "" + tStr2 = "" + endStr = "" db = dao.GetDB() errList = errlist.New() FreightTemplate = &model.FreightTemplate{} @@ -6027,6 +6030,19 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error for _, i := range v { tempStoreID := utils.Str2Int64(i.StoreID) tempVendorStoreID := utils.Str2Int64(i.VendorStoreID) + //预处理门店无配送范围情况 + if localStore, err := dao.GetStoreDetail(db, utils.Str2Int(i.StoreID), model.VendorIDDD, k); err == nil { + if localStore.DeliveryRangeType == tiktok_store.LocalShapeCircular && utils.Str2Int(localStore.DeliveryRange) <= 0 { + tStr1 += i.StoreID + "," + } else if localStore.DeliveryRangeType == tiktok_store.LocalShapePolygon { + tempStr := strings.Split(localStore.DeliveryRange, ";") + if len(tempStr) < 3 { + tStr2 += i.StoreID + "," + } + } + endStr = tStr1 + "," + tStr2 + globals.SugarLogger.Debugf("京西平台没有配送范围的门店ID=%s", endStr) + } //暂时逻辑直接使用storeID if ifBindFence, err := tiktok_store.GetFence(k, i.StoreID); err == nil && len(ifBindFence.OutFenceId) != 0 { tempFenceID = i.StoreID @@ -6054,8 +6070,11 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error } } if errList.GetErrListAsOne() != nil { - globals.SugarLogger.Debugf("errList.GetErrListAsOne()===========%v", errList.GetErrListAsOne()) - return fmt.Sprintf("批量创建电子围栏错误,请根据提示处理:%v", errList.GetErrListAsOne()), nil + if len(endStr) > 0 { + return fmt.Sprintf("批量创建电子围栏错误,请根据提示处理:%v,#门店%s的配送范围不合法,请处理后再进行创建#", errList.GetErrListAsOne(), endStr), nil + } else { + return fmt.Sprintf("批量创建电子围栏错误,请根据提示处理:%v", errList.GetErrListAsOne()), nil + } } return "", nil } diff --git a/business/partner/purchase/tiktok_store/store.go b/business/partner/purchase/tiktok_store/store.go index 6b77c20e1..a94d3c936 100644 --- a/business/partner/purchase/tiktok_store/store.go +++ b/business/partner/purchase/tiktok_store/store.go @@ -156,6 +156,14 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee FreightTemplate = &model.FreightTemplate{} db *dao.DaoDB ) + //检查门店是否审核通过 + if remoteStore, err := getAPI(vendorOrgCode, int(storeID), utils.Int64ToStr(vendorStoreID)).GetStoreDetail(&shop_getStoreDetail_request.ShopGetStoreDetailParam{ + StoreId: vendorStoreID, + }); err == nil { + if remoteStore.StoreDetail.PoiAuditInfo.PoiAuditState != tiktok_api.PoiAuditStateSuccessBind { + return fmt.Errorf("门店%d 未审核通过,请通过后再进行绑定", storeID) + } + } //1.平台获取门店运费模板 if bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID); err != nil || bindFreightIDs == 0 { //(1)未查询到绑定信息,不算错误 //创建 @@ -250,7 +258,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee VendorStoreID: utils.Int64ToStr(vendorStoreID), } if err := dao.CreateEntity(db, FreightTemplate); err != nil { - if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID"); err1 != nil { + if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID", "StoreID", "VendorStoreID"); err1 != nil { errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) } else { errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err)) @@ -477,7 +485,7 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin VendorStoreID: storeInfo.VendorStoreID, } if err = dao.CreateEntity(db, FreightTemplate); err != nil { - if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID"); err1 != nil { + if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID", "StoreID", "VendorStoreID"); err1 != nil { globals.SugarLogger.Debugf("db update storeID,vendorStoreID defeat on :%v", err1) errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) } else {