- ebai store.

This commit is contained in:
gazebo
2018-09-19 23:00:47 +08:00
parent 3ddcf2f82c
commit f874c37d14
3 changed files with 84 additions and 6 deletions

View File

@@ -96,13 +96,20 @@ func (p *PurchaseHandler) UpdateStore(storeID int, userName string) (err error)
WHERE t1.id = ?`
if err = dao.GetRow(db, &store, sql, model.VendorIDJD, storeID); err == nil {
params := map[string]interface{}{
"name": jxutils.ComposeStoreName(store.Name, partner.StoreNameSeparator, VendorStorePrefix),
"address": store.Address,
"coord_type": ebaiapi.CoordTypeAutonavi, // 一直用高德
"baidu_shop_id": store.VendorStoreID,
"name": jxutils.ComposeStoreName(store.Name, partner.StoreNameSeparator, VendorStorePrefix),
"phone": store.Tel1,
"ivr_phone": store.Tel2,
"longitude": jxutils.IntCoordinate2Standard(store.Lng),
"latitude": jxutils.IntCoordinate2Standard(store.Lat),
"address": store.Address,
"coord_type": ebaiapi.CoordTypeAutonavi, // 一直用高德
"delivery_region": JxDeliveryRegion2Ebai(&store.Store),
"business_time": JxBusinessTime2Ebai(&store.Store),
}
// globals.SugarLogger.Debug(utils.Format4Output(params, false))
if globals.EnableStoreWrite {
err = api.JdAPI.UpdateStoreInfo4Open(store.VendorStoreID, store.RealLastOperator, params)
err = api.EbaiAPI.ShopUpdate(params)
}
}
return err
@@ -133,6 +140,42 @@ func EbaiDeliveryRegion2Jx(deliveryRegion interface{}) string {
return strings.Join(coords, ";")
}
func JxDeliveryRegion2Ebai(coords string) string {
return ""
func JxDeliveryRegion2Ebai(store *model.Store) interface{} {
rangeStr := store.DeliveryRange
if store.DeliveryRangeType == model.DeliveryRangeTypeRadius {
rangeStr = jxutils.GetPolygonFromCircleStr(jxutils.IntCoordinate2Standard(store.Lng), jxutils.IntCoordinate2Standard(store.Lat), utils.Str2Float64(store.DeliveryRange), 8)
}
pointPairs := strings.Split(rangeStr, ";")
region := make([]map[string]interface{}, len(pointPairs))
for k, v := range pointPairs {
pointPair := strings.Split(v, ",")
region[k] = map[string]interface{}{
"longitude": utils.Str2Float64(pointPair[0]),
"latitude": utils.Str2Float64(pointPair[1]),
}
}
deliveryRegion := []interface{}{
map[string]interface{}{
"name": store.Address + "配送区",
"delivery_fee": 600,
"delivery_time": "60",
"min_buy_free": "0",
"min_order_price": "0",
"region": region,
},
}
return deliveryRegion
}
func JxBusinessTime2Ebai(store *model.Store) interface{} {
bTime := make([]map[string]interface{}, 1)
bTime[0]["start"] = jxutils.JxOperationTime2StrTime(store.OpenTime1)
bTime[0]["end"] = jxutils.JxOperationTime2StrTime(store.CloseTime1)
if store.OpenTime2 != 0 {
bTime = append(bTime, map[string]interface{}{
"start": jxutils.JxOperationTime2StrTime(store.OpenTime2),
"end": jxutils.JxOperationTime2StrTime(store.CloseTime2),
})
}
return bTime
}