This commit is contained in:
richboo111
2022-11-22 16:03:19 +08:00
parent fae0091a85
commit 706e29a429
3 changed files with 34 additions and 28 deletions

View File

@@ -6016,7 +6016,7 @@ func GetVendorOrgCode(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID i
}
//批量辅助创建电子围栏
func AssistCreateFence(relInfo map[string]map[string]string) (string, error) {
func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error) {
var (
db = dao.GetDB()
FreightTemplate = &model.FreightTemplate{}
@@ -6024,12 +6024,12 @@ func AssistCreateFence(relInfo map[string]map[string]string) (string, error) {
errList := errlist.New()
globals.SugarLogger.Debugf("进入AssistCreateFence")
for k, v := range relInfo {
for i, j := range v {
if fenceID, err := tiktok_store.CreateFenceByStore(k, utils.Str2Int64(i)); err != nil {
errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s) 创建电子围栏失败:%v", j, i, err))
for _, i := range v {
if fenceID, err := tiktok_store.CreateFenceByStore(k, utils.Str2Int64(i.StoreID)); err != nil {
errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s) 创建电子围栏失败:%v", i.VendorStoreID, i.StoreID, err))
} else {
if err := tiktok_store.BindFenceByStore(k, utils.Str2Int64(j), []string{fenceID}); err != nil {
errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)绑定电子围栏失败:%v", j, i, err))
if err := tiktok_store.BindFenceByStore(k, utils.Str2Int64(i.VendorStoreID), []string{fenceID}); err != nil {
errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)绑定电子围栏失败:%v", i.VendorStoreID, i.StoreID, err))
}
}
}
@@ -6043,6 +6043,7 @@ func AssistCreateFence(relInfo map[string]map[string]string) (string, error) {
}
}
if errList.GetErrListAsOne() != nil {
globals.SugarLogger.Debugf("errList.GetErrListAsOne()===========%v", errList.GetErrListAsOne())
return fmt.Sprintf("批量创建电子围栏错误,请根据提示处理:%v", errList.GetErrListAsOne()), nil
}
return "", nil

View File

@@ -194,7 +194,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
if err != nil || len(warehouseID) == 0 || utils.IsNil(warehouseID) {
globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err))
} else { //绑定
} else { //绑定
if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
globals.SugarLogger.Debugf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err)
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err))
@@ -318,7 +318,7 @@ func CreateAndBindAllV2(vendorOrgCode string, storeID, vendorStoreID, deliveryFe
if err != nil || len(warehouseID) == 0 || utils.IsNil(warehouseID) {
globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err))
} else { //绑定
} else { //绑定
if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
globals.SugarLogger.Debugf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err)
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err))
@@ -1099,6 +1099,10 @@ func (p *PurchaseHandler) GetSkus(ctx *jxcontext.Context, vendorOrgCode string,
}
//以下为辅助函数
type RelInfo struct {
StoreID string
VendorStoreID string
}
func ToMap(actual interface{}) (map[string]string, error) {
var res []string

View File

@@ -1520,27 +1520,28 @@ func (c *StoreController) GetDDScope() {
func (c *StoreController) CreateDDStoreFence() {
c.callCreateDDStoreFence(func(params *tStoreCreateDDStoreFenceParams) (retVal interface{}, errCode string, err error) {
globals.SugarLogger.Debugf("进入callCreateDDStoreFence")
payload := make(map[string]interface{})
info := make(map[string]map[string]string)
payload := make(map[string][]tiktok_store.RelInfo)
//info := make(map[string]map[string]string)
if err := utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil {
for i, j := range payload {
if temp, err := tiktok_store.ToMap(j); err != nil {
globals.SugarLogger.Debugf("tomap err==============%v", err)
return nil, "", err
} else {
for k, v := range temp {
info[i] = map[string]string{k: v}
}
}
}
if len(info) > 0 {
for _, i := range info {
for k, v := range i {
globals.SugarLogger.Debugf("preTest info k=%s,v=%s", k, v)
}
}
}
retVal, err = cms.AssistCreateFence(info)
retVal, err = cms.AssistCreateFence(payload)
//for i, j := range payload {
// if temp, err := tiktok_store.ToMap(j); err != nil {
// globals.SugarLogger.Debugf("tomap err==============%v", err)
// return nil, "", err
// } else {
// for k, v := range temp {
// info[i] = map[string]string{k: v}
// }
// }
//}
//if len(info) > 0 {
// for _, i := range info {
// for k, v := range i {
// globals.SugarLogger.Debugf("preTest info k=%s,v=%s", k, v)
// }
// }
//}
//retVal, err = cms.AssistCreateFence(info)
}
return retVal, "", err
})