This commit is contained in:
richboo111
2023-03-06 14:11:57 +08:00
parent 370724e725
commit aaa5f5c1f1
3 changed files with 26 additions and 12 deletions

View File

@@ -1706,13 +1706,14 @@ func UpdateStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendor
//增加同步到抖店厂商的同步标志
DDFlag := false
errList := errlist.ErrList{}
if (valid["deliveryFeeDeductionSill"] != nil || valid["deliveryFeeDeductionFee"] != nil || valid["ybStorePrefix"] != nil) && vendorID == model.VendorIDDD {
//deliveryFeeDeductionSill-包邮模板 满x包邮金额 deliveryFeeDeductionFee-打包费 ybStorePrefix-起送价 ybAppID-自动运力设置
if (valid["deliveryFeeDeductionSill"] != nil || valid["deliveryFeeDeductionFee"] != nil || valid["ybStorePrefix"] != nil || valid["ybAppID"] != nil) && vendorID == model.VendorIDDD {
DDFlag = true
} //特殊处理抖店运费模板、打包费
if DDFlag {
globals.SugarLogger.Debug("进入DDFlag 特殊处理运费模板、起送价、打包费")
if err := tiktok_store.SpecialTreat(storeMap.VendorOrgCode, utils.Str2Int64(storeMap.VendorStoreID), int64(storeMap.StoreID), int64(storeMap.DeliveryFeeDeductionFee), utils.Str2Int64(storeMap.YbStorePrefix)); err != nil {
errList.AddErr(fmt.Errorf("抖店运费模板、起送价、打包费相关处理错误:%v", err))
globals.SugarLogger.Debug("进入DDFlag 特殊处理运费模板、起送价、打包费、自动运力设置")
if err := tiktok_store.SpecialTreat(storeMap.VendorOrgCode, utils.Str2Int64(storeMap.VendorStoreID), int64(storeMap.StoreID), int64(storeMap.DeliveryFeeDeductionFee), utils.Str2Int64(storeMap.YbStorePrefix), storeMap.YbAppID); err != nil {
errList.AddErr(fmt.Errorf("抖店运费模板、起送价、打包费、自动运力设置相关处理错误:%v", err))
}
}
for _, v := range [][]string{
@@ -5967,7 +5968,7 @@ func UpdateStoreRelInformation(ctx *jxcontext.Context) error {
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); err1 != 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))
@@ -6045,7 +6046,9 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error
}
}
endStr = tStr1 + "," + tStr2
globals.SugarLogger.Debugf("京西平台没有配送范围的门店ID=%s", endStr)
if len(endStr) > 0 {
globals.SugarLogger.Debugf("京西平台没有配送范围的门店ID=%s", endStr)
}
}
if bindFence, err := tiktok_store.GetWarehouseByStore(k, utils.Str2Int64(i.VendorStoreID)); err == nil && (len(bindFence) > 0 && len(bindFence[i.VendorStoreID][0].OutFenceIds) > 0) {
tempFenceID = bindFence[i.VendorStoreID][0].OutFenceIds[0]
@@ -6062,7 +6065,7 @@ func AssistCreateFence(relInfo map[string][]tiktok_store.RelInfo) (string, error
}
}
}
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
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))

View File

@@ -231,7 +231,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
//5.同步进数据库
FreightTemplate.StoreID = int(storeID)
FreightTemplate.VendorStoreID = utils.Int64ToStr(vendorStoreID)
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
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 {
globals.SugarLogger.Debug("更新操作,同步进数据库错误信息:%v", err1)
//errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
@@ -463,7 +463,7 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
FreightTemplate.FenceID = tempFenceID
FreightTemplate.StoreID = storeID
FreightTemplate.VendorStoreID = storeInfo.VendorStoreID
if err = dao.CreateEntity(db, FreightTemplate); err != nil {
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 {
@@ -679,7 +679,7 @@ func CreateBindFreeShipTemplate(storeID int, shipFee int64) error {
if err := ShopBindStoreFreight(storeDetail.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); err != nil {
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 {

View File

@@ -254,7 +254,7 @@ func GetFence(appOrgCode string, outFenceID []string) ([]warehouse_getFences_res
}
//特殊处理
func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeductionFee, minPrice int64) error {
func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeductionFee, minPrice int64, autoCall string) error {
var (
db *dao.DaoDB
errList = errlist.New()
@@ -276,6 +276,7 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {
errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
} else {
1
FreightTemplate.TemplateID = freightTemplateID
}
}
@@ -308,8 +309,18 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
}
}
}
//4.设置自动运力
if autoCall == tiktok_api.AutoCallRiderOpen {
if err := SetStoreAutoCallRider(vendorOrgCode, tiktok_api.AutoCallRiderOpen, vendorStoreID); err != nil {
errList.AddErr(fmt.Errorf("开启门店自动运力失败:%v", err))
}
} else {
if err := SetStoreAutoCallRider(vendorOrgCode, tiktok_api.AutoCallRiderClose, vendorStoreID); err != nil {
errList.AddErr(fmt.Errorf("关闭门店自动运力失败:%v", err))
}
}
//多次同步数据库,兜底处理
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
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)