1
This commit is contained in:
@@ -179,57 +179,45 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
|
|||||||
}
|
}
|
||||||
|
|
||||||
//2.平台获取仓库信息以及电子围栏id
|
//2.平台获取仓库信息以及电子围栏id
|
||||||
//bindWarehouseAndFence, err := GetWarehouseByStore(vendorOrgCode, vendorStoreID)
|
if bind, err := GetWarehouseByStore(vendorOrgCode, vendorStoreID); err != nil {
|
||||||
//if err != nil {
|
globals.SugarLogger.Debugf("获取门店(%d) 绑定仓库信息以及电子围栏出错:%v", vendorStoreID, err)
|
||||||
// globals.SugarLogger.Debugf("获取门店(%d) 绑定仓库信息以及电子围栏出错:%v", vendorStoreID, err)
|
errList.AddErr(fmt.Errorf("获取门店(%d) 绑定仓库信息以及电子围栏出错:%v", vendorStoreID, err))
|
||||||
// errList.AddErr(fmt.Errorf("获取门店(%d) 绑定仓库信息以及电子围栏出错:%v", vendorStoreID, err))
|
} else {
|
||||||
//}
|
//(1)仓库
|
||||||
//if len(bindWarehouseAndFence) == 0 || utils.IsNil(bindWarehouseAndFence) { //未绑定仓库以及电子围栏
|
if bind[utils.Int64ToStr(storeID)][0].WarehouseId > 0 {
|
||||||
//(1)创建仓库
|
FreightTemplate.WarehouseID = bind[utils.Int64ToStr(storeID)][0].WarehouseId
|
||||||
warehouseID, err := CreateWarehouse(vendorOrgCode, storeID)
|
} else {
|
||||||
if err != nil || len(warehouseID) == 0 || utils.IsNil(warehouseID) {
|
if warehouseID, err := CreateWarehouse(vendorOrgCode, storeID); err != nil || warehouseID == 0 {
|
||||||
globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
|
globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
|
||||||
errList.AddErr(fmt.Errorf("门店(%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 {
|
} else {
|
||||||
FreightTemplate.WarehouseID = utils.Str2Int64(warehouseID)
|
if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
|
||||||
|
globals.SugarLogger.Debugf("门店(%d) 绑定仓库%d 失败:%v", storeID, warehouseID, err)
|
||||||
|
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库%d 失败:%v", storeID, warehouseID, err))
|
||||||
|
} else {
|
||||||
|
FreightTemplate.WarehouseID = warehouseID
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//(2)创建电子围栏
|
//(2)电子围栏
|
||||||
if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //不管存在与否 直接创建
|
if len(bind[utils.Int64ToStr(storeID)][0].OutFenceIds) > 0 {
|
||||||
|
FreightTemplate.FenceID = bind[utils.Int64ToStr(storeID)][0].OutFenceIds[0] //保存一个就足够
|
||||||
|
} else {
|
||||||
|
if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || len(fenceID) == 0 {
|
||||||
globals.SugarLogger.Debugf("门店(%d) 创建电子围栏失败:%v", storeID, err)
|
globals.SugarLogger.Debugf("门店(%d) 创建电子围栏失败:%v", storeID, err)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
|
errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
|
||||||
} else { //绑定
|
} else {
|
||||||
if err := BindFenceByStore(vendorOrgCode, vendorStoreID, []string{utils.Int64ToStr(storeID)}); err != nil {
|
if err := BindFenceByStore(vendorOrgCode, vendorStoreID, []string{utils.Int64ToStr(storeID)}); err != nil {
|
||||||
globals.SugarLogger.Debugf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
globals.SugarLogger.Debugf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
|
errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
|
||||||
} else {
|
} else {
|
||||||
FreightTemplate.FenceID = utils.Int64ToStr(storeID)
|
FreightTemplate.FenceID = utils.Int64ToStr(storeID)
|
||||||
}
|
}
|
||||||
//}
|
|
||||||
//} else {
|
|
||||||
// //电子围栏二次验证
|
|
||||||
// if len(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) == 0 || utils.IsNil(bindWarehouseAndFence[vendorStoreID][0].OutFenceIds) { //未绑定电子围栏
|
|
||||||
// globals.SugarLogger.Debugf("进入二次创建电子围栏=========")
|
|
||||||
// if fenceID, err := CreateFenceByStore(vendorOrgCode, storeID); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建
|
|
||||||
// globals.SugarLogger.Debug("门店(%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)
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
//3.平台获取限售模板
|
//3.平台获取限售模板
|
||||||
if bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID); err != nil || bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //未绑定限售模板,目前默认创建起送价限售模板
|
if bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID); err != nil || bindSaleLimitID == 0 { //未绑定限售模板,目前默认创建起送价限售模板
|
||||||
if createSaleLimitID, err := CreateAndBindMinPriceTemplate(vendorOrgCode, vendorStoreID, minPrice); err != nil {
|
if createSaleLimitID, err := CreateAndBindMinPriceTemplate(vendorOrgCode, vendorStoreID, minPrice); err != nil {
|
||||||
errList.AddErr(fmt.Errorf("设置门店起送价限售模板失败:%v", err))
|
errList.AddErr(fmt.Errorf("设置门店起送价限售模板失败:%v", err))
|
||||||
} else {
|
} else {
|
||||||
@@ -242,17 +230,13 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
|
|||||||
FreightTemplate.TradeLimitID = updateSaleLimitID
|
FreightTemplate.TradeLimitID = updateSaleLimitID
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//4. 设置门店打包费 默认为0
|
//4. 设置门店打包费 默认为0
|
||||||
if err := SetStorePackageFee(vendorOrgCode, vendorStoreID, deliveryFeeDeductionFee); err != nil {
|
if err := SetStorePackageFee(vendorOrgCode, vendorStoreID, deliveryFeeDeductionFee); err != nil {
|
||||||
errList.AddErr(fmt.Errorf("设置门店打包费失败:%v", err))
|
errList.AddErr(fmt.Errorf("设置门店打包费失败:%v", err))
|
||||||
}
|
}
|
||||||
|
|
||||||
//5.同步进数据库
|
//5.同步进数据库
|
||||||
FreightTemplate = &model.FreightTemplate{
|
FreightTemplate.StoreID = int(storeID)
|
||||||
StoreID: int(storeID),
|
FreightTemplate.VendorStoreID = utils.Int64ToStr(vendorStoreID)
|
||||||
VendorStoreID: utils.Int64ToStr(vendorStoreID),
|
|
||||||
}
|
|
||||||
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
|
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
|
||||||
if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID", "StoreID", "VendorStoreID"); err1 != nil {
|
if _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID", "StoreID", "VendorStoreID"); err1 != nil {
|
||||||
errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
|
errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
|
||||||
@@ -261,119 +245,121 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID, deliveryFee
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
endErr := errList.GetErrListAsOne()
|
endErr := errList.GetErrListAsOne()
|
||||||
if utils.IsNil(errList) {
|
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
|
return endErr
|
||||||
} else {
|
} else {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
func CreateAndBindAllV2(vendorOrgCode string, storeID, vendorStoreID, deliveryFeeDeductionFee, minPrice int64) error {
|
|
||||||
var (
|
//逻辑未修改,暂时不使用
|
||||||
db *dao.DaoDB
|
//func CreateAndBindAllV2(vendorOrgCode string, storeID, vendorStoreID, deliveryFeeDeductionFee, minPrice int64) error {
|
||||||
ctx *jxcontext.Context
|
// var (
|
||||||
errList = errlist.New()
|
// db *dao.DaoDB
|
||||||
FreightTemplate = &model.FreightTemplate{
|
// ctx *jxcontext.Context
|
||||||
VendorStoreID: utils.Int64ToStr(vendorStoreID),
|
// errList = errlist.New()
|
||||||
StoreID: int(storeID),
|
// 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)
|
// task := tasksch.NewParallelTask("CreateAndBindAllV2", tasksch.NewParallelConfig().SetIsContinueWhenError(true).SetParallelCount(1), ctx,
|
||||||
switch step {
|
// func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
case 0: //1.门店运费模板
|
// step := batchItemList[0].(int)
|
||||||
bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID)
|
// switch step {
|
||||||
if err != nil {
|
// case 0: //1.门店运费模板
|
||||||
globals.SugarLogger.Debugf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err)
|
// bindFreightIDs, err := GetStoreFreight(vendorOrgCode, vendorStoreID)
|
||||||
errList.AddErr(fmt.Errorf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err))
|
// if err != nil {
|
||||||
}
|
// globals.SugarLogger.Debugf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err)
|
||||||
if bindFreightIDs == 0 {
|
// errList.AddErr(fmt.Errorf("获取门店(%d) 绑定运费模板出错:%v", vendorStoreID, err))
|
||||||
if freightTemplateID, err := CreateFreightTemplate(int(storeID)); err != nil || freightTemplateID == 0 || utils.IsNil(freightTemplateID) {
|
// }
|
||||||
globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
|
// if bindFreightIDs == 0 {
|
||||||
errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
|
// if freightTemplateID, err := CreateFreightTemplate(int(storeID)); err != nil || freightTemplateID == 0 || utils.IsNil(freightTemplateID) {
|
||||||
} else {
|
// globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
|
||||||
if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {
|
// errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 创建运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
|
||||||
globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
|
// } else {
|
||||||
errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
|
// if err = ShopBindStoreFreight(vendorOrgCode, vendorStoreID, freightTemplateID); err != nil {
|
||||||
} else {
|
// globals.SugarLogger.Debugf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err)
|
||||||
FreightTemplate.TemplateID = freightTemplateID
|
// errList.AddErr(fmt.Errorf("京西菜市门店:%d 平台门店:%d 绑定运费模板:%d 失败:%v", storeID, vendorStoreID, freightTemplateID, err))
|
||||||
}
|
// } else {
|
||||||
}
|
// FreightTemplate.TemplateID = freightTemplateID
|
||||||
} else {
|
// }
|
||||||
FreightTemplate.TemplateID = bindFreightIDs
|
// }
|
||||||
}
|
// } else {
|
||||||
case 1: //2.仓库以及电子围栏
|
// FreightTemplate.TemplateID = bindFreightIDs
|
||||||
warehouseID, err := CreateWarehouse(vendorOrgCode, storeID)
|
// }
|
||||||
if err != nil || len(warehouseID) == 0 || utils.IsNil(warehouseID) {
|
// case 1: //2.仓库以及电子围栏
|
||||||
globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
|
// warehouseID, err := CreateWarehouse(vendorOrgCode, storeID)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err))
|
// if err != nil || warehouseID == 0 {
|
||||||
} else { //绑定
|
// globals.SugarLogger.Debugf("门店(%d) 创建仓库失败:%v", storeID, err)
|
||||||
if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
|
// errList.AddErr(fmt.Errorf("门店(%d) 创建仓库失败:%v", storeID, err))
|
||||||
globals.SugarLogger.Debugf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err)
|
// } else { //绑定
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err))
|
// if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
|
||||||
} else {
|
// globals.SugarLogger.Debugf("门店(%d) 绑定仓库:%s 失败:%v", storeID, warehouseID, err)
|
||||||
FreightTemplate.WarehouseID = utils.Str2Int64(warehouseID)
|
// 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) { //不管存在与否 直接创建
|
// case 2: //3.电子围栏
|
||||||
globals.SugarLogger.Debugf("门店(%d) 创建电子围栏失败:%v", storeID, err)
|
// fenceID, err := CreateFenceByStore(vendorOrgCode, storeID)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
|
// if err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //不管存在与否 直接创建
|
||||||
} else { //绑定
|
// globals.SugarLogger.Debugf("门店(%d) 创建电子围栏失败:%v", storeID, err)
|
||||||
if err := BindFenceByStore(vendorOrgCode, vendorStoreID, []string{utils.Int64ToStr(storeID)}); err != nil {
|
// errList.AddErr(fmt.Errorf("门店(%d) 创建电子围栏失败:%v", storeID, err))
|
||||||
globals.SugarLogger.Debugf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
// } else { //绑定
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
|
// if err := BindFenceByStore(vendorOrgCode, vendorStoreID, []string{utils.Int64ToStr(storeID)}); err != nil {
|
||||||
} else {
|
// globals.SugarLogger.Debugf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
||||||
FreightTemplate.FenceID = utils.Int64ToStr(storeID)
|
// 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 {
|
// case 3: //4.限售模板
|
||||||
globals.SugarLogger.Debugf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err)
|
// bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID)
|
||||||
errList.AddErr(fmt.Errorf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err))
|
// if err != nil {
|
||||||
}
|
// globals.SugarLogger.Debugf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err)
|
||||||
if bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //未绑定限售模板,目前默认创建起送价限售模板
|
// errList.AddErr(fmt.Errorf("获取门店(%d) 限售模板失败:%v", vendorStoreID, err))
|
||||||
if createSaleLimitID, err := CreateAndBindMinPriceTemplate(vendorOrgCode, vendorStoreID, minPrice); err != nil {
|
// }
|
||||||
errList.AddErr(fmt.Errorf("设置门店起送价限售模板失败:%v", err))
|
// if bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //未绑定限售模板,目前默认创建起送价限售模板
|
||||||
} else {
|
// if createSaleLimitID, err := CreateAndBindMinPriceTemplate(vendorOrgCode, vendorStoreID, minPrice); err != nil {
|
||||||
FreightTemplate.TradeLimitID = createSaleLimitID
|
// errList.AddErr(fmt.Errorf("设置门店起送价限售模板失败:%v", err))
|
||||||
}
|
// } else {
|
||||||
} else {
|
// FreightTemplate.TradeLimitID = createSaleLimitID
|
||||||
if updateSaleLimitID, err := UpdateTradeLimitTemplate(vendorOrgCode, bindSaleLimitID, minPrice); err != nil {
|
// }
|
||||||
errList.AddErr(fmt.Errorf("更新门店起送价限售模板失败:%v", err))
|
// } else {
|
||||||
} else {
|
// if updateSaleLimitID, err := UpdateTradeLimitTemplate(vendorOrgCode, bindSaleLimitID, minPrice); err != nil {
|
||||||
FreightTemplate.TradeLimitID = updateSaleLimitID
|
// 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))
|
// 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()
|
// return nil, err
|
||||||
//6.同步进数据库
|
// }, []int{0, 1, 2, 3, 4})
|
||||||
globals.SugarLogger.Debugf("preTest TradeLimitID==%d,TemplateID==%d, WarehouseID==%d,FenceID==%s", FreightTemplate.TradeLimitID, FreightTemplate.TemplateID, FreightTemplate.WarehouseID, FreightTemplate.FenceID)
|
// tasksch.ManageTask(task).Run()
|
||||||
if err := dao.CreateEntity(db, FreightTemplate); err != nil {
|
// //6.同步进数据库
|
||||||
_, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID")
|
// globals.SugarLogger.Debugf("preTest TradeLimitID==%d,TemplateID==%d, WarehouseID==%d,FenceID==%s", FreightTemplate.TradeLimitID, FreightTemplate.TemplateID, FreightTemplate.WarehouseID, FreightTemplate.FenceID)
|
||||||
if err1 == nil {
|
// if err := dao.CreateEntity(db, FreightTemplate); err != nil {
|
||||||
errList.AddErr(fmt.Errorf("同步Step1进数据库错误信息:%v", err))
|
// _, err1 := dao.UpdateEntity(db, FreightTemplate, "TemplateID", "WarehouseID", "FenceID", "TradeLimitID")
|
||||||
} else {
|
// if err1 == nil {
|
||||||
errList.AddErr(fmt.Errorf("同步Step2进数据库错误信息:%v", err1))
|
// 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)
|
// endErr := errList.GetErrListAsOne()
|
||||||
return endErr
|
// if utils.IsNil(errList) {
|
||||||
} else {
|
// globals.SugarLogger.Debug("绑定门店需进行的错误处理:%v", endErr)
|
||||||
return nil
|
// return endErr
|
||||||
}
|
// } else {
|
||||||
}
|
// return nil
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
// shop/editStore 编辑门店信息 正向推送平台
|
// shop/editStore 编辑门店信息 正向推送平台
|
||||||
func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName string) (err error) {
|
func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName string) (err error) {
|
||||||
@@ -401,12 +387,11 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
|
|||||||
} else {
|
} else {
|
||||||
return fmt.Errorf("营业时间必填")
|
return fmt.Errorf("营业时间必填")
|
||||||
}
|
}
|
||||||
vendorStoreID := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
apiObj := getAPI(storeInfo.VendorOrgCode, storeID, storeInfo.VendorStoreID)
|
||||||
StoreId: storeInfo.VendorStoreID,
|
|
||||||
}
|
|
||||||
apiObj := getAPI(storeInfo.VendorOrgCode, storeID, vendorStoreID.StoreId)
|
|
||||||
if globals.EnableDdStoreWrite {
|
if globals.EnableDdStoreWrite {
|
||||||
remoteStoreInfo, err2 := apiObj.GetStoreDetail(vendorStoreID)
|
remoteStoreInfo, err2 := apiObj.GetStoreDetail(&shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||||
|
StoreId: storeInfo.VendorStoreID,
|
||||||
|
})
|
||||||
if err2 != nil {
|
if err2 != nil {
|
||||||
return err2
|
return err2
|
||||||
}
|
}
|
||||||
@@ -445,15 +430,21 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
|
|||||||
errList.AddErr(fmt.Errorf("修改门店(%d) 信息失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err3))
|
errList.AddErr(fmt.Errorf("修改门店(%d) 信息失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err3))
|
||||||
}
|
}
|
||||||
//电子围栏
|
//电子围栏
|
||||||
bindWarehouseAndFence, err := GetWarehouseByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID)) //todo 此接口暂时有问题
|
if bind, err := GetWarehouseByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID)); err != nil {
|
||||||
if err != nil {
|
|
||||||
errList.AddErr(fmt.Errorf("获取门店(%d) 电子围栏失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err))
|
errList.AddErr(fmt.Errorf("获取门店(%d) 电子围栏失败:%v", utils.Str2Int64(storeInfo.VendorStoreID), err))
|
||||||
|
} else {
|
||||||
|
if len(bind[storeInfo.VendorStoreID][0].OutFenceIds) > 0 {
|
||||||
|
//默认更新第一个电子围栏
|
||||||
|
outFenceID := bind[storeInfo.VendorStoreID][0].OutFenceIds[0]
|
||||||
|
if err = UpdateFenceByStore(storeInfo.VendorOrgCode, outFenceID, storeID); err != nil {
|
||||||
|
return errors.New(fmt.Sprintf("更新电子围栏失败,原因:%v", err))
|
||||||
}
|
}
|
||||||
if len(bindWarehouseAndFence) == 0 || (len(bindWarehouseAndFence) != 0 && len(bindWarehouseAndFence[storeInfo.VendorStoreID][0].OutFenceIds) == 0) {
|
FreightTemplate.FenceID = outFenceID
|
||||||
if fenceID, err := CreateFenceByStore(storeInfo.VendorOrgCode, int64(storeID)); err != nil || utils.Str2Int(fenceID) == 0 || utils.IsNil(fenceID) { //创建
|
} else {
|
||||||
|
if fenceID, err := CreateFenceByStore(storeInfo.VendorOrgCode, int64(storeID)); err != nil || len(fenceID) == 0 { //创建
|
||||||
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))
|
||||||
} else { //绑定
|
} else {
|
||||||
if err := BindFenceByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID), []string{utils.Int2Str(storeID)}); err != nil {
|
if err := BindFenceByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID), []string{utils.Int2Str(storeID)}); err != nil {
|
||||||
globals.SugarLogger.Debug("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
globals.SugarLogger.Debug("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
|
errList.AddErr(fmt.Errorf("门店(%d) 绑定电子围栏:%s失败:%v", storeID, fenceID, err))
|
||||||
@@ -461,29 +452,18 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
|
|||||||
FreightTemplate.FenceID = utils.Int2Str(storeID)
|
FreightTemplate.FenceID = utils.Int2Str(storeID)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
//更新电子围栏
|
|
||||||
outFenceID := bindWarehouseAndFence[storeInfo.VendorStoreID][0].OutFenceIds[0]
|
|
||||||
//容错绑定
|
|
||||||
if err := BindFenceByStore(storeInfo.VendorOrgCode, utils.Str2Int64(storeInfo.VendorStoreID), []string{outFenceID}); err != nil {
|
|
||||||
globals.SugarLogger.Debugf("门店(%d) 容错绑定电子围栏:%s失败:%v", storeID, outFenceID, err)
|
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 容错绑定电子围栏:%s失败:%v", storeID, outFenceID, err))
|
|
||||||
}
|
}
|
||||||
if err = UpdateFenceByStore(storeInfo.VendorOrgCode, outFenceID, storeID); err != nil {
|
|
||||||
return errors.New(fmt.Sprintf("更新电子围栏失败,原因:%v", err))
|
|
||||||
}
|
|
||||||
FreightTemplate.FenceID = outFenceID
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//同步进数据库
|
//同步进数据库
|
||||||
FreightTemplate = &model.FreightTemplate{
|
FreightTemplate.StoreID = storeID
|
||||||
StoreID: storeID,
|
FreightTemplate.VendorStoreID = storeInfo.VendorStoreID
|
||||||
VendorStoreID: storeInfo.VendorStoreID,
|
|
||||||
}
|
|
||||||
if err = dao.CreateEntity(db, FreightTemplate); err != nil {
|
if err = dao.CreateEntity(db, FreightTemplate); err != nil {
|
||||||
if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID", "StoreID", "VendorStoreID"); err1 != nil {
|
if _, err1 := dao.UpdateEntity(db, FreightTemplate, "FenceID", "StoreID", "VendorStoreID"); err1 != nil {
|
||||||
globals.SugarLogger.Debugf("db update storeID,vendorStoreID defeat on :%v", err1)
|
globals.SugarLogger.Debugf("db update storeID,vendorStoreID defeat on :%v", err1)
|
||||||
errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
|
errList.AddErr(fmt.Errorf("更新操作,同步进数据库错误信息:%v", err1))
|
||||||
} else {
|
} else {
|
||||||
|
globals.SugarLogger.Debugf("db create storeID,vendorStoreID defeat on :%v", err)
|
||||||
errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err))
|
errList.AddErr(fmt.Errorf("创建操作,同步进数据库错误信息:%v", err))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -506,12 +486,11 @@ func UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int
|
|||||||
}
|
}
|
||||||
} else { //恢复营业
|
} else { //恢复营业
|
||||||
//与平台上店铺状态对比
|
//与平台上店铺状态对比
|
||||||
remoteStoreInfo, err2 := a.GetStoreDetail(&shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
if remoteStoreInfo, err2 := a.GetStoreDetail(&shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||||
StoreId: vendorStoreID,
|
StoreId: vendorStoreID,
|
||||||
})
|
}); err2 != nil {
|
||||||
if err2 != nil {
|
|
||||||
return err2
|
return err2
|
||||||
}
|
} else {
|
||||||
if remoteStoreInfo.StoreDetail.Store.SuspendType == tiktok_api.SuspendTypePlatformPenalty {
|
if remoteStoreInfo.StoreDetail.Store.SuspendType == tiktok_api.SuspendTypePlatformPenalty {
|
||||||
err = errors.New("门店因平台处罚暂停营业,不可主动修改营业状态")
|
err = errors.New("门店因平台处罚暂停营业,不可主动修改营业状态")
|
||||||
} else {
|
} else {
|
||||||
@@ -523,6 +502,7 @@ func UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -862,11 +842,11 @@ func BindStoreSaleLimit(appOrgCode string, storeID, saleLimitTemplateID int64) e
|
|||||||
|
|
||||||
// 获取门店绑定限售模板
|
// 获取门店绑定限售模板
|
||||||
func GetStoreSaleLimit(appOrgCode string, storeID int64) (int64, error) {
|
func GetStoreSaleLimit(appOrgCode string, storeID int64) (int64, error) {
|
||||||
saleLimitTemplateID, err := getAPI(appOrgCode, 0, "").StoreQuerySaleLimitTemp(storeID)
|
if saleLimitTemplateID, err := getAPI(appOrgCode, 0, "").StoreQuerySaleLimitTemp(storeID); err != nil {
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
} else {
|
||||||
return saleLimitTemplateID, nil
|
return saleLimitTemplateID, nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (P *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, opTimeList []int16) (err error) {
|
func (P *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, opTimeList []int16) (err error) {
|
||||||
|
|||||||
@@ -30,10 +30,10 @@ const (
|
|||||||
)
|
)
|
||||||
|
|
||||||
// /warehouse/create 创建单个区域仓
|
// /warehouse/create 创建单个区域仓
|
||||||
func CreateWarehouse(appOrgCode string, storeID int64) (warehouseID string, err error) {
|
func CreateWarehouse(appOrgCode string, storeID int64) (warehouseID int64, err error) {
|
||||||
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), int(storeID), 0, "")
|
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), int(storeID), 0, "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("获取门店本地信息失败:%v", err)
|
return 0, fmt.Errorf("获取门店本地信息失败:%v", err)
|
||||||
}
|
}
|
||||||
resp, err := getAPI(appOrgCode, 0, "").CreateWarehouse(&warehouse_create_request.WarehouseCreateParam{
|
resp, err := getAPI(appOrgCode, 0, "").CreateWarehouse(&warehouse_create_request.WarehouseCreateParam{
|
||||||
OutWarehouseId: utils.Int64ToStr(storeID), //本地storeID绑定
|
OutWarehouseId: utils.Int64ToStr(storeID), //本地storeID绑定
|
||||||
@@ -50,7 +50,7 @@ func CreateWarehouse(appOrgCode string, storeID int64) (warehouseID string, err
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("创建单个区域仓失败:%v", err)
|
return 0, fmt.Errorf("创建单个区域仓失败:%v", err)
|
||||||
}
|
}
|
||||||
return resp.WarehouseId, nil
|
return resp.WarehouseId, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user