From 338fac6086f44e1f6bd27c1929f090d9ff067031 Mon Sep 17 00:00:00 2001 From: richboo111 Date: Fri, 10 Mar 2023 15:34:27 +0800 Subject: [PATCH] 1 --- business/jxstore/cms/store.go | 64 ++++++++++++------- .../partner/purchase/tiktok_store/store.go | 45 ++++++++----- .../purchase/tiktok_store/warehouse.go | 21 +++--- 3 files changed, 81 insertions(+), 49 deletions(-) diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index 997652a4b..6fe82d718 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -5967,13 +5967,18 @@ func UpdateStoreRelInformation(ctx *jxcontext.Context) error { //time.Sleep(2 * time.Second) FreightTemplate.VendorStoreID = utils.Int64ToStr(m) FreightTemplate.StoreID = utils.Str2Int(n) - if _, err := dao.UpdateEntity(db, FreightTemplate, "VendorStoreID", "StoreID", "TemplateID", "WarehouseID", "FenceID", "TradeLimitID"); err != nil { - if err1 := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err1) || err1 != nil { - errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err1)) - } else { - errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err)) + if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("UpdateStoreRelInformation 同步数据库错误信息:%v", err1) } } + //if _, err := dao.UpdateEntity(db, FreightTemplate, "VendorStoreID", "StoreID", "TemplateID", "WarehouseID", "FenceID", "TradeLimitID"); err != nil { + // if err1 := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err1) || err1 != nil { + // errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err1)) + // } else { + // errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err)) + // } + //} } } } @@ -6023,16 +6028,19 @@ 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{} + tempFenceID string + tStr1 = "" + tStr2 = "" + endStr = "" + db = dao.GetDB() + errList = errlist.New() ) for k, v := range relInfo { for _, i := range v { + FreightTemplate := &model.FreightTemplate{ + StoreID: utils.Str2Int(i.StoreID), + VendorStoreID: i.VendorStoreID, + } tempStoreID := utils.Str2Int64(i.StoreID) tempVendorStoreID := utils.Str2Int64(i.VendorStoreID) //预处理门店无配送范围情况 @@ -6054,6 +6062,8 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error tempFenceID = bindFence[i.VendorStoreID][0].OutFenceIds[0] if err1 := tiktok_store.UpdateFenceByStore(k, tempFenceID, i.StoreID); err1 != nil { errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)更新电子围栏失败:%v", i.VendorStoreID, i.StoreID, err1)) + } else { + FreightTemplate.FenceID = tempFenceID } } else { if fenceID, err := tiktok_store.CreateFenceByStore(k, tempStoreID); err != nil { @@ -6061,6 +6071,8 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error if err1 := tiktok_store.BindFenceByStore(k, tempVendorStoreID, []string{i.StoreID}); err1 == nil { if err2 := tiktok_store.UpdateFenceByStore(k, i.StoreID, i.StoreID); err2 != nil { errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)更新电子围栏失败:%v", i.VendorStoreID, i.StoreID, err1)) + } else { + FreightTemplate.FenceID = i.StoreID } } errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)创建电子围栏失败:%v", i.VendorStoreID, i.StoreID, err)) @@ -6068,19 +6080,27 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error } else if len(fenceID) > 0 { if err := tiktok_store.BindFenceByStore(k, tempVendorStoreID, []string{i.StoreID}); err != nil { errList.AddErr(fmt.Errorf("平台门店(%s),门店(%s)绑定电子围栏失败:%v", i.VendorStoreID, i.StoreID, err)) + } else { + FreightTemplate.FenceID = tempFenceID } } } - } - if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { - if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID"); err1 != nil { - globals.SugarLogger.Debugf("db update storeID,vendorStoreID defeat on :%v", err1) - //errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) - } else { - globals.SugarLogger.Debugf("db create storeID,vendorStoreID defeat on :%v", err1) - //errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err)) + if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("同步数据库错误信息:%v", err1) + } } } + + //if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { + // if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID"); err1 != nil { + // globals.SugarLogger.Debugf("db update storeID,vendorStoreID defeat on :%v", err1) + // //errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) + // } else { + // globals.SugarLogger.Debugf("db create storeID,vendorStoreID defeat on :%v", err1) + // //errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err)) + // } + //} } if errList.GetErrListAsOne() != nil { if len(endStr) > 0 { @@ -6141,8 +6161,8 @@ func SetStoreAutoCallRider(vendorOrgCode string, openIDs, closeIDs []int64) (str //操作 freight_template func ReplaceInsertFreight(storeID, templateID, warehouseID, tradeLimitID int, vendorStoreID, fenceID string) error { - //return dao.ReplaceInsertFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID) - return dao.InsertItemFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID) + return dao.ReplaceInsertFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID) + //return dao.InsertItemFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID) } //辅助函数 diff --git a/business/partner/purchase/tiktok_store/store.go b/business/partner/purchase/tiktok_store/store.go index 1d025ffa6..4e94a122d 100644 --- a/business/partner/purchase/tiktok_store/store.go +++ b/business/partner/purchase/tiktok_store/store.go @@ -251,7 +251,9 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee //6.同步进数据库 if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { - globals.SugarLogger.Debug("同步数据库错误信息:%v", err) + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("同步数据库错误信息:%v", err1) + } } //if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { // if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID", "StoreID", "VendorStoreID"); err1 != nil { @@ -378,16 +380,18 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin //同步进数据库 FreightTemplate.FenceID = tempFenceID FreightTemplate.VendorStoreID = storeInfo.VendorStoreID - //if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { - // globals.SugarLogger.Debug("同步数据库错误信息:%v", err) - //} - if err = dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { - if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID", "StoreID", "VendorStoreID"); err1 != nil { - errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) - } else { - errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err)) + if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("同步数据库错误信息:%v", err1) } } + //if err = dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { + // if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID", "StoreID", "VendorStoreID"); err1 != nil { + // errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1)) + // } else { + // errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err)) + // } + //} if endErr := errList.GetErrListAsOne(); endErr != nil { globals.SugarLogger.Debugf("DouDian UpdateStore wrong information:%v", endErr) } @@ -560,9 +564,10 @@ func UpdateFreightTemplate(storeCode int) error { // /freightTemplate/create 批量创建绑定 满x包邮 运费模板 func CreateBindFreeShipTemplate(vendorOrgCode string, storeID int, shipFee int64) error { var ( - db = dao.GetDB() errList = errlist.New() - FreightTemplate = &model.FreightTemplate{} + FreightTemplate = &model.FreightTemplate{ + StoreID: storeID, + } ) if shipFee == 0 { return errors.New("包邮金额必传,请检查") @@ -593,20 +598,26 @@ func CreateBindFreeShipTemplate(vendorOrgCode string, storeID int, shipFee int64 } else { param.Template.ProductCity = int64(storeDetail.CityCode) } - globals.SugarLogger.Debugf("CreateBindFreeShipTemplate param====%s", utils.Format4Output(param, false)) if resp, err := getAPI(vendorOrgCode, 0, "").FreightTemplateCreate(param); err != nil { return errors.New(fmt.Sprintf("平台门店(%s) 京西门店(%d) 创建包邮模板失败:%v,根据提示处理", storeDetail.VendorStoreID, storeID, err)) } else { if err := ShopBindStoreFreight(vendorOrgCode, utils.Str2Int64(storeDetail.VendorStoreID), resp.TemplateId); err != nil { return errors.New(fmt.Sprintf("平台门店(%s) 京西门店(%d) 绑定包邮模板失败:%v,根据提示处理", storeDetail.VendorStoreID, storeID, err)) } else { - if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { - if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID"); err1 != nil { - errList.AddErr(fmt.Errorf("包邮模板:更新操作,同步进数据库错误信息:%v", err1)) - } else { - errList.AddErr(fmt.Errorf("包邮模板:创建操作,同步进数据库错误信息:%v", err)) + FreightTemplate.VendorStoreID = storeDetail.VendorStoreID + FreightTemplate.TemplateID = resp.TemplateId + if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("同步数据库错误信息:%v", err1) } } + //if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { + // if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID"); err1 != nil { + // errList.AddErr(fmt.Errorf("包邮模板:更新操作,同步进数据库错误信息:%v", err1)) + // } else { + // errList.AddErr(fmt.Errorf("包邮模板:创建操作,同步进数据库错误信息:%v", err)) + // } + //} } } if errList.GetErrListAsOne() != nil { diff --git a/business/partner/purchase/tiktok_store/warehouse.go b/business/partner/purchase/tiktok_store/warehouse.go index 39dd0c879..b9dccfe03 100644 --- a/business/partner/purchase/tiktok_store/warehouse.go +++ b/business/partner/purchase/tiktok_store/warehouse.go @@ -261,7 +261,6 @@ func GetFence(appOrgCode string, outFenceID []string) ([]warehouse_getFences_res //特殊处理 func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeductionFee, deliveryFeeDeductionSill, minPrice int64, autoCall string) error { var ( - db *dao.DaoDB errList = errlist.New() FreightTemplate = &model.FreightTemplate{ VendorStoreID: utils.Int64ToStr(vendorStoreID), @@ -324,17 +323,19 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc } } //多次同步数据库,兜底处理 - //if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { - // globals.SugarLogger.Debug("同步数据库错误信息:%v", err) - //} - if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { - _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "TradeLimitID") - if err1 != nil { - globals.SugarLogger.Debugf("更新起送价限售模板,更新进数据库错误信息:%v", err1) - } else { - globals.SugarLogger.Debugf("更新起送价限售模板,创建进数据库错误信息:%v", err) + if err := dao.ReplaceInsertFreight(FreightTemplate); err != nil { + if err1 := dao.InsertItemFreight(FreightTemplate); err1 != nil { + globals.SugarLogger.Debug("同步数据库错误信息:%v", err1) } } + //if err := dao.CreateEntity(db, FreightTemplate); dao.IsDuplicateError(err) || err != nil { + // _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "TradeLimitID") + // if err1 != nil { + // globals.SugarLogger.Debugf("更新起送价限售模板,更新进数据库错误信息:%v", err1) + // } else { + // globals.SugarLogger.Debugf("更新起送价限售模板,创建进数据库错误信息:%v", err) + // } + //} endErr := errList.GetErrListAsOne() return endErr }