package com.igo.user.network
|
|
import com.igo.user.network.entity.AutoCompleteBean
|
import com.igo.user.network.entity.GPoiBean
|
import com.igo.user.network.entity.GeoBean
|
import com.igo.user.network.entity.PlaceDetailBean
|
import com.igo.user.network.entity.RouteBean
|
import com.igo.user.network.entity.SearchBean
|
import com.igo.user.utils.Const
|
import io.reactivex.Flowable
|
import retrofit2.http.Header
|
import retrofit2.http.POST
|
import retrofit2.http.Query
|
|
interface GoogleApiService {
|
|
@POST(GoogleApis.getPoi)
|
fun getPoi(
|
@Query("location") location: String, @Query("radius") radius: Int = 2000, @Query("key") key: String = Const.google_key,
|
@Query("language") language: String
|
): Flowable<GPoiBean>
|
|
@POST(GoogleApis.geoCode)
|
fun geoCode(
|
@Header("X-Goog-Maps-Experience-ID") tripId: String,
|
@Query("latlng") location: String,
|
@Query("language") language: String,
|
@Query("key") key: String = Const.google_key,
|
@Query("appid") appid: String = "c780a308a35740bfb946e10452ba62e0"
|
): Flowable<GeoBean>
|
|
@POST(GoogleApis.textsearch)
|
fun textsearch(
|
@Header("X-Goog-Maps-Experience-ID") tripId: String, @Query("query") query: String, @Query("location") location: String?,
|
@Query("language") language: String, @Query("radius") radius: Int = 25000, @Query("key") key: String = Const.google_key
|
): Flowable<SearchBean>
|
|
@POST(GoogleApis.autocomplete)
|
fun autocomplete(
|
@Header("X-Goog-Maps-Experience-ID") tripId: String,
|
@Query("input") query: String,
|
@Query("language") language: String,
|
@Query("components") region: String = "country:gh",
|
@Query("key") key: String = Const.google_key
|
): Flowable<AutoCompleteBean>
|
|
@POST(GoogleApis.placeDetails)
|
fun placeDetails(
|
@Header("X-Goog-Maps-Experience-ID") tripId: String, @Query("place_id") place_id: String, @Query("fields") region: String = "name,geometry",
|
@Query("key") key: String = Const.google_key
|
): Flowable<PlaceDetailBean>
|
|
@POST(GoogleApis.directions)
|
fun directions(
|
@Header("X-Goog-Maps-Experience-ID") tripId: String,
|
@Query("origin") origin: String,
|
@Query("destination") destination: String,
|
@Query("language") language: String,
|
@Query("mode") mode: String = "driving",
|
@Query("key") key: String = Const.google_key
|
): Flowable<RouteBean>
|
}
|