This commit is contained in:
richboo111
2022-11-03 18:01:22 +08:00
parent 3774561b54
commit 1d4b506f38
3 changed files with 42 additions and 50 deletions

View File

@@ -1698,13 +1698,13 @@ func UpdateStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendor
//增加同步到抖店厂商的同步标志 //增加同步到抖店厂商的同步标志
DDFlag := false DDFlag := false
errList := errlist.ErrList{} errList := errlist.ErrList{}
if (valid["deliveryFeeDeductionSill"] != nil || valid["deliveryFeeDeductionFee"] != nil || valid["ybStorePrefix"]) && vendorID == model.VendorIDDD { if (valid["deliveryFeeDeductionSill"] != nil || valid["deliveryFeeDeductionFee"] != nil || valid["ybStorePrefix"] != nil) && vendorID == model.VendorIDDD {
DDFlag = true DDFlag = true
} //特殊处理抖店运费模板、打包费 } //特殊处理抖店运费模板、打包费
if DDFlag { if DDFlag {
globals.SugarLogger.Debug("进入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 { 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)) errList.AddErr(fmt.Errorf("抖店运费模板、起送价、打包费相关处理错误:%v", err))
} }
} }
for _, v := range [][]string{ for _, v := range [][]string{

View File

@@ -20,7 +20,6 @@ import (
"git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/baseapi/utils/errlist" "git.rosy.net.cn/baseapi/utils/errlist"
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler" "git.rosy.net.cn/jx-callback/business/jxcallback/scheduler"
//"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"git.rosy.net.cn/jx-callback/business/jxstore/event" "git.rosy.net.cn/jx-callback/business/jxstore/event"
"git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
@@ -89,9 +88,8 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
errList = errlist.New() errList = errlist.New()
timeStr = "" timeStr = ""
m = make(map[int64]string) m = make(map[int64]string)
a = getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID)
) )
//增加绑定门店操作
a := getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID)
if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 { if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 {
return "", fmt.Errorf("营业时间必填") return "", fmt.Errorf("营业时间必填")
} else { } else {
@@ -203,7 +201,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error
} else { } else {
//电子围栏二次验证 //电子围栏二次验证
if len(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) == 0 || utils.IsNil(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) { //未绑定电子围栏 if len(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) == 0 || utils.IsNil(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) { //未绑定电子围栏
globals.SugarLogger.Debug("进入创建电子围栏=========") globals.SugarLogger.Debug("进入二次创建电子围栏=========")
if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建 if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建
globals.SugarLogger.Debug("门店(%d) 创建电子围栏失败:%v", storeID, err) globals.SugarLogger.Debug("门店(%d) 创建电子围栏失败:%v", storeID, err)
errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err)) errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
@@ -258,7 +256,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error
} }
endErr := errList.GetErrListAsOne() endErr := errList.GetErrListAsOne()
if utils.IsNil(errList) { if utils.IsNil(errList) {
globals.SugarLogger.Debug("绑定门店需进行的错误处理:%v", errors.New(fmt.Sprintf("%s", utils.Format4Output(errList, true)))) globals.SugarLogger.Debug("绑定门店需进行的错误处理:%v", errors.New(fmt.Sprintf("%s", utils.Format4Output(errList, false))))
return endErr return endErr
} else { } else {
return nil return nil
@@ -341,8 +339,6 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
errList.AddErr(fmt.Errorf("获取门店(%d) 电子围栏失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err)) errList.AddErr(fmt.Errorf("获取门店(%d) 电子围栏失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err))
} }
if len(bindWarehouseAndFence) == 0 || (len(bindWarehouseAndFence) != 0 && len(bindWarehouseAndFence[utils.Str2Int64(storeInfo.VendorStoreID)][0].OutFenceIds) == 0) { if len(bindWarehouseAndFence) == 0 || (len(bindWarehouseAndFence) != 0 && len(bindWarehouseAndFence[utils.Str2Int64(storeInfo.VendorStoreID)][0].OutFenceIds) == 0) {
globals.SugarLogger.Debug("")
if fenceID, err := CreateFenceByStore(storeInfo.VendorOrgCode, int64(storeID)); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建 if fenceID, err := CreateFenceByStore(storeInfo.VendorOrgCode, int64(storeID)); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建
globals.SugarLogger.Debug("门店(%d) 创建电子围栏失败:%v", storeID, err) globals.SugarLogger.Debug("门店(%d) 创建电子围栏失败:%v", storeID, err)
errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err)) errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
@@ -417,51 +413,47 @@ func UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int
//默认 运费模板只创建 固定运费模板 //默认 运费模板只创建 固定运费模板
func CreateFreightTemplate(storeCode int) (int64, error) { func CreateFreightTemplate(storeCode int) (int64, error) {
var (
param *freightTemplate_create_request.FreightTemplateCreateParam
)
//获取本地门店信息
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "") storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "")
if err != nil { if err != nil {
return 0, err return 0, err
} }
Template := &freightTemplate_create_request.Template{ param := &freightTemplate_create_request.FreightTemplateCreateParam{
TemplateName: storeDetail.VendorStoreName + "_" + utils.Int2Str(storeCode) + "的运费模板", Template: &freightTemplate_create_request.Template{
ProductProvince: int64(storeDetail.ProvinceCode), TemplateName: storeDetail.VendorStoreName + "(" + utils.Int2Str(storeCode) + ")的运费模板",
ProductCity: int64(storeDetail.CityCode), ProductProvince: int64(storeDetail.ProvinceCode),
CalculateType: 2, //计价方式-1.按重量 2.按数量 ProductCity: int64(storeDetail.CityCode),
TransferType: 1, CalculateType: 2, //计价方式-1.按重量 2.按数量
RuleType: 1, //固定运费&卖家包邮 TransferType: 1,
FixedAmount: 500, //固定运费 单位:分 RuleType: 1, //固定运费&卖家包邮
FixedAmount: 500, //固定运费 单位:分
},
} }
param.Template = Template
if int64(storeDetail.DeliveryFeeDeductionSill) != 0 { if int64(storeDetail.DeliveryFeeDeductionSill) != 0 {
param = &freightTemplate_create_request.FreightTemplateCreateParam{ columns := []freightTemplate_create_request.ColumnsItem{
Columns: []freightTemplate_create_request.ColumnsItem{ {
{ RuleAddress: fmt.Sprintf(`{"%s":{"%s":{"%s":[0]}}}`, utils.Int2Str(storeDetail.ProvinceCode), utils.Int2Str(storeDetail.CityCode)[:2], utils.Int2Str(storeDetail.DistrictCode)[:2]),
RuleAddress: fmt.Sprintf(`{"%s":{"%s":{"%s":[0]}}}`, utils.Int2Str(storeDetail.ProvinceCode), utils.Int2Str(storeDetail.CityCode)[:2], utils.Int2Str(storeDetail.DistrictCode)[:2]), IsOverFree: true, //是否包邮
IsOverFree: true, //是否包邮 IsLimited: false,
IsLimited: false, OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额
OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额 ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{
ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{ {
{ Id: int64(storeDetail.ProvinceCode),
Id: int64(storeDetail.ProvinceCode), Children: []freightTemplate_create_request.ChildrenItem_4{
Children: []freightTemplate_create_request.ChildrenItem_4{ {
{ Id: int64(storeDetail.CityCode),
Id: int64(storeDetail.CityCode), Children: []freightTemplate_create_request.ChildrenItem_5{
Children: []freightTemplate_create_request.ChildrenItem_5{ {
{ Id: int64(storeDetail.DistrictCode),
Id: int64(storeDetail.DistrictCode), Children: []freightTemplate_create_request.ChildrenItem{
Children: []freightTemplate_create_request.ChildrenItem{ {Id: 0},
{Id: 0},
},
}, },
}, },
}, },
}}, },
}, }},
}}, },
} }}
param.Columns = columns
} }
resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param) resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param)
if err != nil { if err != nil {
@@ -471,7 +463,7 @@ func CreateFreightTemplate(storeCode int) (int64, error) {
} }
// /freightTemplate/update 修改运费模板 // /freightTemplate/update 修改运费模板
func UpdateFreightTemplate(vendorStoreCode string, storeCode int) error { func UpdateFreightTemplate(storeCode int) error {
globals.SugarLogger.Debugf("进入UpdateFreightTemplate") globals.SugarLogger.Debugf("进入UpdateFreightTemplate")
var ( var (
columns []freightTemplate_update_request.ColumnsItem columns []freightTemplate_update_request.ColumnsItem
@@ -523,7 +515,7 @@ func UpdateFreightTemplate(vendorStoreCode string, storeCode int) error {
return nil return nil
} }
// /freightTemplate/create 创建运费模板 // /freightTemplate/create 创建运费模板 暂时未使用
func (P *PurchaseHandler) CreateFreightTemplateDirectly(templateInfo freightTemplate_create_request.FreightTemplateCreateParam, storeID, vendorStoreID int64) error { func (P *PurchaseHandler) CreateFreightTemplateDirectly(templateInfo freightTemplate_create_request.FreightTemplateCreateParam, storeID, vendorStoreID int64) error {
var ( var (
db *dao.DaoDB db *dao.DaoDB

View File

@@ -273,7 +273,7 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
} }
} }
} else { } else {
if err := UpdateFreightTemplate(vendorOrgCode, int(storeID)); err != nil { if err := UpdateFreightTemplate(int(storeID)); err != nil {
globals.SugarLogger.Debug("更新运费模板失败:", err) globals.SugarLogger.Debug("更新运费模板失败:", err)
errList.AddErr(fmt.Errorf("更新运费模板失败:%v", err)) errList.AddErr(fmt.Errorf("更新运费模板失败:%v", err))
} }
@@ -294,6 +294,6 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
} }
} }
endErr := errList.GetErrListAsOne() endErr := errList.GetErrListAsOne()
globals.SugarLogger.Debugf("errList===============%s", endErr) globals.SugarLogger.Debugf("endErr===============%s", endErr)
return endErr return endErr
} }