This commit is contained in:
richboo111
2023-03-07 15:01:36 +08:00
parent 2fce73dd58
commit 06d2f62084
7 changed files with 162 additions and 176 deletions

View File

@@ -1527,7 +1527,7 @@ func AddStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, vendorID int, vend
return nil, fmt.Errorf("此平台门店ID已在京西有绑定请先解除绑定平台门店ID :[%v]", storeMap.VendorStoreID)
}
if vendorID == model.VendorIDDD { //抖店绑定店铺时 检查并补充创建
if err2 := tiktok_store.CreateOrUpdateAll(vendorOrgCode, int64(storeMap.StoreID), utils.Str2Int64(storeMap.VendorStoreID), int64(storeMap.DeliveryFeeDeductionFee), utils.Str2Int64(storeMap.YbStorePrefix)); err2 != nil {
if err2 := tiktok_store.CreateOrUpdateAll(vendorOrgCode, int64(storeMap.StoreID), utils.Str2Int64(storeMap.VendorStoreID), int64(storeMap.DeliveryFeeDeductionFee), int64(storeMap.DeliveryFeeDeductionSill), utils.Str2Int64(storeMap.YbStorePrefix), storeMap.YbAppID); err2 != nil {
errList.AddErr(err2)
}
}
@@ -1712,7 +1712,7 @@ func UpdateStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendor
} //特殊处理抖店运费模板、打包费
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), storeMap.YbAppID); err != nil {
if err := tiktok_store.SpecialTreat(storeMap.VendorOrgCode, utils.Str2Int64(storeMap.VendorStoreID), int64(storeMap.StoreID), int64(storeMap.DeliveryFeeDeductionFee), int64(storeMap.DeliveryFeeDeductionSill), utils.Str2Int64(storeMap.YbStorePrefix), storeMap.YbAppID); err != nil {
errList.AddErr(fmt.Errorf("抖店运费模板、起送价、打包费、自动运力设置相关处理错误:%v", err))
}
}
@@ -6132,6 +6132,11 @@ func SetStoreAutoCallRider(vendorOrgCode string, openIDs, closeIDs []int64) (str
return "", nil
}
//操作 freight_template
func ReplaceInsertFreight(storeID, templateID, warehouseID, tradeLimitID int, vendorStoreID, fenceID string) error {
return dao.ReplaceInsertFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID)
}
//辅助函数
func String2ArrayInt64(data string) (retVal []int64) {
temp := strings.Split(data, ",")

View File

@@ -0,0 +1,32 @@
package dao
import (
"fmt"
"git.rosy.net.cn/jx-callback/business/model"
)
func ReplaceInsertFreight2(storeID, templateID, warehouseID, tradeLimitID int, vendorStoreID, fenceID string) error {
if storeID == 0 || len(vendorStoreID) == 0 {
return fmt.Errorf("storeID或vendorStoreID不允许为空")
}
sqlStr := `REPLACE INTO freight_template (store_id, vendor_store_id, template_id, warehouse_id, fence_id, trade_limit_id)
SELECT ?,?,?,?,?,? FROM DUAL WHERE NOT EXISTS(SELECT COUNT(store_id) FROM freight_template WHERE store_id = ?)=0`
sqlParam := []interface{}{storeID, vendorStoreID, templateID, warehouseID, fenceID, tradeLimitID, storeID}
_, err := ExecuteSQL(GetDB(), sqlStr, sqlParam)
return err
}
func ReplaceInsertFreight(tem *model.FreightTemplate) error {
if tem.StoreID == 0 || len(tem.VendorStoreID) == 0 {
return fmt.Errorf("storeID或vendorStoreID不允许为空")
}
sqlStr := `REPLACE INTO freight_template (store_id, vendor_store_id, template_id, warehouse_id, fence_id, trade_limit_id)
SELECT ?,?,?,?,?,? FROM DUAL WHERE NOT EXISTS(SELECT COUNT(store_id) FROM freight_template WHERE store_id = ?)=0`
sqlParam := []interface{}{tem.StoreID, tem.VendorStoreID, tem.TemplateID, tem.WarehouseID, tem.FenceID, tem.TradeLimitID, tem.StoreID}
_, err := ExecuteSQL(GetDB(), sqlStr, sqlParam)
return err
}
func InsertItemFreight() {
}

View File

@@ -143,7 +143,7 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
errList.AddErr(dao.CreateEntity(db, storeMap))
}
vendorStoreIDs = utils.Int64ToStr(resp.ResultList[0].Store.StoreId)
if err := CreateOrUpdateAll(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), resp.ResultList[0].Store.StoreId, int64(storeDetail.DeliveryFeeDeductionFee), utils.Str2Int64(storeDetail.YbStorePrefix)); err != nil {
if err := CreateOrUpdateAll(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), resp.ResultList[0].Store.StoreId, int64(storeDetail.DeliveryFeeDeductionFee), int64(storeMap.DeliveryFeeDeductionSill), utils.Str2Int64(storeDetail.YbStorePrefix), storeDetail.YbAppID); err != nil {
errList.AddErr(err)
}
}
@@ -151,20 +151,22 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
return vendorStoreIDs, errors.New(fmt.Sprintf("创建抖店平台店铺相关错误信息:%v", endErr))
}
func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFeeDeductionFee, minPrice int64) error {
func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFeeDeductionFee, deliveryFeeDeductionSill, minPrice int64, autoCall string) error {
var (
errList = errlist.New()
FreightTemplate = &model.FreightTemplate{}
db *dao.DaoDB
FreightTemplate = &model.FreightTemplate{
StoreID: int(storeID),
VendorStoreID: utils.Int64ToStr(vendorStoreID),
}
)
//检查门店是否审核通过
if IfAuditPass(vendorOrgCode, vendorStoreID) {
return fmt.Errorf("门店%d 未审核通过,请通过后再进行绑定", storeID)
}
//1.平台获取门店运费模板
//1.运费模板
if bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID); err != nil || bindFreightIDs == 0 { //1未查询到绑定信息不算错误
//创建
if freightTemplateID, err := CreateFreightTemplate(int(storeID)); err != nil || freightTemplateID == 0 || utils.IsNil(freightTemplateID) {
if freightTemplateID, err := CreateFreightTemplate(int(storeID), int(deliveryFeeDeductionSill)); err != nil || freightTemplateID == 0 {
errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
} else { //绑定
if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {
@@ -174,6 +176,10 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
}
}
} else {
if err := UpdateFreightTemplate(int(storeID)); err != nil {
globals.SugarLogger.Debug("更新运费模板失败:", err)
errList.AddErr(fmt.Errorf("更新运费模板失败:%v", err))
}
FreightTemplate.TemplateID = bindFreightIDs
}
@@ -196,6 +202,10 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
}
//(2)电子围栏
if len(bind[utils.Int64ToStr(storeID)][0].OutFenceIds) > 0 {
tempFenceID := bind[utils.Int64ToStr(storeID)][0].OutFenceIds[0]
if err1 := UpdateFenceByStore(vendorOrgCode, tempFenceID, int(vendorStoreID)); err1 != nil {
errList.AddErr(fmt.Errorf("平台门店(%d),门店(%d)更新电子围栏失败:%v", vendorStoreID, storeID, err1))
}
FreightTemplate.FenceID = bind[utils.Int64ToStr(storeID)][0].OutFenceIds[0] //保存一个就足够
} else {
if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || len(fenceID) == 0 {
@@ -228,135 +238,39 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
if err := SetStorePackageFee(vendorOrgCode, vendorStoreID, deliveryFeeDeductionFee); err != nil {
errList.AddErr(fmt.Errorf("设置门店打包费失败:%v", err))
}
//5.同步进数据库
FreightTemplate.StoreID = int(storeID)
FreightTemplate.VendorStoreID = utils.Int64ToStr(vendorStoreID)
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))
} else {
globals.SugarLogger.Debug("创建操作,同步进数据库错误信息:%v", err)
//errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err))
//5.设置自动运力
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))
}
}
//6.同步进数据库
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, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID", "StoreID", "VendorStoreID"); err1 != nil {
// globals.SugarLogger.Debug("更新操作,同步进数据库错误信息:%v", err1)
// //errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
// } else {
// globals.SugarLogger.Debug("创建操作,同步进数据库错误信息:%v", err)
// //errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err))
// }
//}
endErr := errList.GetErrListAsOne()
if endErr != nil {
globals.SugarLogger.Debug("绑定门店需进行的错误处理:%v", errors.New(fmt.Sprintf("%s", utils.Format4Output(errList, false))))
globals.SugarLogger.Debug("绑定抖音门店需进行的错误处理:%v", errors.New(fmt.Sprintf("%s", utils.Format4Output(errList, false))))
return endErr
} else {
return nil
}
}
//逻辑未修改,暂时不使用
//func CreateAndBindAllV2(vendorOrgCode string, storeID, vendorStoreID, deliveryFeeDeductionFee, minPrice int64) error {
// var (
// db *dao.DaoDB
// ctx *jxcontext.Context
// errList = errlist.New()
// FreightTemplate = &model.FreightTemplate{
// VendorStoreID: utils.Int64ToStr(vendorStoreID),
// StoreID: int(storeID),
// }
// )
// task := tasksch.NewParallelTask("CreateAndBindAllV2", tasksch.NewParallelConfig().SetIsContinueWhenError(true).SetParallelCount(1), ctx,
// func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// step := batchItemList[0].(int)
// switch step {
// case 0: //1.门店运费模板
// bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID)
// if err != nil {
// globals.SugarLogger.Debugf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err)
// errList.AddErr(fmt.Errorf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err))
// }
// if bindFreightIDs == 0 {
// if freightTemplateID, err := CreateFreightTemplate(int(storeID)); err != nil || freightTemplateID == 0 || utils.IsNil(freightTemplateID) {
// globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
// errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
// } else {
// if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {
// globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
// errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
// } else {
// FreightTemplate.TemplateID = freightTemplateID
// }
// }
// } else {
// FreightTemplate.TemplateID = bindFreightIDs
// }
// case 1: //2.仓库以及电子围栏
// warehouseID, err := CreateWarehouse(vendorOrgCode, storeID)
// if err != nil || warehouseID == 0 {
// globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
// errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err))
// } 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))
// } else {
// FreightTemplate.WarehouseID = utils.Str2Int64(warehouseID)
// }
// }
// case 2: //3.电子围栏
// fenceID, err := CreateFenceByStore(vendorOrgCode, storeID)
// if err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //不管存在与否 直接创建
// globals.SugarLogger.Debugf("门店(%d) 创建电子围栏失败:%v", storeID, err)
// errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
// } else { //绑定
// if err := BindFenceByStore(vendorOrgCode, vendorStoreID, []string{utils.Int64ToStr(storeID)}); err != nil {
// globals.SugarLogger.Debugf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
// errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
// } else {
// FreightTemplate.FenceID = utils.Int64ToStr(storeID)
// }
// }
// case 3: //4.限售模板
// bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID)
// if err != nil {
// globals.SugarLogger.Debugf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err)
// errList.AddErr(fmt.Errorf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err))
// }
// if bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //未绑定限售模板,目前默认创建起送价限售模板
// if createSaleLimitID, err := CreateAndBindMinPriceTemplate(vendorOrgCode, vendorStoreID, minPrice); err != nil {
// errList.AddErr(fmt.Errorf("设置门店起送价限售模板失败:%v", err))
// } else {
// FreightTemplate.TradeLimitID = createSaleLimitID
// }
// } else {
// if updateSaleLimitID, err := UpdateTradeLimitTemplate(vendorOrgCode, bindSaleLimitID, minPrice); err != nil {
// errList.AddErr(fmt.Errorf("更新门店起送价限售模板失败:%v", err))
// } else {
// FreightTemplate.TradeLimitID = updateSaleLimitID
// }
// }
// case 4: //5.门店打包费 默认为 0
// if err := SetStorePackageFee(vendorOrgCode, vendorStoreID, deliveryFeeDeductionFee); err != nil {
// errList.AddErr(fmt.Errorf("设置门店打包费失败:%v", err))
// }
// }
// return nil, err
// }, []int{0, 1, 2, 3, 4})
// tasksch.ManageTask(task).Run()
// //6.同步进数据库
// globals.SugarLogger.Debugf("preTest TradeLimitID==%d,TemplateID==%d, WarehouseID==%d,FenceID==%s", FreightTemplate.TradeLimitID, FreightTemplate.TemplateID, FreightTemplate.WarehouseID, FreightTemplate.FenceID)
// if err := dao.CreateEntity(db, FreightTemplate); err != nil {
// _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID")
// if err1 == nil {
// errList.AddErr(fmt.Errorf("同步Step1进数据库错误信息:%v", err))
// } else {
// errList.AddErr(fmt.Errorf("同步Step2进数据库错误信息:%v", err1))
// }
// }
// endErr := errList.GetErrListAsOne()
// if utils.IsNil(errList) {
// globals.SugarLogger.Debug("绑定门店需进行的错误处理:%v", endErr)
// return endErr
// } else {
// return nil
// }
//}
// shop/editStore 编辑门店信息 正向推送平台
func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName string) (err error) {
var (
@@ -366,7 +280,10 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
errList = errlist.New()
timeStr = ""
tempFenceID string
FreightTemplate = &model.FreightTemplate{}
FreightTemplate = &model.FreightTemplate{
StoreID: storeID,
VendorStoreID: storeInfo.VendorStoreID,
}
)
if db == nil {
db = dao.GetDB()
@@ -461,20 +378,20 @@ 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); 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 {
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 endErr := errList.GetErrListAsOne(); endErr != nil {
globals.SugarLogger.Debugf("DouDian UpdateStore wrong information:%v", endErr)
}
return nil
//return errors.New(fmt.Sprintf("更新抖店平台店铺信息,相关处理错误:%v", endErr))
}
}
@@ -512,7 +429,7 @@ func UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int
}
//默认 运费模板只创建 固定运费模板
func CreateFreightTemplate(storeCode int) (int64, error) {
func CreateFreightTemplate(storeCode, deliveryFeeDeductionSill int) (int64, error) {
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "")
if err != nil {
return 0, err
@@ -527,24 +444,11 @@ func CreateFreightTemplate(storeCode int) (int64, error) {
FixedAmount: 500, //固定运费 单位:分
},
}
if int64(storeDetail.DeliveryFeeDeductionSill) != 0 {
param.Template.TemplateName += "满减包邮模板"
columns := []freightTemplate_create_request.ColumnsItem{
{
IsOverFree: true, //是否包邮
IsLimited: false,
OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额
}}
param.Columns = columns
} else {
param.Columns = nil
param.Template.TemplateName += "固定运费模板"
}
//直辖市特殊处理
if HandleMunicipality(storeDetail.CityName) {
param.Template.ProductCity = int64(storeDetail.ProvinceCode)
param.Columns[0].ProvinceInfos = []freightTemplate_create_request.ProvinceInfosItem{
{
param.Columns = []freightTemplate_create_request.ColumnsItem{{
ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{{
Id: utils.Str2Int64(utils.Int2Str(storeDetail.ProvinceCode)[:2]),
Children: []freightTemplate_create_request.ChildrenItem_4{
{
@@ -559,27 +463,42 @@ func CreateFreightTemplate(storeCode int) (int64, error) {
},
},
}},
}},
}
} else {
param.Template.ProductCity = int64(storeDetail.CityCode)
param.Columns[0].ProvinceInfos = []freightTemplate_create_request.ProvinceInfosItem{
{
Id: utils.Str2Int64(utils.Int2Str(storeDetail.ProvinceCode)[:2]),
Children: []freightTemplate_create_request.ChildrenItem_4{
{
Id: int64(storeDetail.CityCode),
Children: []freightTemplate_create_request.ChildrenItem_5{
{
Id: int64(storeDetail.DistrictCode),
//Children: []freightTemplate_create_request.ChildrenItem{
// {Id: 0},
//},
param.Columns = []freightTemplate_create_request.ColumnsItem{{
ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{
{
Id: utils.Str2Int64(utils.Int2Str(storeDetail.ProvinceCode)[:2]),
Children: []freightTemplate_create_request.ChildrenItem_4{
{
Id: int64(storeDetail.CityCode),
Children: []freightTemplate_create_request.ChildrenItem_5{
{
Id: int64(storeDetail.DistrictCode),
//Children: []freightTemplate_create_request.ChildrenItem{
// {Id: 0},
//},
},
},
},
},
}},
}},
},
},
}
}
if deliveryFeeDeductionSill != 0 {
param.Template.TemplateName += "满减包邮模板"
param.Columns = []freightTemplate_create_request.ColumnsItem{{
IsOverFree: true, //是否包邮
IsLimited: false,
OverAmount: int64(deliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额
}}
} else {
//param.Columns = nil
param.Template.TemplateName += "固定运费模板"
}
if resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param); err != nil {
return 0, err
} else {

View File

@@ -7,7 +7,7 @@ import (
//创建运费模板
func TestCreateFreight(t *testing.T) {
data, err := CreateFreightTemplate(668504)
data, err := CreateFreightTemplate(668787)
fmt.Println(data)
fmt.Println(err)
}

View File

@@ -254,7 +254,7 @@ func GetFence(appOrgCode string, outFenceID []string) ([]warehouse_getFences_res
}
//特殊处理
func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeductionFee, minPrice int64, autoCall string) error {
func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeductionFee, deliveryFeeDeductionSill, minPrice int64, autoCall string) error {
var (
db *dao.DaoDB
errList = errlist.New()
@@ -264,13 +264,14 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
}
)
//1.运费模板
bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID)
if err != nil {
globals.SugarLogger.Debug("获取门店(%d) 绑定运费模板出错:", vendorStoreID, err)
//errList.AddErr(fmt.Errorf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err))
}
if bindFreightIDs == 0 { //1未查询到绑定信息不算错误
if freightTemplateID, err := CreateFreightTemplate(int(storeID)); err != nil || freightTemplateID == 0 {
//bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID)
//if err != nil {
// globals.SugarLogger.Debug("获取门店(%d) 绑定运费模板出错:", vendorStoreID, err)
// //errList.AddErr(fmt.Errorf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err))
//}
if true {
//if bindFreightIDs == 0 { //1未查询到绑定信息不算错误
if freightTemplateID, err := CreateFreightTemplate(int(storeID), int(deliveryFeeDeductionSill)); err != nil || freightTemplateID == 0 {
errList.AddErr(fmt.Errorf("创建运费模板失败:%v", err))
} else { //绑定
if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {

View File

@@ -2,6 +2,7 @@ package controllers
import (
"errors"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"git.rosy.net.cn/jx-callback/business/jxstore/common"
@@ -1618,3 +1619,22 @@ func (c *StoreController) BindJxPrinter() {
})
}
// @Title 测试操作freight_template
// @Description 测试操作freight_template
// @Param token header string true "认证token"
// @Param storeID formData int true "京西门店id"
// @Param vendorStoreID formData string false "抖音平台id"
// @Param templateID formData int false "运费模板id"
// @Param warehouseID formData int false "仓库id"
// @Param fenceID formData string false "电子围栏id"
// @Param tradeLimitID formData int false "限售模板id"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /ReplaceInsertFreight [post]
func (c *StoreController) ReplaceInsertFreight() {
c.callReplaceInsertFreight(func(params *tStoreReplaceInsertFreightParams) (interface{}, string, error) {
err := cms.ReplaceInsertFreight(params.StoreID, params.TemplateID, params.WarehouseID, params.TradeLimitID, params.VendorStoreID, params.FenceID)
return nil, "", err
})
}

View File

@@ -3027,6 +3027,15 @@ func init() {
MethodParams: param.Make(),
Filters: nil,
Params: nil})
//测试用-ysq
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
web.ControllerComments{
Method: "ReplaceInsertFreight",
Router: `/ReplaceInsertFreight`,
AllowHTTPMethods: []string{"post"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreSkuController"],
web.ControllerComments{