diff --git a/business/partner/purchase/tiktok_store/store.go b/business/partner/purchase/tiktok_store/store.go index 7832cefb3..4853ca113 100644 --- a/business/partner/purchase/tiktok_store/store.go +++ b/business/partner/purchase/tiktok_store/store.go @@ -174,7 +174,7 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error } if len(bindWarehouseAndFence) == 0 || utils.IsNil(bindWarehouseAndFence) { //未绑定仓库以及电子围栏 //(1)创建仓库 - warehouseID, err := CreateWarehouse(vendorOrgCode, utils.Int64ToStr(storeID)) + warehouseID, err := CreateWarehouse(vendorOrgCode, storeID) if err != nil || warehouseID == 0 || utils.IsNil(warehouseID) { globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err) errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err)) @@ -332,7 +332,7 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin errList.AddErr(err3) } //获取电子围栏 - bindWarehouseAndFence, err := GetWarehouseByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID)) + bindWarehouseAndFence, err := GetWarehouseByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID)) //todo 此接口暂时有问题 if err != nil { errList.AddErr(fmt.Errorf("获取门店(%d) 电子围栏失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err)) } @@ -417,7 +417,7 @@ func CreateFreightTemplate(storeCode int) (int64, error) { } param := &freightTemplate_create_request.FreightTemplateCreateParam{ Template: &freightTemplate_create_request.Template{ - TemplateName: storeDetail.Name + utils.Int2Str(storeCode), + TemplateName: storeDetail.VendorStoreName + "(" + utils.Int2Str(storeCode) + ")_", ProductProvince: utils.Str2Int64(utils.Int2Str(storeDetail.ProvinceCode)[:2]), ProductCity: int64(storeDetail.CityCode), CalculateType: 2, //计价方式-1.按重量 2.按数量 @@ -427,6 +427,7 @@ func CreateFreightTemplate(storeCode int) (int64, error) { }, } if int64(storeDetail.DeliveryFeeDeductionSill) != 0 { + param.Template.TemplateName += "满减包邮模板" columns := []freightTemplate_create_request.ColumnsItem{ { IsOverFree: true, //是否包邮 @@ -451,10 +452,11 @@ func CreateFreightTemplate(storeCode int) (int64, error) { }, }} param.Columns = columns - param.Template.TemplateName += storeDetail.Tel1 + "满减包邮模板" } else { - param.Template.TemplateName += storeDetail.Tel1 + "固定运费模板" + param.Columns = nil + param.Template.TemplateName += "固定运费模板" } + globals.SugarLogger.Debugf("param.Template.TemplateName===============%s", param.Template.TemplateName) resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param) if err != nil { return 0, err @@ -465,47 +467,43 @@ func CreateFreightTemplate(storeCode int) (int64, error) { // /freightTemplate/update 修改运费模板 func UpdateFreightTemplate(storeCode int) error { globals.SugarLogger.Debugf("进入UpdateFreightTemplate") - var ( - columns []freightTemplate_update_request.ColumnsItem - //param *freightTemplate_update_request.FreightTemplateUpdateParam - ) //获取本地门店信息 storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "") if err != nil { return errors.New(fmt.Sprintf("获取本地门店信息失败:%v", err)) } - globals.SugarLogger.Debugf("ProvinceCode= %s,CityCode= %s,DistrictCode= %s", utils.Int2Str(storeDetail.ProvinceCode), utils.Int2Str(storeDetail.CityCode)[:2], utils.Int2Str(storeDetail.DistrictCode)[:2]) - globals.SugarLogger.Debugf("after ProvinceCode= %s,CityCode= %s,DistrictCode= %s", utils.Int2Str(storeDetail.ProvinceCode), utils.Int2Str(storeDetail.CityCode), utils.Int2Str(storeDetail.DistrictCode)) //获取绑定的运费模板信息 bindTemplate, err := GetStoreFreight(storeDetail.VendorOrgCode, utils.Str2Int64(storeDetail.VendorStoreID)) if err != nil || bindTemplate == 0 { return errors.New(fmt.Sprintf("获取门店绑定运费模板失败:%v,请先创建运费模板", err)) } else { - globals.SugarLogger.Debugf("storeDetail.DeliveryFeeDeductionSill===============%d", storeDetail.DeliveryFeeDeductionSill) - Template := &freightTemplate_update_request.Template{ - Id: bindTemplate, - TemplateName: storeDetail.VendorStoreName + "_" + utils.Int2Str(storeCode) + "的运费模板", - ProductProvince: int64(storeDetail.ProvinceCode), - ProductCity: int64(storeDetail.CityCode), - CalculateType: 2, //计价方式-1.按重量 2.按数量 - TransferType: 1, - RuleType: 1, //固定运费 - FixedAmount: 500, //固定运费 单位:分 + param := &freightTemplate_update_request.FreightTemplateUpdateParam{ + Template: &freightTemplate_update_request.Template{ + Id: bindTemplate, + TemplateName: storeDetail.VendorStoreName + "(" + utils.Int2Str(storeCode) + ")_", + ProductProvince: int64(storeDetail.ProvinceCode), + ProductCity: int64(storeDetail.CityCode), + CalculateType: 2, //计价方式-1.按重量 2.按数量 + TransferType: 1, + RuleType: 1, //固定运费 + FixedAmount: 500, //固定运费 单位:分 + }, } - if int64(storeDetail.DeliveryFeeDeductionSill) != 0 { //包邮规则不支持全量四级地址 - columns = []freightTemplate_update_request.ColumnsItem{ + if int64(storeDetail.DeliveryFeeDeductionSill) != 0 { + param.Template.TemplateName += "满减包邮模板" + columns := []freightTemplate_update_request.ColumnsItem{ { IsOverFree: true, //是否包邮 IsDefault: 0, IsLimited: false, OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额 }} - globals.SugarLogger.Debugf("columns[0].OverAmount===========%d", columns[0].OverAmount) - } - param := &freightTemplate_update_request.FreightTemplateUpdateParam{ - Template: Template, - Columns: columns, + param.Columns = columns + } else { + param.Columns = nil + param.Template.TemplateName += "固定运费模板" } + globals.SugarLogger.Debugf("param.Template.TemplateName=============%s", param.Template.TemplateName) _, err = getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateUpdate(param) if err != nil { globals.SugarLogger.Debugf("err==================%v", err) diff --git a/business/partner/purchase/tiktok_store/warehouse.go b/business/partner/purchase/tiktok_store/warehouse.go index 080303178..ba32a55c7 100644 --- a/business/partner/purchase/tiktok_store/warehouse.go +++ b/business/partner/purchase/tiktok_store/warehouse.go @@ -26,18 +26,30 @@ const ( ) // /warehouse/create 创建单个区域仓 -func CreateWarehouse(appOrgCode, outWarehouseID string) (warehouseID int64, err error) { - tempName := "京西菜市(" + outWarehouseID + ") 的区域仓" - req := &warehouse_create_request.WarehouseCreateParam{ - OutWarehouseId: outWarehouseID, - Name: tempName, - Intro: "", - } - resp, err := getAPI(appOrgCode, 0, "").CreateWarehouse(req) +func CreateWarehouse(appOrgCode string, storeID int64) (warehouseID int64, err error) { + storeDetail, err := dao.GetStoreDetail(dao.GetDB(), int(storeID), 0, "") if err != nil { - return 0, err + return 0, fmt.Errorf("获取门店本地信息失败:%v", err) } - return resp.Data, err + param := &warehouse_create_request.WarehouseCreateParam{ + OutWarehouseId: utils.Int64ToStr(storeID), //本地storeID绑定 + Name: "京西菜市_" + storeDetail.Name + "_" + utils.Int64ToStr(storeID) + "_区域仓", + Intro: "", + Warehouse: &warehouse_create_request.Warehouse{ + WarehouseLocation: &warehouse_create_request.WarehouseLocation{ + AddressId1: utils.Str2Int64(utils.Int2Str(storeDetail.ProvinceCode)[:2]), + AddressId2: int64(storeDetail.CityCode), + AddressId3: int64(storeDetail.DistrictCode), + AddressId4: 0, + }, + AddressDetail: storeDetail.Address, + }, + } + resp, err := getAPI(appOrgCode, 0, "").CreateWarehouse(param) + if err != nil { + return 0, fmt.Errorf("创建单个区域仓失败:%v", err) + } + return resp.Data, nil } // /warehouse/createBatch 批量创建区域仓