门店审核状态,增加电子围栏限制

This commit is contained in:
richboo111
2022-12-02 16:21:11 +08:00
parent ba30ec2ed5
commit c8c33d38c1
2 changed files with 31 additions and 4 deletions

View File

@@ -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
}

View File

@@ -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 {