fence
This commit is contained in:
@@ -125,6 +125,8 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
|||||||
if resp, err := a.BatchCreateStore(ShopBatchCreateStoreParam); err != nil {
|
if resp, err := a.BatchCreateStore(ShopBatchCreateStoreParam); err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
} else {
|
} else {
|
||||||
|
//必须先存进数据库
|
||||||
|
|
||||||
vendorStoreIDs = utils.Int64ToStr(resp.ResultList[0].Store.StoreId)
|
vendorStoreIDs = utils.Int64ToStr(resp.ResultList[0].Store.StoreId)
|
||||||
if err := CreateOrUpdateAll(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), resp.ResultList[0].Store.StoreId); err != nil {
|
if err := CreateOrUpdateAll(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), resp.ResultList[0].Store.StoreId); err != nil {
|
||||||
errList.AddErr(err)
|
errList.AddErr(err)
|
||||||
@@ -167,18 +169,18 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error
|
|||||||
//2.平台获取仓库信息以及电子围栏id
|
//2.平台获取仓库信息以及电子围栏id
|
||||||
bindWarehouseAndFence, err := GetWarehouseByStore(vendorOrgCode, vendorStoreID)
|
bindWarehouseAndFence, err := GetWarehouseByStore(vendorOrgCode, vendorStoreID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debug("获取门店(%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))
|
||||||
}
|
}
|
||||||
if len(bindWarehouseAndFence) == 0 || utils.IsNil(bindWarehouseAndFence) { //未绑定仓库以及电子围栏
|
if len(bindWarehouseAndFence) == 0 || utils.IsNil(bindWarehouseAndFence) { //未绑定仓库以及电子围栏
|
||||||
//(1)创建仓库
|
//(1)创建仓库
|
||||||
warehouseID, err := CreateWarehouse(vendorOrgCode, utils.Int64ToStr(storeID))
|
warehouseID, err := CreateWarehouse(vendorOrgCode, utils.Int64ToStr(storeID))
|
||||||
if err != nil || warehouseID == 0 || utils.IsNil(warehouseID) {
|
if err != nil || warehouseID == 0 || utils.IsNil(warehouseID) {
|
||||||
globals.SugarLogger.Debug("门店(%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 = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
|
if err = BindStoreWarehouse(vendorOrgCode, utils.Int64ToStr(storeID), vendorStoreID); err != nil { //仓库绑定通过自定义外部ID
|
||||||
globals.SugarLogger.Debug("门店(%d) 绑定仓库:%d 失败:%v", storeID, warehouseID, err)
|
globals.SugarLogger.Debugf("门店(%d) 绑定仓库:%d 失败:%v", storeID, warehouseID, err)
|
||||||
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库:%d 失败:%v", storeID, warehouseID, err))
|
errList.AddErr(fmt.Errorf("门店(%d) 绑定仓库:%d 失败:%v", storeID, warehouseID, err))
|
||||||
} else {
|
} else {
|
||||||
FreightTemplate.WarehouseID = warehouseID
|
FreightTemplate.WarehouseID = warehouseID
|
||||||
@@ -186,11 +188,11 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error
|
|||||||
}
|
}
|
||||||
//(2)创建电子围栏
|
//(2)创建电子围栏
|
||||||
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.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.Debug("门店(%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)
|
||||||
@@ -199,13 +201,13 @@ 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.Debugf("进入二次创建电子围栏=========")
|
||||||
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))
|
||||||
} 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.Debug("门店(%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)
|
||||||
@@ -218,16 +220,16 @@ func CreateOrUpdateAll(vendorOrgCode string, storeID, vendorStoreID int64) error
|
|||||||
//3.平台获取限售模板
|
//3.平台获取限售模板
|
||||||
SaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID)
|
SaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debug("获取门店(%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))
|
||||||
}
|
}
|
||||||
if SaleLimitID == 0 || utils.IsNil(SaleLimitID) { //未绑定限售模板
|
if SaleLimitID == 0 || utils.IsNil(SaleLimitID) { //未绑定限售模板
|
||||||
if tradeLimitID, err := CreateTradeLimitTemplate(vendorOrgCode, storeID); err != nil || tradeLimitID == 0 || utils.IsNil(tradeLimitID) {
|
if tradeLimitID, err := CreateTradeLimitTemplate(vendorOrgCode, storeID); err != nil || tradeLimitID == 0 || utils.IsNil(tradeLimitID) {
|
||||||
globals.SugarLogger.Debug("门店(%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 := BindStoreSaleLimit(vendorOrgCode, vendorStoreID, tradeLimitID); err != nil {
|
if err := BindStoreSaleLimit(vendorOrgCode, vendorStoreID, tradeLimitID); err != nil {
|
||||||
globals.SugarLogger.Debug("门店(%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 {
|
||||||
FreightTemplate.TradeLimitID = tradeLimitID
|
FreightTemplate.TradeLimitID = tradeLimitID
|
||||||
|
|||||||
@@ -106,14 +106,10 @@ func CreateFenceByStore(appOrgCode string, storeID int64) (fenceID string, err e
|
|||||||
vertex []warehouse_createFence_request.VerticesItem
|
vertex []warehouse_createFence_request.VerticesItem
|
||||||
param = &warehouse_createFence_request.WarehouseCreateFenceParam{}
|
param = &warehouse_createFence_request.WarehouseCreateFenceParam{}
|
||||||
)
|
)
|
||||||
sqlParam := []interface{}{
|
sqlParam := []interface{}{}
|
||||||
model.VendorIDDD,
|
sqlStr := `SELECT t.lng,t.lat,t.delivery_range_type,t.delivery_range FROM store t`
|
||||||
}
|
|
||||||
sqlStr := ` SELECT t.lng,t.lat,t.delivery_range_type,t.delivery_range,s.vendor_store_id FROM store t
|
|
||||||
LEFT JOIN store_map s ON t.id = s.store_id
|
|
||||||
WHERE s.vendor_id = ? `
|
|
||||||
if storeID != 0 {
|
if storeID != 0 {
|
||||||
sqlStr += " AND t.id = ? "
|
sqlStr += " WHERE t.id = ? "
|
||||||
sqlParam = append(sqlParam, storeID)
|
sqlParam = append(sqlParam, storeID)
|
||||||
} else {
|
} else {
|
||||||
return "", fmt.Errorf("storeID必填")
|
return "", fmt.Errorf("storeID必填")
|
||||||
|
|||||||
Reference in New Issue
Block a user