Skip to content

Commit be4a6b0

Browse files
authored
Merge pull request #43 from boostcampwm-2022/15-feature-map-bookmark
[PR] 지도에 북마크 표시 구현, panel 구현시 dataBinding으로 변경
2 parents e3f0fe9 + 438bb89 commit be4a6b0

File tree

22 files changed

+376
-586
lines changed

22 files changed

+376
-586
lines changed

data/src/main/java/com/stop/data/di/RemoteDataModule.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,4 @@ internal abstract class RemoteDataModule {
1717
abstract fun provideNearPlaceRemoteData(
1818
nearPlaceRemoteDataSourceImpl: NearPlaceRemoteDataSourceImpl
1919
): NearPlaceRemoteDataSource
20-
2120
}

data/src/main/java/com/stop/data/remote/model/nearplace/NearPlcaeResponse.kt renamed to data/src/main/java/com/stop/data/remote/model/nearplace/NearPlaceResponse.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ package com.stop.data.remote.model.nearplace
33
import com.squareup.moshi.JsonClass
44

55
@JsonClass(generateAdapter = true)
6-
data class NearPlcaeResponse(
6+
data class NearPlaceResponse(
77
val searchPoiInfo: SearchPoiInfo
88
)

data/src/main/java/com/stop/data/remote/network/FakeTmapApiService.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ internal interface FakeTmapApiService {
2929
@Query("lon") longitude: String,
3030
@Query("version") version: Int = REVERSE_GEOCODING_VERSION,
3131
@Query("coordType") coordinationType: String = REVERSE_GEOCODING_COORDINATION_TYPE,
32-
@Query("addressType") addressType: String = REVERSE_GEOCODING_ADDRESS_TYPE,
32+
@Query("addressType") addressType: String,
3333
): NetworkResult<ReverseGeocodingResponse>
3434

3535
companion object {
@@ -38,6 +38,5 @@ internal interface FakeTmapApiService {
3838
private const val REVERSE_GEOCODING_URL = "tmap/geo/reversegeocoding"
3939
private const val REVERSE_GEOCODING_VERSION = 1
4040
private const val REVERSE_GEOCODING_COORDINATION_TYPE = "WGS84GEO"
41-
private const val REVERSE_GEOCODING_ADDRESS_TYPE = "A02"
4241
}
4342
}

data/src/main/java/com/stop/data/remote/network/NearPlaceApiService.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.stop.data.remote.network
22

33
import com.stop.data.remote.model.NetworkResult
4-
import com.stop.data.remote.model.nearplace.NearPlcaeResponse
4+
import com.stop.data.remote.model.nearplace.NearPlaceResponse
55
import retrofit2.http.GET
66
import retrofit2.http.Query
77

@@ -14,6 +14,5 @@ internal interface NearPlaceApiService {
1414
@Query("centerLon") centerLon: Double,
1515
@Query("centerLat") centerLat: Double,
1616
@Query("appKey") appKey: String,
17-
): NetworkResult<NearPlcaeResponse>
18-
17+
): NetworkResult<NearPlaceResponse>
1918
}

data/src/main/java/com/stop/data/remote/source/route/RouteRemoteDataSource.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.stop.data.remote.source.route
22

3+
import com.stop.domain.model.geoLocation.AddressType
34
import com.stop.domain.model.route.gyeonggi.GetGyeonggiBusStationIdResponse
45
import com.stop.domain.model.route.seoul.bus.GetBusStationArsIdResponse
56
import com.stop.domain.model.route.tmap.RouteRequest
@@ -11,7 +12,7 @@ internal interface RouteRemoteDataSource {
1112

1213
suspend fun getRoute(routeRequest: RouteRequest): RouteResponse
1314

14-
suspend fun reverseGeocoding(coordinate: Coordinate): ReverseGeocodingResponse
15+
suspend fun reverseGeocoding(coordinate: Coordinate, addressType: AddressType): ReverseGeocodingResponse
1516

1617
suspend fun getSubwayStationCd(stationId: String, stationName: String): String
1718

data/src/main/java/com/stop/data/remote/source/route/RouteRemoteDataSourceImpl.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import com.stop.data.remote.network.ApisDataService
55
import com.stop.data.remote.network.FakeTmapApiService
66
import com.stop.data.remote.network.OpenApiSeoulService
77
import com.stop.data.remote.network.WsBusApiService
8+
import com.stop.domain.model.geoLocation.AddressType
89
import com.stop.domain.model.route.gyeonggi.GetGyeonggiBusStationIdResponse
910
import com.stop.domain.model.route.seoul.bus.GetBusStationArsIdResponse
1011
import com.stop.domain.model.route.seoul.subway.SubwayStationResponse
@@ -43,8 +44,8 @@ internal class RouteRemoteDataSourceImpl @Inject constructor(
4344
}
4445
}
4546

