- 获取平台门店信息后,更新本地DeliveryType
This commit is contained in:
@@ -1349,6 +1349,8 @@ func GetStoresVendorSnapshot(ctx *jxcontext.Context, parentTask tasksch.ITask, v
|
||||
CloseTime1: store.CloseTime1,
|
||||
OpenTime2: store.OpenTime2,
|
||||
CloseTime2: store.CloseTime2,
|
||||
|
||||
DeliveryType: store.DeliveryType,
|
||||
}}
|
||||
}
|
||||
}
|
||||
@@ -1391,7 +1393,8 @@ func updateVendorStoreStatusBySnapshot(db *dao.DaoDB, curSnapshotList []*model.V
|
||||
for _, v := range storeMapList {
|
||||
if snapshot := snapshotMap[jxutils.Combine2Int(v.StoreID, v.VendorID)]; snapshot != nil && v.Status != snapshot.Status {
|
||||
v.Status = snapshot.Status
|
||||
if _, err = dao.UpdateEntity(db, v, model.FieldStatus); err != nil {
|
||||
v.DeliveryType = snapshot.DeliveryType
|
||||
if _, err = dao.UpdateEntity(db, v, model.FieldStatus, "DeliveryType"); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -397,11 +397,12 @@ type VendorStoreSnapshot struct {
|
||||
VendorStoreID string `orm:"column(vendor_store_id);size(48)" json:"vendorStoreID"`
|
||||
SnapshotAt time.Time `orm:"type(datetime)" json:"snapshotAt"` // 这个不同于CreatedAt,SnapshotAt是逻辑上的时间,CreatedAt是实际存储的时间
|
||||
|
||||
Status int `json:"status"` // 取值同Store.Status
|
||||
OpenTime1 int16 `json:"openTime1"` // 930就表示9点半,用两个的原因是为了支持中午休息,1与2的时间段不能交叉,为0表示没有
|
||||
CloseTime1 int16 `json:"closeTime1"` // 格式同上
|
||||
OpenTime2 int16 `json:"openTime2"` // 格式同上
|
||||
CloseTime2 int16 `json:"closeTime2"` // 格式同上
|
||||
Status int `json:"status"` // 取值同Store.Status
|
||||
OpenTime1 int16 `json:"openTime1"` // 930就表示9点半,用两个的原因是为了支持中午休息,1与2的时间段不能交叉,为0表示没有
|
||||
CloseTime1 int16 `json:"closeTime1"` // 格式同上
|
||||
OpenTime2 int16 `json:"openTime2"` // 格式同上
|
||||
CloseTime2 int16 `json:"closeTime2"` // 格式同上
|
||||
DeliveryType int8 `orm:"default(0)" json:"deliveryType"` // 配送类型
|
||||
}
|
||||
|
||||
func (*VendorStoreSnapshot) TableUnique() [][]string {
|
||||
|
||||
@@ -277,9 +277,9 @@ func (p *PurchaseHandler) RefreshAllStoresID(ctx *jxcontext.Context, parentTask
|
||||
// }
|
||||
|
||||
func JdDeliveryType2Jx(deliveryType int) int8 {
|
||||
if deliveryType == 2938 {
|
||||
if deliveryType == jdapi.CarrierNoSelfDelivery {
|
||||
return scheduler.StoreDeliveryTypeByStore
|
||||
} else if deliveryType == 9966 {
|
||||
} else if deliveryType == jdapi.CarrierNoCrowdSourcing {
|
||||
return scheduler.StoreDeliveryTypeCrowdSourcing
|
||||
}
|
||||
return scheduler.StoreDeliveryTypeByPlatform
|
||||
|
||||
@@ -68,17 +68,18 @@ func (p *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorStoreID string
|
||||
retVal.ID = int(utils.Str2Int64WithDefault(poiCode, 0))
|
||||
retVal.DeliveryRangeType = model.DeliveryRangeTypePolygon
|
||||
var deliveryRangeInfo []map[string]interface{}
|
||||
deliveryRangeInfo, err = api.MtwmAPI.ShippingList(poiCode)
|
||||
deliveryRangeInfo, err = api.MtwmAPI.ShippingFetch(poiCode)
|
||||
if err != nil {
|
||||
deliveryRangeInfo, err = api.MtwmAPI.ShippingFetch(poiCode)
|
||||
deliveryRangeInfo, err = api.MtwmAPI.ShippingList(poiCode)
|
||||
}
|
||||
if err == nil {
|
||||
if len(deliveryRangeInfo) > 0 {
|
||||
retVal.DeliveryRange = rangeMtwm2JX(deliveryRangeInfo[0]["area"].(string))
|
||||
if utils.Interface2String(deliveryRangeInfo[0]["logistics_code"]) == mtwmapi.PeiSongTypeSelf {
|
||||
logisticsCode := utils.Interface2String(deliveryRangeInfo[0]["logistics_code"])
|
||||
if logisticsCode == "" || logisticsCode == mtwmapi.PeiSongTypeSelf {
|
||||
retVal.DeliveryType = scheduler.StoreDeliveryTypeByStore
|
||||
} else {
|
||||
retVal.DeliveryType = scheduler.StoreDeliveryTypeCrowdSourcing
|
||||
retVal.DeliveryType = scheduler.StoreDeliveryTypeByPlatform
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user