46-
override suspend fun reverseGeocoding(coordinate: Coordinate): ReverseGeocodingResponse {
47-
with(fakeTmapApiService.getReverseGeocoding(coordinate.latitude, coordinate.longitude)) {
47+
override suspend fun reverseGeocoding(coordinate: Coordinate, addressType: AddressType): ReverseGeocodingResponse {
48+
with(fakeTmapApiService.getReverseGeocoding(coordinate.latitude, coordinate.longitude, addressType = addressType.type)) {
4849
return when (this) {
4950
is NetworkResult.Success -> this.data
5051
is NetworkResult.Failure -> throw IllegalArgumentException(this.message)

data/src/main/java/com/stop/data/repository/RouteRepositoryImpl.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.stop.data.repository
22

33
import com.stop.data.remote.source.route.RouteRemoteDataSource
4+
import com.stop.domain.model.geoLocation.AddressType
45
import com.stop.domain.model.route.gyeonggi.GetGyeonggiBusStationIdResponse
56
import com.stop.domain.model.route.seoul.bus.GetBusStationArsIdResponse
67
import com.stop.domain.model.route.tmap.RouteRequest
@@ -18,8 +19,8 @@ internal class RouteRepositoryImpl @Inject constructor(
1819
return remoteDataSource.getRoute(routeRequest)
1920
}
2021

21-
override suspend fun reverseGeocoding(coordinate: Coordinate): ReverseGeocodingResponse {
22-
return remoteDataSource.reverseGeocoding(coordinate)
22+
override suspend fun reverseGeocoding(coordinate: Coordinate, addressType: AddressType): ReverseGeocodingResponse {
23+
return remoteDataSource.reverseGeocoding(coordinate, addressType)
2324
}
2425

2526
override suspend fun getSubwayStationCd(stationId: String, stationName: String): String {

domain/src/main/java/com/stop/domain/di/UseCaseModule.kt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.stop.domain.di
22

3-
import com.stop.domain.usecase.GetRouteUseCase
4-
import com.stop.domain.usecase.GetRouteUseCaseImpl
3+
import com.stop.domain.usecase.route.GetRouteUseCase
4+
import com.stop.domain.usecase.route.GetRouteUseCaseImpl
5+
import com.stop.domain.usecase.geoLocation.GeoLocationUseCase
6+
import com.stop.domain.usecase.geoLocation.GeoLocationUseCaseImpl
57
import dagger.Module
68
import dagger.Binds
79
import com.stop.domain.usecase.nearplace.GetNearPlacesUseCase
@@ -25,4 +27,7 @@ internal interface UseCaseModule {
2527
getNearPlacesUseCaseImpl: GetNearPlacesUseCaseImpl
2628
): GetNearPlacesUseCase
2729

30+
@Binds
31+
@Singleton
32+
fun provideGeoLocationUseCase(geoLocationUseCaseImpl: GeoLocationUseCaseImpl): GeoLocationUseCase
2833
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package com.stop.domain.model.geoLocation
2+
3+
enum class AddressType(val type: String) {
4+
LOT_ADDRESS("A02"),
5+
FULL_ADDRESS("A10")
6+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.stop.domain.model.geoLocation
2+
3+
data class GeoLocationInfo(
4+
val title: String,
5+
val roadAddress: String,
6+
val lotAddress: String,
7+
val distance: String
8+
)

0 commit comments

Comments
 (0)